Programmino in C
Ciao a tutti.
Questo programmino in C calcola la somma degli elementi di un vettore, supponendo di conoscere preventivamente gli elementi. Per furtuna funziona, dopo tanti tentativi
Tuttavia non riesco bene a capire l'argomento del for in particolare il secondo elemento dell'argomento i<=SIZE - 1 Perchè -1? L'ho fatto un po a tentativi.... posto quanto ho scritto...
#include
#define SIZE 12
void main (void){
int a[SIZE]={1,3,5,4,7,2,99,16,45,67,89,77};
int i, totale=0;
for(i=0, i<=SIZE - 1, i++)
totale += a;
printf("il valore totale degli elementi del vettore è %d\n", totale);
}
Grazie anticipate.
Questo programmino in C calcola la somma degli elementi di un vettore, supponendo di conoscere preventivamente gli elementi. Per furtuna funziona, dopo tanti tentativi

Tuttavia non riesco bene a capire l'argomento del for in particolare il secondo elemento dell'argomento i<=SIZE - 1 Perchè -1? L'ho fatto un po a tentativi.... posto quanto ho scritto...
#include
#define SIZE 12
void main (void){
int a[SIZE]={1,3,5,4,7,2,99,16,45,67,89,77};
int i, totale=0;
for(i=0, i<=SIZE - 1, i++)
totale += a;
printf("il valore totale degli elementi del vettore è %d\n", totale);
}
Grazie anticipate.
Risposte
credo perche' il ciclo parte da 0 ed arriva a size-1, dopodiche' esce.
quindi viene svolto size volte.
quindi viene svolto size volte.
Giusto, quindi ora mi trovo.
Tuttavia si può anche partire da 1 e arrivare a SIZE , invece che partire da 0 ed liminare quindi la condizione SIZE - 1?
Oppure l'indice del primo elemento di un array è sempre 0?
Tuttavia si può anche partire da 1 e arrivare a SIZE , invece che partire da 0 ed liminare quindi la condizione SIZE - 1?
Oppure l'indice del primo elemento di un array è sempre 0?
ok grazie per la delucidazione
io per non confondermi faccio cosi'
i=0 ; i
basta togliere l'uguaglianza "<="
cosi' non ti serve mettere (SIZE - 1) e ottieni la stessa cosa.
ciao
Ben
i=0 ; i
basta togliere l'uguaglianza "<="
cosi' non ti serve mettere (SIZE - 1) e ottieni la stessa cosa.
ciao
Ben