Oppure

Loading
27/03/13 20:38
Parma98
ciao a tutti, volevo creare un programma, solo che non funziona e non capisco dove ho sbagliato.
questo è il codice:

program mediaclasse;
uses crt;
var nome:integer;
    nomealunno:string;
    vl,vo,vs,media:integer;

begin
clrscr;
nome:=0;
writeln('Questo programma calcolera''la media di ogni alunno della classe.');
clrscr;
repeat
writeln('Inserire il nome del PRIMO alunno partendo in ordine alfabetico:');
readln(nomealunno);
writeln('Inserire il voto di laboratorio:');
readln(vl);
writeln('inserire il voto di scritto:');
readln(vs);
Writeln('Inserire il voto di orale:');
readln(vo);
if vl<=10 and vs<=10 and vo<=10 and vl>=2 and vs>=2 and vo>=2 then
 begin
 media:= ((vl + vs + vo) div 3);
 if media<6 then
  begin
  textcolor(5);
  textbackground(15);
  writeln(nome,' e''bocciato!');
  end;
 if media>=6 then
  begin
  writeln(nome,' e''promosso!');
  end;
 end;
nome:=nome+1;
until nome=29;
end.


Grazie a tutti quelli che rispondono!
aaa
28/03/13 10:51
Poggi Marco
Ciao!
Il programma non funziona per un semplice errore di sintassi: nel costrutto if, le condizioni vanno racchie tra parentesi quando sono più di una.

( Invece di
if vl<=10 and vs<=10 and vo<=10 and vl>=2 and vs>=2 and vo>=2 then

scrivi
if (vl<=10) and (vs<=10) and (vo<=10) and (vl>=2) and (vs>=2) and (vo>=2) then
)
aaa