Programma semplice in C
Raga, domani devo consegnare un programma fatto in C al mio professore di informatica
Caricare un vettore e calcolare il valore massimo, il valore minimo e la media
Ora, io non so dove mettermi le mani dato che ha cominciato a spiegare il c martedì scorso e perlopiù il mio libro di informatica è solo sui sistemi.
mi potreste dare una mano??
(so "programmare" in pseudocodifica, ma non so quanto possa essere utile)[/code]
Caricare un vettore e calcolare il valore massimo, il valore minimo e la media
Ora, io non so dove mettermi le mani dato che ha cominciato a spiegare il c martedì scorso e perlopiù il mio libro di informatica è solo sui sistemi.
mi potreste dare una mano??
(so "programmare" in pseudocodifica, ma non so quanto possa essere utile)[/code]
Risposte
"Sheker":
Ora, io non so dove mettermi le mani















Detto v il vettore, con N componenti, il massimo si calcola così
Ovviamente al posto di N devi inserire il numero delle componenti, magari con una #define, o tramite un'allocazione dinami della memoria, faì un po' te, e le variabili max e i devono essere dichiarate. i deve essere intera, max e v come vuoi, ma dello stesso tipo.
Per il minimo si fa uguale, solo con un accorgimento. Per calcolare la media la parte più difficile (nemmeno iù di tanto) è calcolare la somma. Inizializza fuori dal for una variabile somma a zero. Fai un for come il precedente e nel ciclo inserisci l'istruzione somma=somma+v.
max=v[0]; for(i=1; i<=N-1; ++i) { if(v[i] >= v[i-1]) max=v[i]; }
Ovviamente al posto di N devi inserire il numero delle componenti, magari con una #define, o tramite un'allocazione dinami della memoria, faì un po' te, e le variabili max e i devono essere dichiarate. i deve essere intera, max e v come vuoi, ma dello stesso tipo.
Per il minimo si fa uguale, solo con un accorgimento. Per calcolare la media la parte più difficile (nemmeno iù di tanto) è calcolare la somma. Inizializza fuori dal for una variabile somma a zero. Fai un for come il precedente e nel ciclo inserisci l'istruzione somma=somma+v.
ti scrivo i punti fondamentali di un programma che calcola min, max e madia per un vettore di 100 elementi compresi tra -1000 e +1000
#define N 100 // Nr. elementi del vettore // intervallo [A,B] del vettore #define A -1000 #define B +1000 . . int Vettore[N]; // Vettore di N elementi int i; // indice del vettore int min, max, media; // valori da calcolare . . '' assegnazione casuale valori for(i = 0; i < N; i++) Vettore[i] = A + rand() % (B-A+1); . . '' calcolo min = B; max = A; media = 0; for(i = 0; i < N; i++) { media += Vettore[i]; if(Vettore[i] < min) min = Vettore[i]; if(Vettore[i] > max) max = Vettore[i]; } media /= N;
forse per la media e' meglio un float.
"Tipper":
Detto v il vettore, con N componenti, il massimo si calcola così
max=v[0]; for(i=1; i<=N-1; ++i) { if(v[i] >= v[i-1]) max=v[i]; }
Ovviamente al posto di N devi inserire il numero delle componenti, magari con una #define, o tramite un'allocazione dinami della memoria, faì un po' te, e le variabili max e i devono essere dichiarate. i deve essere intera, max e v come vuoi, ma dello stesso tipo.
Per il minimo si fa uguale, solo con un accorgimento. Per calcolare la media la parte più difficile (nemmeno iù di tanto) è calcolare la somma. Inizializza fuori dal for una variabile somma a zero. Fai un for come il precedente e nel ciclo inserisci l'istruzione somma=somma+v.
dici la verita'!
mi hai letto nel pensiero prima che io lo pensassi ?
Non a tutti è concesso il dono della telepatia...

"eugenio.amitrano":
ti scrivo i punti fondamentali di un programma che calcola min, max e madia per un vettore di 100 elementi compresi tra -1000 e +1000
#define N 100 // Nr. elementi del vettore // intervallo [A,B] del vettore #define A -1000 #define B +1000 . . int Vettore[N]; // Vettore di N elementi int i; // indice del vettore int min, max, media; // valori da calcolare . . '' assegnazione casuale valori for(i = 0; i < N; i++) Vettore[i] = A + rand() % (B-A+1); . . '' calcolo min = B; max = A; media = 0; for(i = 0; i < N; i++) { media += Vettore[i]; if(Vettore[i] < min) min = Vettore[i]; if(Vettore[i] > max) max = Vettore[i]; } media /= N;
scusa, ma il problema richiede che i valori non siano casuali ma vengano inseriti
scusate la domanda ma è normale che dopo poco più di una settimana di spiegazione ci chieda di fare programmi del genere??
for(i=0; i<N; ++i) { printf("v[%d] = ", i); scanf("%d", v+i); /* nel caso che v sia intero */ }