esercitazione con turbo pascal

program max3;
uses crt;
(* ricerca massino,minimo funzione *)
(* tabella valori funzione e derivate 1,2,3 *)

 

program max3;
uses crt;
(* ricerca massino,minimo funzione *)
(* tabella valori funzione e derivate 1,2,3 *)
var x:integer;
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 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;
end;

begin
clrscr;
testo;
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..f(x)=1 ');
writeln;writeln('premi enter');
 readln;
end.