Ciao ragazzi dovrei fare un programma che chiede esattamente questo :
Si scriva un programma C che chieda all’utente quanti numeri interi (massimo 100) verranno introdotti, riceva in input questa sequenza e determini quale tripletta di numeri ADIACENTI ha il valor medio maggiore. Il programma deve quindi calcolare la media del 1°, 2°, e 3° numero, del 2°, 3° e 4° numero, del 3°, 4° e 5° numero, ecc. (ATTENZIONE: NON 1°, 2° e 3° e poi 4°, 5° e 6° ecc. !). Se più triplette hanno la stessa media massima, si consideri la prima.
Io ho provato a farlo in questo modo ma mi da dei risultati senza senso e non capisco dove sbaglio , sono nuovo in questo campo quindi mi affido a voi .
Grazie in anticipo.
#include "stdafx.h"
#include "stdio.h"
#include "string.h"
#include "stdlib.h"
int main()
{
float Tripletta[2];
float Max = 0;
float M[300];
int n;
float V[100];
do
{
printf("Inserire quanti valori si desidera immettere nel vettore: ");
scanf_s("%d", &n);
} while (n < 0 || n>100);
for (int i = 0; i < n; i++)
{
printf("\nInserire il valore da mettere nel vettore");
scanf_s("%d", &V[i]);
}
for (int i = 0; i < n; i++)
{
M[i] = (V[i] + V[i + 1] + V[i + 2]) / 3;
if (M[i] >= M[i - 1])
{
Max = M[i];
for (int j = 0; j < 2; j++)
Tripletta[j] = M[i + j];
}
else
{
Max = M[i - 1];
for (int j = 0; j < 2; j++)
Tripletta[j] = M[(i - 1) + j];
}
}
printf("La tripletta con la media piu alta é la tripletta: ");
for (int i = 0; i < 2; i++)
printf("%.3f\n", Tripletta[i]);
printf("%.3f\n con il valore medio di: ");
printf("%.3f\n", Max);
system("PAUSE");
return 0;
}