turbo pascal v.1.1 per mac
program molare; (* problemi su concentrazioni *)
var peso,molare,normale,molale,frazio: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 write('grammi soluto =');readln(soluto); write('grammi solvente =');readln(solvente); r:=soluto/(solvente+soluto); writeln('concentrazione in peso=',r:8:2); writeln('premi enter');readln; end;
procedure molarita; begin write('peso molecolare soluto =');readln(pm); write('grammi soluto =');readln(soluto); write('litri soluzione =');readln(volume); moli:=soluto/pm; r:=moli/volume; writeln('molarita =',r:8:2); writeln('premi enter');readln; end;
procedure normalita; begin 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('normalita =',r:8:2); writeln('premi enter');readln; end;
procedure molalita; begin write('grammi soluto =');readln(soluto); write('peso molecolare soluto =');readln(pm); write('grammi solvente =');readln(solvente); moli:=soluto/pm; r:=moli/(solvente/1000); writeln('molalita =',r:8:2); writeln('premi enter');readln; end;
procedure frazione; var molisoluto,molisolvente,fraziosoluto,fraziosolvente:real; begin 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 molare soluto =',fraziosoluto:8:3); writeln('frazione molare solvente =',fraziosolvente: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...fine '); write('opzione=');readln(s); clearscreen; case s of 1:parti; 2:molarita; 3:normalita; 4:molalita; 5:frazione; 6:fine; 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('si deve inserire su richiesta:'); writeln('massa in grammi di soluto e solvente'); writeln('pesi molecolari ,valenze '); writeln('volume soluzione '); writeln('-----------------------------'); writeln('premi enter'); scelta; end.