Maturità sperimentale 1997- Soluzione quesito 2


r) x = 1; P = (1;t); retta OP: y = tx ; equazione della circonferenza :

(x-1)2 +(y-t)2 = 8

Il luogo richiesto si ottiene eliminando il parametro t nel seguente sistema:


Ovvero: x2 (x-1)2 + y2 (x-1)2 = 8 x2 da cui , con x diverso da 1 (verificato), si ottiene:


con la condizione che si abbia

(*)

a) Il luogo richiesto si spezza quindi nelle due funzioni di equazioni:


i cui grafici, GLOBALMENTE MA NON SINGOLARMENTE, coincidono con i grafici delle due funzioni indicate nel testo, y=f1(x) e y=f2(x).

b) L'insieme E di esistenza della funzione f1(x) è dato da (*) con x diverso da 1;


0<x<1



che non esiste negli estremi dell'insieme di definizione della funzione, ed ha limite infinito negli estremi di E nei quali la funzione f1(x) è definita: ciò dimostra che le tangenti al suo grafico nei punti con tali ascisse sono parallele all'asse y.


(la disequazione di terzo si abbassa di grado con x=-1 mediante la regola di Ruffini)

Ed essendo x2-4x+7>0 per ogni x (discriminante negativo), si ha che la deivata prima è positiva per

x<-1 , si annulla per x=-1 ed è negativa per x>-1. In x=-1 si ha pertanto un massimo relativo M le cui coordinate sono M=(-1;1)

c) I grafici delle due funzioni (quello dell seconda si ottiene da quello della prima con una simmetria rispetto all'assex), sono rappresentati nella figura seguente:


d) L'ulteriore intersezione N della tangente in M con il grafico di y=f1(x) si ottiene mettendo a sistema l'equazione della funzione con la retta di equazione y=1; si perviene all'equazione:

x4-2x3-6x2-2x+1=0

che si abbassa di grado due volte con x=-1 e conduce all'equazione x2-4x+1=0, con soluzioni


di cui la seconda è quella richiesta.

e) Si fornisce il programma in Pascal che permette di calcolare l'area S richiesta; si utilizzano due metodi di integrazione numerica: quello dei rettangoli e quello dei trapezi (BEZOUT).

Program PNI97;

Uses Crt;

VAR

n,i:integer;

T,R,a,b,dx,x1,x2:real;

risposta:char;

(*------------------------------------------------------------------------*)

Procedure Presentazione;

Begin

ClrScr;

Writeln('Questo programma permette di calcolare l''area S richiesta nel');

Writeln('primo quesito;sono usati il metodo dei rettangoli e quello dei');

Writeln('trapezi (BEZOUT).');

Writeln;

Writeln('_______________________________________________________________');

Writeln;writeln;

End;

(*------------------------------------------------------------------------*)

Procedure dati;

Begin

write('In quante parti vuoi dividere l''intervallo? (massimo 10 000) n= ');

readln(n)

end;

(*------------------------------------------------------------------------*)

Function f(x:real):real;

Begin

f:=(x/(x-1))*sqrt(7+2*x-x*x);

end;

(*------------------------------------------------------------------------*)

Procedure Puntidivisione;

Begin

a:= -1.828427; (*1-2*sqrt(2)*)

b:=-1;

dx:=(b-a)/n

end;

(*------------------------------------------------------------------------*)

Procedure CalcolaR;(*rettangoli*)

Begin

i:=0;

R:=0;

Repeat

x1:=a+i*dx;

x2:=a+(i+1)*dx;

R:=R+ f(x1)*dx;(*plurirettangolo*)

i:=i+1;

Until i=n

end;

(*------------------------------------------------------------------------*)

Procedure CalcolaT;(*trapezi, BEZOUT*)

Begin

i:=0;

T:=0;

Repeat

x1:=a+i*dx;

x2:=a+(i+1)*dx;

T:= T + (f(x1)+f(x2))*dx/2 ;(*pluritrapezio*)

i:=i+1;

Until i=n

end;

(*------------------------------------------------------------------------*)

Procedure Elabora;

Begin

Puntidivisione;

CalcolaT;

CalcolaR

end;

(*------------------------------------------------------------------------*)

Procedure Comunica;

Begin

Writeln('--------------------------------------------------');

Writeln;

Writeln(' S (trapezi) = ',T:10:10);Writeln;

Writeln(' S (rettangoli) = ',R:10:10);Writeln;

Writeln;

Writeln('--------------------------------------------------');

Writeln

end;

(*------------------------------------------------------------------------*)

BEGIN

Repeat

Presentazione;

Dati;

Elabora;

Comunica;

Write('Ancora? (s/n) ');

Readln(risposta);

Until risposta in ['n','N']

END.