esercizi di chimica con turbo pascal 1.1 su mac

 

 

Program reazione7;
(* test interattivo con conteggio risposte *)
(* test su reazioni chimiche e PRODOTTI DI REAZIONE in formula *)
const n=14;
   VAR
          a,esatte,errate,totale,restanti:integer;
          s:string;
          d:array[1..n] of string;
          r:array[1..n] of string;
          b:array[1..n] of string;
procedure cancella;
begin
clearscreen;
end;
procedure dati;
begin
d[1]:='CaO + H2O ----------->';
d[2]:='Mg(OH)2 + HCl ------>';
d[3]:='SO3 + Na2O --------->';
d[4]:='Zn + HNO3 ---------->';
d[5]:='Zn + O2 ------------>';
d[6]:='C + O2 ----------->';
d[7]:='N2O3+ H2O ---------->';
d[8]:='FeO + HClO --------->';
d[9]:='H2 + Al ------------>';
d[10]:='F2+ H2 ------------>';
d[11]:='NaOH + N2O5 ------->';
d[12]:='NaCl + H2SO4 ------>';
d[13]:='AgNO3 + KCl ------->';
d[14]:='CaCO3  ------------>';
b[1]:='CaO + H2O ----------->Ca(OH)2';
b[2]:='Mg(OH)2 + HCl ------>MgCl2 + H2O';
b[3]:='SO3 + Na2O --------->Na2SO4';
b[4]:='Zn + HNO3 ---------->Zn(NO3)2 + H2';
b[5]:='Zn + O2 ------------>ZnO';
b[6]:='C + O2 ----------->CO2';
b[7]:='N2O3+ H2O ---------->HNO2';
b[8]:='FeO + HClO --------->Fe(ClO)2 + H2O';
b[9]:='H2 + Al ------------>AlH3';
b[10]:='F2+ H2 ------------>HF';
b[11]:='NaOH + N2O5 ------->NaNO3 + H2O';
b[12]:='NaCl + H2SO4 ------>Na2SO4 + HCl';
b[13]:='AgNO3 + KCl ------->KNO3 + AgCl';
b[14]:='CaCO3  ------------>CaO + CO2';
r[1]:='Ca(OH)2';
r[2]:='MgCl2 + H2O';
r[3]:='Na2SO4';
r[4]:='Zn(NO3)2 + H2';
r[5]:='ZnO';
r[6]:='CO2';
r[7]:='HNO2';
r[8]:='Fe(ClO)2 + H2O';
r[9]:='AlH3';
r[10]:='HF';
r[11]:='NaNO3 + H2O';
r[12]:='Na2SO4 + HCl';
r[13]:='KNO3 + AgCl';
r[14]:='CaO + CO2';
end;
begin
cancella;
dati;
writeln('scrivi i prodotti della reazione indicata,non bilanciata');
writeln('se non li conosci,premi INVIO ');
writeln('esempio ');
writeln('  KOH + H2SO4 --------->');
writeln('  devi scrivere K2SO4 + H2O ');
writeln('------------------------------------------------------');
esatte:=0;errate:=0;totale:=0;restanti:=0;
for a:=1 to n do
begin
 write(d[a]);
 readln(s);
 if s=r[a] then 
 begin writeln('esatto');esatte:=esatte+1;end
  else begin write('errato,era : ');writeln(r[a]);
  writeln(b[a]);
  errate:=errate+1;end;restanti:=n-(esatte+errate);
 writeln('--------------------------------------------------');
 writeln('esatte=',esatte,'  errate=',errate,'  restanti=',restanti);
 writeln('====================================================');
end;
totale:=esatte+errate;
writeln('premi INVIO per finire ');readln;cancella;
writeln('risposte esatte =',esatte, ' su totale domande=',totale);
writeln('risposte errate =',errate, ' su totale domande=',totale);
writeln('chiama insegnante per valutazione,poi premi INVIO'); 
readln;cancella;
end.