esercitazione con turbo pascal
program max3g;
uses crt,graph;
(* ricerca massino,minimo funzione *)
(* tabella valori funzione e derivata 1,2,3 *)
(* grafico funzione e assi cartesiani *)
program max3g; uses crt,graph; (* ricerca massino,minimo funzione *) (* tabella valori funzione e derivata 1,2,3 *) (* grafico funzione e assi cartesiani *) var x,sc,tp:integer; grafici:string; procedure grafica; begin sc:=0; tp:=0; grafici:=('c:\turbo5'); initgraph(sc,tp,grafici); end; function y(x:integer):real; begin y:=x*x*x*x*x-5*x*x*x*x+5*x*x*x+1; end; function d1(x:integer):real; begin d1:=5*x*x*x*x-20*x*x*x+15*x*x; end; function d2(x:integer):real; begin d2:=20*x*x*x-60*x*x+30*x; end; function d3(x:integer):real; begin d3:=60*x*x-120*x+30; end; procedure testo; begin writeln('si calcola derivata prima e seconda e terza della funzione'); writeln('in punto x interno a intervallo esistenza funzione'); writeln('massimo relativo f(x) se d1(x)=0 e d2(x)<0'); writeln('minimo relativo f(x) se d1(x)=0 e d2(x)>0'); writeln('non massimo,minimo se d1(x)=0 e d2(x)=0 e d3(x)>0'); writeln; writeln('premi enter');readln;clrscr; writeln('funzione = x^5-5x^4+5x^3+1 '); writeln('x':6,'d1(x)':12,'d2(x)':12,'d3(x)':12,'y(x)':12); writeln; for x:=-1 to 3 do begin writeln(x:6,d1(x):12:3,d2(x):12:3,d3(x):12:3,y(x):12:3); end; writeln; writeln('minimo per x=3..d1(x)=0..d2(x)=90...........y(x)=-26'); writeln('massimo per x=1..d1(x)=0..d2(x)=-10..........y(x)=2'); writeln('dubbio per x=0..d1(x)=0..d2(x)=0...d3(x)=30.y(x)=1 '); writeln;writeln('premi enter'); readln; end; procedure assi; var b,c:integer; begin c:=0; line(0,200,200,200); line(10,10,10,300); for b:=0 to 12 do begin line(c,198,c,202); c:=c+10; end; end; procedure funzione; var a,h:integer; begin a:=-1;h:=6; for x:=-1 to 3 do begin putpixel(a,200-round(y(x))*h,3); a:=a+10; end; outtextxy(150,250,'minimo per x=3..massimo per x=1..dubbio per x=0'); outtextxy(150,300,'premi enter'); readln; end; begin clrscr; testo; grafica; assi; funzione; end.