listati per turbo
pascal
studio funzione-derivata-massimi-minimi
max2aga max2ga max3aga max3ga max4ga max4aga max4bga
program max2aga; uses crt,graph; (* ricerca massino,minimo funzione *) (* tabella valori funzione e derivata 1,2 *) (* grafico funzione e assi cartesiani *) var x,sc,tp:integer; grafici:string; procedure grafica; begin initgraph(sc,tp,grafici); end; function y(x:integer):real; begin y:=-x*x; end; function d1(x:integer):real; begin d1:=-2*x; end; function d2(x:integer):real; begin d2:=-2; 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; writeln('premi enter');readln;clrscr; writeln('funzione = -x^2 '); writeln('x':6,'d1(x)':12,'d2(x)':12,'y(x)':12); writeln; for x:=-6 to 6 do begin writeln(x:6,d1(x):12:3,d2(x):12:3,y(x):12:3); end; writeln; writeln('massimo per x=0....d1(x)=0...d2(x)=-2...y(x)=0 '); writeln;writeln('premi enter'); readln; end; procedure assi; var b,c:integer; begin c:=0; setcolor(3); line(0,200,200,200); line(60,10,60,300); for b:=0 to 12 do begin line(c,198,c,202); c:=c+10; end; end; procedure funzione; var a,h,r:integer; sy,sx,sd1,sd2,sd3:string; begin a:=0;h:=5;r:=30; setcolor(7); outtextxy(200,10,'x,d1,d2,y'); for x:=-6 to 6 do begin line(a,200,a,200-round(y(x))*h); str(round(y(x)),sy); str(x,sx); str(d1(x):5:0,sd1); str(d2(x):5:0,sd2); outtextxy(400,r,sy); outtextxy(160,r,sx); outtextxy(190,r,sd1); outtextxy(240,r,sd2); a:=a+10; r:=r+10; end; outtextxy(50,250,'massimo per x=0'); outtextxy(50,300,'premi enter'); readln; end; procedure scheda; var tipo:integer; begin writeln('indica il tipo di computer in uso'); writeln('olivetti..1...corel..2...corelVGA..3 '); readln(tipo); if tipo=1 then begin sc:=0;tp:=0;grafici:='c:\tp\bgi';end; if tipo=2 then begin sc:=7;tp:=0;grafici:='c:\tp\bgi';end; if tipo=3 then begin sc:=0;tp:=0;grafici:='c:\turbo5';end; clrscr; end; begin clrscr; scheda; testo; grafica; assi; funzione; end.
program max2ga; uses crt,graph; (* ricerca massino,minimo funzione *) (* tabella valori funzione e derivata 1,2 *) (* grafico funzione e assi cartesiani *) var x,sc,tp,tipo:integer; grafici:string; procedure grafica; begin initgraph(sc,tp,grafici); end; procedure scheda; var tipo:integer; begin writeln('indica il tipo di computer in uso'); writeln('olivetti..1...corel..2...corelVGA..3 '); readln(tipo); if tipo=1 then begin sc:=0;tp:=0;grafici:='c:\tp\bgi';end; if tipo=2 then begin sc:=7;tp:=0;grafici:='c:\tp\bgi';end; if tipo=3 then begin sc:=0;tp:=0;grafici:='c:\turbo5';end; clrscr; end; function y(x:integer):real; begin y:=-x*x; end; function d1(x:integer):real; begin d1:=-2*x; end; function d2(x:integer):real; begin d2:=-2; 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; writeln('premi enter');readln;clrscr; writeln('funzione =- x^2 '); writeln('x':6,'d1(x)':12,'d2(x)':12,'y(x)':12); writeln; for x:=-6 to 6 do begin writeln(x:6,d1(x):12:3,d2(x):12:3,y(x):12:3); end; writeln; writeln('massimo per x=0....d1(x)=0...d2(x)=-2...y(x)=0 '); writeln;writeln('premi enter'); readln; end; procedure assi; var b,c:integer; begin c:=0; line(0,200,200,200); line(60,10,60,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:=0;h:=5; for x:=-6 to 6 do begin putpixel(a,200-round(y(x))*h,7); a:=a+10; end; outtextxy(250,250,'massimo per x=0'); outtextxy(250,300,'premi enter'); readln; end; begin clrscr; scheda; testo; grafica; assi; funzione; end.
program max3aga; 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 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 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.......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; setcolor(3); 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,r:integer; sy,sx,sd1,sd2,sd3:string; begin a:=0;h:=5;r:=30; setcolor(7); outtextxy(200,10,'x,d1,d2,d3,y'); for x:=-1 to 3 do begin line(a,200,a,200-round(y(x))*h); str(round(y(x)),sy); str(x,sx); str(d1(x):5:0,sd1); str(d2(x):5:0,sd2); str(d3(x):5:0,sd3); outtextxy(400,r,sy); outtextxy(160,r,sx); outtextxy(190,r,sd1); outtextxy(240,r,sd2); outtextxy(300,r,sd3); a:=a+10; r:=r+10; end; outtextxy(50,250,'minimo per x=3..massimo per x=1..dubbio x=0'); outtextxy(50,300,'premi enter'); readln; end; procedure scheda; var tipo:integer; begin writeln('indica il tipo di computer in uso'); writeln('olivetti..1...corel..2...corelVGA..3 '); readln(tipo); if tipo=1 then begin sc:=0;tp:=0;grafici:='c:\tp\bgi';end; if tipo=2 then begin sc:=7;tp:=0;grafici:='c:\tp\bgi';end; if tipo=3 then begin sc:=0;tp:=0;grafici:='c:\turbo5';end; clrscr; end; begin clrscr; scheda; testo; grafica; assi; funzione; end.
program max3ga; uses crt,graph; (* ricerca massino,minimo funzione *) (* tabella valori funzione e derivata 1,2,3 *) (* grafico funzione e assi cartesiani *) var x,sc,tp,tipo:integer; grafici:string; procedure grafica; begin initgraph(sc,tp,grafici); end; procedure scheda; var tipo:integer; begin writeln('indica il tipo di computer in uso'); writeln('olivetti..1...corel..2...corelVGA..3 '); readln(tipo); if tipo=1 then begin sc:=0;tp:=0;grafici:='c:\tp\bgi';end; if tipo=2 then begin sc:=7;tp:=0;grafici:='c:\tp\bgi';end; if tipo=3 then begin sc:=0;tp:=0;grafici:='c:\turbo5';end; clrscr; 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; scheda; testo; grafica; assi; funzione; end.
program max4ga; uses crt,graph; (* ricerca massino,minimo funzione *) (* tabella valori funzione e derivata 1,2,3 *) (* grafico funzione e assi cartesiani *) var x,sc,tp,tipo:integer; grafici:string; procedure grafica; begin initgraph(sc,tp,grafici); end; procedure scheda; var tipo:integer; begin writeln('indica il tipo di computer in uso'); writeln('olivetti..1...corel..2...corelVGA..3 '); readln(tipo); if tipo=1 then begin sc:=0;tp:=0;grafici:='c:\tp\bgi';end; if tipo=2 then begin sc:=7;tp:=0;grafici:='c:\tp\bgi';end; if tipo=3 then begin sc:=0;tp:=0;grafici:='c:\turbo5';end; clrscr; end; function y(x:integer):real; begin y:=x*x*x; end; function d1(x:integer):real; begin d1:=3*x*x; end; function d2(x:integer):real; begin d2:=6*x; end; function d3(x:integer):real; begin d3:=6; 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^3 '); writeln('x':6,'d1(x)':12,'d2(x)':12,'ddd3(x)':12,'y(x)':12); writeln; for x:=-3 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('flesso per x=0....d1(x)=0...d2(x)=0...d3(x)=6..y(x)=0 '); writeln;writeln('premi enter'); readln; end; procedure assi; var b,c:integer; begin c:=0; line(0,200,200,200); line(60,10,60,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:=0;h:=1; for x:=-6 to 6 do begin putpixel(a,200-round(y(x))*h,3); a:=a+10; end; outtextxy(150,250,'flesso per x=0'); outtextxy(150,300,'premi enter'); readln; end; begin clrscr; scheda; testo; grafica; assi; funzione; end.
program max4aga; uses crt,graph; (* ricerca massino,minimo funzione *) (* tabella valori funzione e derivata 1,2,3 *) (* grafico funzione e assi cartesiani *) var x,sc,tp,tipo:integer; grafici:string; procedure grafica; begin initgraph(sc,tp,grafici); end; procedure scheda; var tipo:integer; begin writeln('indica il tipo di computer in uso'); writeln('olivetti..1...corel..2...corelVGA..3 '); readln(tipo); if tipo=1 then begin sc:=0;tp:=0;grafici:='c:\tp\bgi';end; if tipo=2 then begin sc:=7;tp:=0;grafici:='c:\tp\bgi';end; if tipo=3 then begin sc:=0;tp:=0;grafici:='c:\turbo5';end; clrscr; end; function y(x:integer):real; begin y:=x*x*x; end; function d1(x:integer):real; begin d1:=3*x*x; end; function d2(x:integer):real; begin d2:=6*x; end; function d3(x:integer):real; begin d3:=6; 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^3 '); writeln('x':6,'d1(x)':12,'d2(x)':12,'ddd3(x)':12,'y(x)':12); writeln; for x:=-3 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('flesso per x=0....d1(x)=0...d2(x)=0...d3(x)=6..y(x)=0 '); writeln;writeln('premi enter'); readln; end; procedure assi; var b,c:integer; begin c:=0; line(0,200,200,200); line(60,10,60,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:=0;h:=1; for x:=-6 to 6 do begin line(a,200,a,200-round(y(x))*h); a:=a+10; end; outtextxy(150,250,'flesso per x=0'); outtextxy(150,300,'premi enter'); readln; end; begin clrscr; scheda; testo; grafica; assi; funzione; end.
program max4bga; 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 initgraph(sc,tp,grafici); end; function y(x:integer):real; begin y:=x*x*x; end; function d1(x:integer):real; begin d1:=3*x*x; end; function d2(x:integer):real; begin d2:=6*x; end; function d3(x:integer):real; begin d3:=6; 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; writeln('funzione= x^3'); writeln('x':6,'d1(x)':12,'d2(x)':12,'d3(x)':12,'y(x)':12); writeln; for x:=-3 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('flesso per x=0.....d1(x)=0..d2(x)=0..d3(x)=6..y(x)=0'); writeln;writeln('premi enter'); readln; end; procedure assi; var b,c:integer; begin c:=0; setcolor(3); line(0,200,200,200); line(30,10,30,300); for b:=0 to 12 do begin line(c,198,c,202); c:=c+10; end; end; procedure funzione; var a,h,r:integer; sy,sx,sd1,sd2,sd3:string; begin a:=0;h:=2;r:=30; setcolor(7); outtextxy(200,10,'x,d1,d2,d3,y'); for x:=-3 to 3 do begin line(a,200,a,200-round(y(x))*h); str(round(y(x)),sy); str(x,sx); str(d1(x):5:0,sd1); str(d2(x):5:0,sd2); str(d3(x):5:0,sd3); outtextxy(400,r,sy); outtextxy(160,r,sx); outtextxy(190,r,sd1); outtextxy(240,r,sd2); outtextxy(300,r,sd3); a:=a+10; r:=r+10; end; outtextxy(50,250,'flesso per x=0..'); outtextxy(50,300,'premi enter'); readln; end; procedure scheda; var tipo:integer; begin writeln('indica il tipo di computer in uso'); writeln('olivetti..1...corel..2...corelVGA..3 '); readln(tipo); if tipo=1 then begin sc:=0;tp:=0;grafici:='c:\tp\bgi';end; if tipo=2 then begin sc:=7;tp:=0;grafici:='c:\tp\bgi';end; if tipo=3 then begin sc:=0;tp:=0;grafici:='c:\turbo5';end; clrscr; end; begin clrscr; scheda; testo; grafica; assi; funzione; end.