esercitazione con turbo pascal
program para1;
(* moto parabolico proiettile solo risultati
program para1; (* moto parabolico proiettile solo risultati *) uses crt; const g=9.81; var spazio,velocita,vx,vy,altezza,ts,td,tsd:real; angolo,radiante:real; procedure esegue; var scelta:integer; begin clrscr; writeln('nelle varie prove,cambia valori per velocita e angolo'); writeln('cercando di prevedere come variera la distanza raggiunta'); writeln('prendi nota su una tabella del valori calcolati'); writeln('esempio di tabella con nove colonne'); writeln('velocita,angolo,vx,vy,ts,td,tsd,altezza,distanza'); writeln; writeln('per confrontare i vari risultati delle prove'); writeln('-------------------------------------------------'); writeln('provare anche con angolo=0 o angolo =90!!! '); writeln; write('indica velocita di lancio ='); readln(velocita); write('indica angolo di lancio =');readln(angolo); radiante:=angolo*3.14/180; vx:=velocita*cos(radiante); vy:=velocita*sin(radiante); writeln('componente orizzontale =',vx:6:2); writeln('componente verticale =',vy:6:2); ts:=vy/g; writeln('tempo impiegato per salire =',ts:6:2); altezza:=vy*ts-g*ts*ts/2; writeln('altezza massima raggiunta salendo=',altezza:6:2); td:=sqrt(2*altezza/g); writeln('tempo impiegato a scendere =',td:6:2); tsd:=ts+td; writeln('tempo totale impiegato =',tsd:6:2); spazio:=vx*tsd; if angolo=90 then spazio:=0; writeln('distanza totale raggiunta =',spazio:6:2); writeln; writeln('per altra prova premi 1...per finire premi 2 '); readln(scelta); if scelta=1 then esegue end; begin clrscr; esegue; clrscr; end.