/*
*Un semplice programma che illustra il passaggio
*di un array ad una funzione
*/
#include <iostream.h>
#define SIZE 5; // Definisci una cosiddetta MACRO...cioè una variabile SIZE che avrà valore pari a cinque in tutto il tuo programma
void somma(int array[])
// Prototipo della funzione...quando la richiamerai...si
// aspetta in input un array di interi
{
int i; // Inizializzi un intero
int somma = 0; // Inizializzi un intero a zero
for(i=0; i < SIZE; i++)
// Esegui un ciclo :
// primo parametro -> condizione iniziale i=0
// secondo parametro - > i < SIZE esegui questo ciclo
// finchè i sara miniore di SIZE
// Alla fine di ogni ciclo incrementa la variabile i
{
// Ad ogni ciclo aggiungi alla variabile somma (che
// inizialmente avevamo posto a zero il valore i-esimo
// presente nell'array. Ti ricordo che un array è un insieme
// di valori, come se fosse un piccolo cassetto
// numerato...tra parentesi quadre quella i indica prendi il // valore nel cassetto numero...
somma = somma + array[i];
}
cout << " La somma degli elementi dell'array è " << somma << "\n";
}
main( )
{
int vettore[SIZE] = {1,2,3,4,5};
// Questo array vettore avra dimensione pari a 5
// Ti ricordo che la numerazione di un array va da 0 ad n-1
// Quindi 1 occuperà la posizione zero dell'array ....e 5 la // posizione 4.
somma(vettore);
// Richiamo la funzione applicandola sull'array qui sopra
// inizializzato di nome vettore
return(0);
}
// Ricordiamoci che somma=0.
// Ad esempio al primo ciclo
// i=0,i è minore di SIZE(5) ? Si...esegui quanto scritto
// nel ciclo
// somma= 0 (valore di somma) + il valore dell'array alla posizione i ( in questo caso 0) cioè 1
// somma = 0 + 1 = 1
// Incrementa i (i++)..quindi i=1
// i=1,i è minore di SIZE(5) ? Si...esegui un altra volta il // ciclo
// somma= 1 (questa volta lo avevamo lasciato ad uno) + il valore dell'array alla posizione i (sta volta è 1) cioè 2
// somma = 1 + 2 = 3
// incrementa i (i++ )...quindi i=2
//e cosi via finchè i non sarà uguale a 5...la condizione
// del ciclo non è verificata quindi esce dal ciclo e somma // rimarrà ad un valore fisso..cioè quello mandato in output
Spero di essere stato kiaro !
![]()