logaritmi con turbo pascal
turbologa.htm
note ed esempi a integrazione
scrivere
logaritmo misto in forma indicata
da <c>.mantissa a - c .mantissa
viene operata la trasformazione in forma tutta negativa
program complemento; (* trasformare da misto a normale *) uses crt; var ma,x,ca,c1m,c1c,lfinale:real; procedure pausa; var ch:char; begin writeln('premi return'); ch:=readkey; end; begin clrscr; writeln('logaritmo in forma mista da trasformare'); writeln('formato <2>.48327'); writeln('scrivere nella forma -2.48327 '); x:= -2.48327; writeln('estrarre caratteristica e mantissa'); ca:=int(x); ma:=abs(frac(x)); writeln('caratteristica ',ca:0:0); writeln('mantissa ',ma:2:6); writeln('calcolo complemento a 1 per mantissa'); c1m:=1-ma; writeln('c1m ',c1m:0:6); writeln('aggiungo + 1 a caratteristica '); c1c:=ca+1; writeln(c1c:1:0); writeln('aggiungo a caratteristica opposto mantissa'); lfinale:=c1c-c1m; writeln('logaritmo : ',lfinale:2:6); pausa; end.
program complemento; (* trasformare da misto a normale *) uses crt; var ma,x,ca,c1m,c1c,lfinale:real; procedure pausa; var ch:char; begin writeln('premi return'); ch:=readkey; end; begin clrscr; writeln('logaritmo in forma mista da trasformare'); writeln('formato <1>.32543'); writeln('scrivere nella forma -1.32543 '); x:= -1.32543; writeln('estrarre caratteristica e mantissa'); ca:=int(x); ma:=abs(frac(x)); writeln('caratteristica ',ca:0:0); writeln('mantissa ',ma:2:6); writeln('calcolo complemento a 1 per mantissa'); c1m:=1-ma; writeln('c1m ',c1m:0:6); writeln('aggiungo + 1 a caratteristica '); c1c:=ca+1; writeln(c1c:1:0); writeln('aggiungo a caratteristica opposto mantissa'); lfinale:=c1c-c1m; writeln('logaritmo : ',lfinale:2:6); pausa; end.
programma senza
le spiegazioni precedenti
modificare se serve il numero di prove
program complemento; (* trasformare da misto a normale *) uses crt; var ma,x,ca,c1m,c1c,lfinale:real; var contatore, prove:integer; procedure pausa; var ch:char; begin writeln('premi return'); ch:=readkey; end; begin clrscr; prove:=5; writeln('logaritmo in forma mista da trasformare'); writeln('formato <1>.32543'); writeln('scrivere nella forma -1.32543 '); pausa;clrscr; for contatore:=1 to prove do begin write('scrivi logaritmo ');readln(x); ca:=int(x); ma:=abs(frac(x)); c1m:=1-ma; c1c:=ca+1; lfinale:=c1c-c1m; writeln('logaritmo : ',lfinale:2:6); pausa; end; pausa; end.