{ File: sompone2.pas } { Scopo: ciclo for } program SommePositiviNegativi; { Legge una sequenza di numeri interi di lunghezza letta da tastiera. Stampa la somma dei numeri positivi e la somma dei numeri negativi. Utilizza un ciclo for. } var i, { indice di ciclo } lung, { lunghezza della sequenza } numero, { numero letto di volta in volta } somma_pos, somma_neg : integer; { somme parziali degli interi positivi e negativi letti fino ad un certo punto } begin writeln('Immettere la lunghezza della sequenza di numeri interi!'); readln(lung); writeln('Immettere ', lung, ' numeri interi, uno per riga!'); somma_pos := 0; { prima di leggere il primo numero la somma parziale dei numeri positivi e` 0 } somma_neg := 0; { prima di leggere il primo numero la somma parziale dei numeri negativi e` 0 } for i := 1 to lung do begin readln(numero); if numero > 0 then somma_pos := somma_pos + numero else somma_neg := somma_neg + numero end; writeln('Somma dei positivi: ', somma_pos); writeln('Somma dei negativi: ', somma_neg) end. { SommePositiviNegativi }