Allora, comincio con un piccolo esempio: mettiamo di voler trovare il massimo tra 4 numeri dati in input: puoi dichiarare quattro variabili a1, a2, a3 e a4, e fare un qualcosa del tipo:Originariamente inviato da Oiziorbaf
...e devo iniziare gli array, anzi a proposito mi spiegate brevemente cosa sn gli array, sapete sul libro sn descritti in 20 pag, con tanti esempi, però sn sempre tante....
Ma se invece vuoi trovare il massimo tra "n" elementi ?codice:program massimo_4; var a1,a2,a3,a4,max : integer; begin readln (a1,a2,a3,a4); max = a1; if a2 > max then max = a2; if a3 > max then max = a4; if a4 > max then max = a4; writeln ("Il massimo è ",max); end.
Qui n è un valore che (in generale) non si conosce a priori se non quando si esegue il programma.
Nel nostro caso il numero di elementi può essere chiesto in input.
Qui entrano in gioco gli array: sono strutture dati composte da più elementi numerati.
Niente aiuta a capire meglio di un esempio:
Con a[i] indichi l'elementi i-esimo dell'array. Così per indicare l'elemento uno, due etc.codice:program massimo; var a[1..100],max,n,i : integer; begin // lettura in input degli interi writeln ('Inserisci il numero di elementi : '); readln (n); for i = 1 to n do begin write ('Inserisci l'elemento numero ',i,' : '); readln (a[i]); end writeln; // calcolo del massimo max = a[1]; for i = 2 to n do if a[i] > max then max = a[i]; writeln ("Il massimo è ",max); end.
il valore all'interno delle parentesi quadre può anche essere un'espressione: es. a[i+3] oppure a[a[i]].
se hai dei problemi fammi sapere![]()

Rispondi quotando