turbo pascal v.1.1 su mac
 

 

 

program conce1;
(* problemi su concentrazioni e quantita di soluto *)
var peso,molare,normale,molale,frazio,no,mo,soluzione:real;
    soluto,solvente,r,moli,volume,pm,pa,equi,nequi,pms:real;
    va:integer;
     
procedure fine;
begin
writeln('premi enter');
readln;
end;
procedure parti;
begin
writeln('concentrazione p:p = grammi soluto/grammi soluzione ');
write('grammi soluto        =');readln(soluto);
write('grammi solvente      =');readln(solvente);
r:=soluto/(solvente+soluto);
writeln('grammi soluzione   =soluto+solvente ',(soluto+solvente):8:2);
writeln('concentrazione in peso=',r:8:2);
writeln('premi enter');readln;
end;
procedure molarita;
begin
writeln('molarita              =moli soluto/litri soluzione ');
writeln('moli soluto           =grammi soluto/peso molecolare');
writeln;
write('peso molecolare soluto  =');readln(pm);
write('grammi soluto           =');readln(soluto);
write('litri soluzione         =');readln(volume);
moli:=soluto/pm;
r:=moli/volume;
writeln('moli soluto           =grammi soluto/peso molecolare ',moli:8:2);
writeln('molarita              =',r:8:2);
writeln('premi enter');readln;
end;
procedure normalita;
begin
writeln('normalita             =equivalenti soluto/litri soluzione');
writeln('equivalenti soluto    =grammi soluto/peso equivalente');
writeln('peso equivalente      =peso molecolare/valenza');
writeln;
write('peso molecolare         =');readln(pm);
write('valenza                 =');readln(va);
write('grammi soluto           =');readln(soluto);
write('litri soluzione         =');readln(volume);
equi:=pm/va;
nequi:=soluto/equi;
r:=nequi/volume;
writeln('equivalenti soluto    =grammi soluto/peso equivalente ',nequi:8:2);
writeln('peso equivalente      =peso molecolare/valenza ',equi:8:2);
writeln('normalita              =',r:8:2);
writeln('premi enter');readln;
end;
procedure molalita;
begin
writeln('molalita              =moli soluto/grammi solvente');
writeln('moli soluto           =grammi soluto/peso molecolare ');
writeln;
write('grammi soluto           =');readln(soluto);
write('peso molecolare soluto  =');readln(pm);
write('grammi solvente         =');readln(solvente);
moli:=soluto/pm;
r:=moli/(solvente/1000);
writeln('moli soluto           =grammi soluto/peso molecolare ',moli:8:2);
writeln('molalita              =',r:8:2);
writeln('premi enter');readln;
end;
procedure frazione;
var molisoluto,molisolvente,fraziosoluto,fraziosolvente:real;
begin
writeln('frazione soluto          =moli soluto/moli totali ');
writeln('frazione solvente        =moli solvente/moli totali');
writeln('moli soluto              =grammi soluto/peso molecolare');
writeln('moli solvente            =grammi solvente/peso molecolare');
writeln;
write('peso molecolare soluto     =');readln(pm);
write('grammi soluto              =');readln(soluto);
write('peso molecolare solvente   =');readln(pms);
write('grammi solvente            =');readln(solvente);
molisoluto:=soluto/pm;
molisolvente:=solvente/pms;
fraziosoluto:=molisoluto/(molisoluto+molisolvente);
fraziosolvente:=molisolvente/(molisoluto+molisolvente);
writeln('frazione soluto          =moli soluto/moli totali ',fraziosoluto:8:2);
writeln('frazione solvente        =moli solvente/moli totali ',fraziosolvente:8:2);
writeln('moli soluto              =grammi soluto/peso molecolare ',molisoluto:8:2);
writeln('moli solvente            =grammi solvente/peso molecolare ',molisolvente:8:2);
writeln('frazione molare soluto   =',fraziosoluto:8:3);
writeln('frazione molare solvente =',fraziosolvente:8:3);
writeln('premi enter');readln;
end;
procedure cercano;
begin
writeln('normalita                =valenza*molarita ');
write('molarita                   =');readln(mo);
write('valenza soluto             =');readln(va);
r:=mo*va;
writeln('normalita                =',r:8:3);
writeln('premi enter');readln;
end;
procedure cercamo;
begin
writeln('molarita                 =normalita/valenza ');
write('valenza soluto             =');readln(va);
write('normalita                  =');readln(no);
r:=no/va;
writeln('molarita                 =',r:8:3);
writeln('premi enter');readln;
end;
procedure cercasono;
begin
writeln('n.equivalenti soluto     =normalita*litri soluzione ');
writeln('grammi soluto            =numero equivalenti*peso equivalente');
writeln('peso equivalente         =peso molecolare/valenza ');
writeln;
write('peso molecolare soluto     =');readln(pm);
write('normalita                  =');readln(no);
write('litri soluzione            =');readln(soluzione);
write('valenza soluto             =');readln(va);
equi:=pm/va;
nequi:=no*soluzione;
peso:=equi*nequi;
writeln('peso equivalente         =peso molecolare/valenza ',equi:8:2);
writeln('equivalenti soluto       =',nequi:8:3);
writeln('grammi soluto            =',peso:8:3);
writeln('premi enter');readln;
end;
procedure cercasomo;
begin
writeln('n.moli soluto            =molarita*litri soluzione ');
writeln('grammi soluto            =moli soluto*peso molecolare ');
writeln;
write('peso molecolare soluto     =');readln(pm);
write('molarita                   =');readln(mo);
write('litri soluzione            =');readln(soluzione);
moli:=mo*soluzione;
peso:=moli*pm;
writeln('moli soluto              =',moli:8:3);
writeln('grammi soluto            =',peso:8:3);
writeln('premi enter');readln;
end;
procedure scelta;
var ancora,s:integer;
begin
clearscreen;
writeln('seleziona tipo problema ');
writeln('1...cerca % in peso  ');
writeln('2...cerca molarita ');
writeln('3...cerca normalita ');
writeln('4...cerca molalita ');
writeln('5...cerca frazione molare ');
writeln('6...cerca normalita nota molarita');
writeln('7...cerca molarita nota normalita');
writeln('8...cerca quantita soluto noto volume soluzione e normalita');
writeln('9...cerca quantita soluto noto volume soluzione e molarita');
writeln('10..fine ');
write('opzione=');readln(s);
clearscreen;
case s of
1:parti;
2:molarita;
3:normalita;
4:molalita;
5:frazione;
6:cercano;
7:cercamo;
8:cercasono;
9:cercasomo;
end;
writeln('----------------------------');
writeln('altro problema:scrivi 1...fine:scrivi 2 ');readln(ancora);
if ancora =1 then scelta else fine;
end;
begin
clearscreen;
writeln('formule per soluzione problemi su CONCENTRAZIONI ');
writeln('o quantita di soluto presente in volume soluzioni ');
writeln('si deve inserire su richiesta:');
writeln('massa in grammi di soluto e solvente');
writeln('pesi molecolari ,valenze ');
writeln('volume soluzione o altri dati come indicato ');
writeln('VOLUME in LITRI....MASSA in GRAMMI o Kg come indicato'); 
writeln('-----------------------------');
writeln('premi enter');
scelta;
end.