Creato da: fumarinox il 08/11/2005
osservazioni su fenomeni naturali

Area personale

 

Archivio messaggi

 
 << Febbraio 2014 >> 
 
LuMaMeGiVeSaDo
 
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28    
 
 

Cerca in questo Blog

  Trova
 

FACEBOOK

 
 

I miei Blog Amici

Citazioni nei Blog Amici: 7
 

Ultime visite al Blog

prefazione09Ninfea_candidaahmad785paolo_cdromanticoBOLOGNAlucirobertoCandido84monellaccio19f.tizymuciaciom12ps12Domi_tgiselar_1980fumarinoxstregattodistratto
 

Chi può scrivere sul blog

Solo l'autore può pubblicare messaggi in questo Blog e tutti gli utenti registrati possono pubblicare commenti.
 
RSS (Really simple syndication) Feed Atom
 
 

Messaggi di Febbraio 2014

 

esercitazioni con QuickBasic, listati e immagini

Post n°1772 pubblicato il 25 Febbraio 2014 da fumarinox
 

esercitazioni con QuickBasic file.BAS richiamati QBasic si forniscono alcune immagini e listato.BAS: possibile copiarlo,incollarlo su notes , salvarlo come file.BAS, richiamarlo con QBasic (dovrebbe funzionare, anche se datato ..1990..)

http://informascienze.altervista.org/qbasic/listaqbasic.htm

 
Condividi e segnala Condividi e segnala - permalink - Segnala abuso
 
 

esercitazioni con GWBasic, listati eimmagini

Post n°1771 pubblicato il 25 Febbraio 2014 da fumarinox
 

esercitazioni con GWBasic file.BAS richiamati GWBasic si forniscono alcune immagini e listato.BAS: possibile copiarlo,incollarlo su notes , salvarlo come file.BAS, richiamarlo con GWBasic (dovrebbe funzionare, anche se datato ..1990..)

 

http://informascienze.altervista.org/gwbasic/listagwbasic.htm

 
Condividi e segnala Condividi e segnala - permalink - Segnala abuso
 
 

esercitazioni con MathCAD, immagini e listati MCD

Post n°1770 pubblicato il 25 Febbraio 2014 da fumarinox
 

esercitazioni con MathCAD
file.MCD richiamati MathCAD
si forniscono alcune immagini e listato.MCD:
possibile copiarlo,incollarlo su notes ,
salvarlo come file.MCD, richiamarlo con
MathCAD
(dovrebbe funzionare, anche se datato ..1990..)


http://informascienze.altervista.org/MathCAD/listamathcad.htm

 
Condividi e segnala Condividi e segnala - permalink - Segnala abuso
 
 

soluzione sistema lineare con turbo nasic, listato

Post n°1769 pubblicato il 14 Febbraio 2014 da fumarinox
 

esercitazioni con turbo basic
soluzione sistema lineare
file.bas richiamati con turbo basic
si forniscono alcune immagini e listato.bas:
possibile copiarlo,incollarlo su notes ,
salvarlo come file.bas, richiamarlo con
turbo basic presente su PC
(dovrebbe funzionare, anche se datato ..1990..2000)

http://informascienze.altervista.org/listatiTB/sistemi.htm
http://informascienze.altervista.org/listatiTB/turboba.htm


 
Condividi e segnala Condividi e segnala - permalink - Segnala abuso
 
 

listati di esercitazioni con turbo basic

Post n°1768 pubblicato il 14 Febbraio 2014 da fumarinox
 

esercitazioni con turbo basic
file.bas richiamati con turbo basic
si forniscono alcune immagini e listato.bas:
possibile copiarlo,incollarlo su notes ,
salvarlo come file.bas, richiamarlo con
turbo basic presente su PC
(dovrebbe funzionare, anche se datato ..1990..2000)


http://informascienze.altervista.org/listatiTB/turboba.htm


 
Condividi e segnala Condividi e segnala - permalink - Segnala abuso
 
 

listati verbi latini con turbo C

Post n°1767 pubblicato il 12 Febbraio 2014 da fumarinox
 

esercitazioni su verbi regolari latinicon linguaggio Turbo C (C++)

listati copiabili e attivabili in ambiente TC

http://informascienze.altervista.org/listatiTC/lista.htm

 
Condividi e segnala Condividi e segnala - permalink - Segnala abuso
 
 

soluzione triangoli con nepero e pitagora, listati turbo pascal

Post n°1766 pubblicato il 07 Febbraio 2014 da fumarinox
 

esercitazioni con turbopascal v.(3), 5-7
file.pas richiamati con turbo pascal v.5
si forniscono alcune immagini e listato.pas:
possibile copiarlo,incollarlo su notes ,
salvarlo come file.pas, richiamarlo con
turbo pascal v.5  o 7 presente su PC
(dovrebbe funzionare, anche se datato ..1990..2000)

soluzione triangoli (anche rettangoli) con teorema del coseno

http://informascienze.altervista.org/algebraturbo/algebraturbo.htm


http://informascienze.altervista.org/algebraturbo/triangolo.htm

 

 

program triango;
(* funzioni trigonometriche di angoli inseriti in gradi INTERI*)
(* risoluzione triangoli qualsiasi E RETTANGOLI *)
uses crt;
var tipo:integer;n:string;
   
    a,b,c,alfa,beta,gamma,alfar,betar,gammar:real;
    seno,coseno,tangente:real;
    c1,beta1,gamma1,betar1,gammar1,r:real;
 
  FUNCTION radiante(x:real):real;
  begin
   radiante:=x*pi/180;
   end;
  
    FUNCTION gradi(x:real):real;
  begin
   gradi:=x*180/pi;
   end;
 
  FUNCTION tan(x:real):real;
  begin
   tan:=sin(x)/cos(x);
  end;
    
 
  function arcsin(x:real):real;
  const k=1e-15;
  begin
   if x<-1 + k then arcsin:=-Pi/2;
   if x>1-k then arcsin:=Pi/2;
   if (x>-1+k) and (x<1-k) then arcsin:=arctan(x/sqrt(1-x*x));
   end;

function arccos(x:real):real;
  const k=1e-15;
  begin
   if (x<k) and (x>-k) then arccos:=Pi/2;
   if x>k then arccos:=arctan(sqrt(1-x*x)/x);
   if x<-k then arccos:=Pi+arctan(sqrt(1-x*x)/x);
   end;


  procedure pro1; (* NOTI TRE LATI *)
begin
 clrscr;
 writeln('applicare teorema del coseno');
 write('valore lato a   =');readln(a);
 write('valore lato b   =');readln(b);
 write('valore lato c   =');readln(c);
 writeln;
 writeln('calcolo cos(alfa) = (b^2 + c^2 - 2bc) / 2bc ');
 coseno:=((b*b+c*c-a*a)/(2*b*c));
 writeln('calcolo arco corrispondente a coseno :arccos(coseno)');
 alfar:=arccos(coseno);
 coseno:=((a*a+c*c-b*b)/(2*a*c));
 betar:=arccos(coseno);
 coseno:=((b*b+a*a-c*c)/(2*b*a));
 gammar:=arccos(coseno);
 writeln('trasformo radianti in gradi e stampo i due valori');
 writeln('ripeto le stesse operazioni per beta e gamma');
 writeln;
 writeln('angolo alfa  =',alfar:8:2,gradi(alfar):8:2);
 writeln('angolo beta  =',betar:8:2,gradi(betar):8:2);
 writeln('angolo gamma =',gammar:8:2,gradi(gammar):8:2);
 end;

 procedure pro2; (* LATO E ANGOLI ADIACENTI *)
begin
 clrscr;
 writeln('applicare legge dei seni');
 write('valore lato   a      =');readln(a);
 write('valore angolo beta  =');readln(beta);
 write('valore angolo gamma =');readln(gamma);
 writeln;
 alfa:=180- (beta+gamma);
 writeln('calcolo angolo opposto al lato a con 180-beta-gamma');
 writeln('trasformo angoli da gradi in radianti');
 writeln('calcolo lato b = a*sin(beta)/sin(alfa)');
 b:=a*sin(radiante(beta))/sin(radiante(alfa));
 c:=a*sin(radiante(gamma))/sin(radiante(alfa));
 writeln('ripeto operazioni per lato c e stampa risultati');
 writeln;
 writeln('angolo alfa        =',alfa:8:2);
 writeln('lato b             =',b:8:2);
 writeln('lato c             =',c:8:2);
 
 end;
 
 procedure pro3; (* LATO E DUE ANGOLI:opposto e adiacente  *)
begin
 clrscr;
 writeln('applicare legge dei seni');
 write('valore lato a               =');readln(a);
 write('valore angolo opposto alfa  =');readln(alfa);
 write('valore angolo adiacente beta=');readln(beta);
 writeln;
 writeln('calcolo angolo gamma con 180 - alfa - beta ');
 gamma:=180- (beta+alfa);
 writeln('trasformo angoli da gradi in radianti');
 writeln('calcolo lato b = a*sin(beta)/sin(alfa)');
 b:=a*sin(radiante(beta))/sin(radiante(alfa));
 c:=a*sin(radiante(gamma))/sin(radiante(alfa));
 writeln('ripeto operazioni per lato c e stampo risultati');
 writeln;
 writeln('angolo gamma       =',gamma:8:2);
 writeln('lato b             =',b:8:2);
 writeln('lato c             =',c:8:2);
 
 end;

  procedure pro4; (* NOTI due lati e angolo tra essi compreso *)
begin
 clrscr;
 writeln('applicare teorema coseno ');
 write('valore lato a         =');readln(a);
 write('valore lato b         =');readln(b);
 write('valore angolo gamma   =');readln(gamma);
 writeln;
 writeln('trasformare angolo da gradi in radianti ');
 gammar:=radiante(gamma);
 writeln('calcolare lato c^2 = b^2 + a^2 - 2ab*cos(gamma)');
 c:=b*b+a*a-2*a*b*cos(gammar);
 writeln('estrarre radice quadrata di c ');
 c:=sqrt(c);
 writeln('calcolare arco corrispondente a seno con arcsin(seno)');
 writeln('trasformare valori da radianti in gradi e stampare risultato');
 WRITELN;
 seno:=(b*sin(gammar)/c);
 betar:=arcsin(seno);
 alfar:=pi-betar-gammar;
 writeln('valore lato c       =',c:8:2);
 writeln('valore angolo alfa  =',gradi(alfar):8:2);
 writeln('valore angolo beta  =',gradi(betar):8:2);
 end;


   procedure pro5; (* NOTI due lati e angolo opposto a un lato *)
begin
 clrscr;
 write('valore lato a                     =');readln(a);
 write('valore lato b                     =');readln(b);
 write('valore angolo ALFA opposto ad a   =');readln(alfa);
 WRITELN;
 alfar:=radiante(alfa);
 r:=b*sin(alfar);
 if ((alfar<pi/2) and (a<r)) or ((alfar>=pi/2) and (a<b)) then
  begin
   writeln('nessuna soluzione')
   end
   else
   begin
    betar:=arcsin(b*sin(alfar)/a);
    beta:=gradi(betar);
    gammar:=pi-alfar-betar;
    gamma:=gradi(gammar);
    c:=a*sin(gammar)/sin(alfar);
    writeln('angolo gamma compreso tra lati a,b =',gamma:8:2);
    writeln('angolo beta                        =',beta:8:2);
    writeln('terzo lato c                       =',c:8:2);
    writeln;
     if a>b then
      begin
       writeln('unica soluzione');
       writeln('-----------------------------------------');
       end
      
       else
       begin
        betar1:=pi-betar;
        beta1:=gradi(betar1);
        gammar1:=pi - alfar-betar1;
        gamma1:=gradi(gammar1);       
        c1:=a*sin(gammar1)/sin(alfar);
        writeln('angolo gamma compreso tra lati a,b  =',gamma1:8:2);
        writeln('angolo  beta                        =',beta1:8:2);
        writeln('terzo lato c                        =',c1:8:2);
        writeln;
        writeln('due soluzioni');
        end;
        end;
        end;
       
   procedure pro6; (* NOTI I CATETI B,C *)
begin
 clrscr;
 write('valore cateto b   =');readln(b);
 write('valore cateto c   =');readln(c);
 writeln;
 tangente:=b/c; (* tg(beta) *)
 betar:=arctan(tangente);
 a:=b/sin(betar);
 beta:=gradi(betar);
 gamma:=90-beta;
  writeln;
 writeln('ipotenusa    =',a:8:2);
 writeln('angolo beta  =',beta:8:2);
 writeln('angolo gamma =',gamma:8:2);
 writeln;
 end;
 

   procedure pro7; (* NOTI IPOTENUSA A e CATETO B *)
begin
 clrscr;
 write('valore ipotenusa  =');readln(a);
 write('valore cateto b   =');readln(b);
 writeln;
 seno:=b/a ;   (* seno(beta) *)
 betar:=arcsin(seno);
 gammar:=pi/2 -betar;
 c:=a*sin(gammar);
 beta:=gradi(betar);
 gamma:=gradi(gammar);
  writeln;
 writeln('cateto c     =',c:8:2);
 writeln('angolo beta  =',beta:8:2);
 writeln('angolo gamma =',gamma:8:2);
 writeln;
 end;

   procedure pro8; (* NOTI CATETO B e angolo BETA *)
begin
 clrscr;
 write('valore cateto b      =');readln(b);
 write('valore angolo beta   =');readln(beta);
 writeln;
 gamma:=90-beta;
 gammar:=radiante(gamma);
 c:=b*tan(gammar);
 betar:=radiante(beta);
 a:=b/sin(betar);
  writeln;
 writeln('cateto c     =',c:8:2);
 writeln('ipotenusa a  =',a:8:2);
 writeln('angolo gamma =',gamma:8:2);
 writeln;
 end;

   procedure pro9; (* NOTI IPOTENUSA A e angolo BETA *)
begin
 clrscr;
 write('valore ipotenusa a   =');readln(a);
 write('valore angolo beta   =');readln(beta);
 writeln;
 gamma:=90-beta;
 betar:=radiante(beta);
 b:=a*sin(betar);
 c:=a*cos(betar);
  writeln;
 writeln('cateto c     =',c:8:2);
 writeln('cateto b     =',b:8:2);
 writeln('angolo gamma =',gamma:8:2);
 writeln;
 end;

 procedure azione;
 begin
 clrscr;
 writeln('1...noti i tre lati:A,B,C ');
 writeln('calcolo angoli alfa,beta,gamma');
 writeln;
 writeln('2...noto lato A e angoli adiacenti BETA,GAMMA');
 writeln('calcolo alfa,B,C');
 writeln;
 writeln('3...noto lato A e angoli:opposto ALFA e adiacente BETA');
 writeln('calcolo gamma,B,C');
 writeln;
 writeln('4...noti due lati A,B e angolo compreso tra essi GAMMA');
 writeln('calcolo C,alfa,beta');
 writeln;
 writeln('5...noti due lati A,B e angolo opposto ALFA ');
 writeln('calcolo C,beta,gamma');
 writeln;
 writeln('TRIANGOLI RETTANGOLI');
 writeln('6...noti due cateti B,C calcolare ipotenusa,beta,gamma');
 writeln('7...noti ipotenusa A e cateto B:calcolare cateto C,beta,gamma');
 writeln('8...noti cateto B e angolo BETA:calcolo A,C,gamma');
 writeln('9...noti ipotenusa A e angolo BETA:calcolo B,C,gamma');
 writeln('0...per finire');
 writeln('indica tipo triangolo da risolvere:');
 readln(tipo);
 
 if tipo=1 then pro1;
 if tipo=2 then pro2;
 if tipo=3 then pro3;
 if tipo=4 then pro4;
 if tipo=5 then pro5;
 if tipo=6 then pro6;
 if tipo=7 then pro7;
 if tipo=8 then pro8;
 if tipo=9 then pro9;
 write('per altra prova scrivi 1,per finire 2 ');readln(n);
 if n='1' then azione;
 
 end;
 
 
 begin
 clrscr;azione;end.
 

 
Condividi e segnala Condividi e segnala - permalink - Segnala abuso
 
 

soluzione triangoli con teorema del coseno,listati

Post n°1765 pubblicato il 07 Febbraio 2014 da fumarinox
 

esercitazioni con turbopascal v.(3), 5-7
file.pas richiamati con turbo pascal v.5
si forniscono alcune immagini e listato.pas:
possibile copiarlo,incollarlo su notes ,
salvarlo come file.pas, richiamarlo con
turbo pascal v.5  o 7 presente su PC
(dovrebbe funzionare, anche se datato ..1990..2000)

soluzione triangoli con teorema del coseno

http://informascienze.altervista.org/algebraturbo/algebraturbo.htm


http://informascienze.altervista.org/algebraturbo/tria.htm

program tria;
(* funzioni trigonometriche di angoli inseriti in gradi INTERI*)
(* risoluzione triangoli qualsiasi *)
uses crt;
var tipo:integer;n:string;
   
    a,b,c,alfa,beta,gamma,alfar,betar,gammar:real;
    seno,coseno:real;
    c1,beta1,gamma1,betar1,gammar1,r:real;
 
  FUNCTION radiante(x:real):real;
  begin
   radiante:=x*pi/180;
   end;
  
    FUNCTION gradi(x:real):real;
  begin
   gradi:=x*180/pi;
   end;
 
  FUNCTION tan(x:real):real;
  begin
   tan:=sin(x)/cos(x);
  end;
    
 
  function arcsin(x:real):real;
  const k=1e-15;
  begin
   if x<-1 + k then arcsin:=-Pi/2;
   if x>1-k then arcsin:=Pi/2;
   if (x>-1+k) and (x<1-k) then arcsin:=arctan(x/sqrt(1-x*x));
   end;

function arccos(x:real):real;
  const k=1e-15;
  begin
   if (x<k) and (x>-k) then arccos:=Pi/2;
   if x>k then arccos:=arctan(sqrt(1-x*x)/x);
   if x<-k then arccos:=Pi+arctan(sqrt(1-x*x)/x);
   end;


  procedure pro1; (* NOTI TRE LATI *)
begin
 clrscr;
 writeln('applicare teorema del coseno');
 write('valore lato a   =');readln(a);
 write('valore lato b   =');readln(b);
 write('valore lato c   =');readln(c);
 writeln;
 writeln('calcolo cos(alfa) = (b^2 + c^2 - 2bc) / 2bc ');
 coseno:=((b*b+c*c-a*a)/(2*b*c));
 writeln('calcolo arco corrispondente a coseno :arccos(coseno)');
 alfar:=arccos(coseno);
 coseno:=((a*a+c*c-b*b)/(2*a*c));
 betar:=arccos(coseno);
 coseno:=((b*b+a*a-c*c)/(2*b*a));
 gammar:=arccos(coseno);
 writeln('trasformo radianti in gradi e stampo i due valori');
 writeln('ripeto le stesse operazioni per beta e gamma');
 writeln;
 writeln('angolo alfa  =',alfar:8:2,gradi(alfar):8:2);
 writeln('angolo beta  =',betar:8:2,gradi(betar):8:2);
 writeln('angolo gamma =',gammar:8:2,gradi(gammar):8:2);
 end;

 procedure pro2; (* LATO E ANGOLI ADIACENTI *)
begin
 clrscr;
 writeln('applicare legge dei seni');
 write('valore lato   a      =');readln(a);
 write('valore angolo beta  =');readln(beta);
 write('valore angolo gamma =');readln(gamma);
 writeln;
 alfa:=180- (beta+gamma);
 writeln('calcolo angolo opposto al lato a con 180-beta-gamma');
 writeln('trasformo angoli da gradi in radianti');
 writeln('calcolo lato b = a*sin(beta)/sin(alfa)');
 b:=a*sin(radiante(beta))/sin(radiante(alfa));
 c:=a*sin(radiante(gamma))/sin(radiante(alfa));
 writeln('ripeto operazioni per lato c e stampa risultati');
 writeln;
 writeln('angolo alfa        =',alfa:8:2);
 writeln('lato b             =',b:8:2);
 writeln('lato c             =',c:8:2);
 
 end;
 
 procedure pro3; (* LATO E DUE ANGOLI:opposto e adiacente  *)
begin
 clrscr;
 writeln('applicare legge dei seni');
 write('valore lato a               =');readln(a);
 write('valore angolo opposto alfa  =');readln(alfa);
 write('valore angolo adiacente beta=');readln(beta);
 writeln;
 writeln('calcolo angolo gamma con 180 - alfa - beta ');
 gamma:=180- (beta+alfa);
 writeln('trasformo angoli da gradi in radianti');
 writeln('calcolo lato b = a*sin(beta)/sin(alfa)');
 b:=a*sin(radiante(beta))/sin(radiante(alfa));
 c:=a*sin(radiante(gamma))/sin(radiante(alfa));
 writeln('ripeto operazioni per lato c e stampo risultati');
 writeln;
 writeln('angolo gamma       =',gamma:8:2);
 writeln('lato b             =',b:8:2);
 writeln('lato c             =',c:8:2);
 
 end;

  procedure pro4; (* NOTI due lati e angolo tra essi compreso *)
begin
 clrscr;
 writeln('applicare teorema coseno ');
 write('valore lato a         =');readln(a);
 write('valore lato b         =');readln(b);
 write('valore angolo gamma   =');readln(gamma);
 writeln;
 writeln('trasformare angolo da gradi in radianti ');
 gammar:=radiante(gamma);
 writeln('calcolare lato c^2 = b^2 + a^2 - 2ab*cos(gamma)');
 c:=b*b+a*a-2*a*b*cos(gammar);
 writeln('estrarre radice quadrata di c ');
 c:=sqrt(c);
 writeln('calcolare arco corrispondente a seno con arcsin(seno)');
 writeln('trasformare valori da radianti in gradi e stampare risultato');
 WRITELN;
 seno:=(b*sin(gammar)/c);
 betar:=arcsin(seno);
 alfar:=pi-betar-gammar;
 writeln('valore lato c       =',c:8:2);
 writeln('valore angolo alfa  =',gradi(alfar):8:2);
 writeln('valore angolo beta  =',gradi(betar):8:2);
 end;


   procedure pro5; (* NOTI due lati e angolo opposto a un lato *)
begin
 clrscr;
 write('valore lato a                     =');readln(a);
 write('valore lato b                     =');readln(b);
 write('valore angolo ALFA opposto ad a   =');readln(alfa);
 WRITELN;
 alfar:=radiante(alfa);
 r:=b*sin(alfar);
 if ((alfar<pi/2) and (a<r)) or ((alfar>=pi/2) and (a<b)) then
  begin
   writeln('nessuna soluzione')
   end
   else
   begin
    betar:=arcsin(b*sin(alfar)/a);
    beta:=gradi(betar);
    gammar:=pi-alfar-betar;
    gamma:=gradi(gammar);
    c:=a*sin(gammar)/sin(alfar);
    writeln('angolo gamma compreso tra lati a,b =',gamma:8:2);
    writeln('angolo beta                        =',beta:8:2);
    writeln('terzo lato c                       =',c:8:2);
    writeln;
     if a>b then
      begin
       writeln('unica soluzione');
       writeln('-----------------------------------------');
       end
      
       else
       begin
        betar1:=pi-betar;
        beta1:=gradi(betar1);
        gammar1:=pi - alfar-betar1;
        gamma1:=gradi(gammar1);       
        c1:=a*sin(gammar1)/sin(alfar);
        writeln('angolo gamma compreso tra lati a,b  =',gamma1:8:2);
        writeln('angolo  beta                        =',beta1:8:2);
        writeln('terzo lato c                        =',c1:8:2);
        writeln;
        writeln('due soluzioni');
        end;
        end;
        end;
       
 
 

 procedure azione;
 begin
 clrscr;
 writeln('1...noti i tre lati:A,B,C ');
 writeln('calcolo angoli alfa,beta,gamma');
 writeln;
 writeln('2...noto lato A e angoli adiacenti BETA,GAMMA');
 writeln('calcolo alfa,B,C');
 writeln;
 writeln('3...noto lato A e angoli:opposto ALFA e adiacente BETA');
 writeln('calcolo gamma,B,C');
 writeln;
 writeln('4...noti due lati A,B e angolo compreso tra essi GAMMA');
 writeln('calcolo C,alfa,beta');
 writeln;
 writeln('5...noti due lati A,B e angolo opposto ALFA ');
 writeln('calcolo C,beta,gamma');
 writeln;
 writeln('0...per finire');
 writeln('indica tipo triangolo da risolvere:');
 readln(tipo);
 
 if tipo=1 then pro1;
 if tipo=2 then pro2;
 if tipo=3 then pro3;
 if tipo=4 then pro4;
 if tipo=5 then pro5;

 
 write('per altra prova scrivi 1,per finire 2 ');readln(n);
 if n='1' then azione;
 
 end;
 
 
 begin
 clrscr;azione;end.
 

 
Condividi e segnala Condividi e segnala - permalink - Segnala abuso
 
 

vettori con turbo pascal, listato pas

Post n°1764 pubblicato il 06 Febbraio 2014 da fumarinox
 

 

esercitazioni con turbopascal v.(3), 5-7
file.pas richiamati con turbo pascal v.5
si forniscono alcune immagini e listato.pas:
possibile copiarlo,incollarlo su notes ,
salvarlo come file.pas, richiamarlo con
turbo pascal v.5  o 7 presente su PC
(dovrebbe funzionare, anche se datato ..1990..2000)

gestione vettori, inserimento, ordinamento, selezione

http://informascienze.altervista.org/algebraturbo/algebraturbo.htm
http://informascienze.altervista.org/algebraturbo/xvetto7.htm

program vetto7;
(* legge vettore interi e stampa vettore frequenze ordinato *)
uses crt;
var a,b,c,d,n,h:integer;
v:array[1..10] of integer;
f:array[1..10] of integer;
p:array[1..10] of integer;
q:array[1..10] of integer;

procedure numero;
begin
write('scrivi numero elementi da inserire <=50 ');readln(n);
end;

procedure leggi;
begin
for a:=1 to n do
begin
write('elemento n.',a,' = ');readln(v[a]);
end;
end;


procedure ordina;
begin
writeln('vettore ordinato in senso crescente');
for b:=2 to n do
begin
for c:=n downto b do
if v[c-1]>=v[c] then
begin
d:=v[c-1];
v[c-1]:=v[c];
v[c]:=d;
end;
end;
writeln;
end;


procedure stampa;
begin
writeln('stampa vettore ordinato');
for a :=1 to n do
writeln(v[a]);
end;

procedure azzera;
begin
for a:=1 to n do
f[a]:=0;
end;

procedure cerca;
begin
writeln('cerca frequenza vari elementi inseriti');
for a:=1 to n do
begin
c:=v[a];
for b:=1 to n do
if c=v[b] then f[a]:=f[a]+1;
end;
end;


procedure elimina;
begin
writeln('elimina duplicati da vettore originale');
for a:=1 to n do
begin
if v[a]<>v[a+1] then
begin
p[h]:=v[a];
q[h]:=f[a];
h:=h+1;
end;
end;
end;

procedure mostra;
begin
writeln('stampa valori e relative frequenze');
for a:=1 to h-1 do
writeln(p[a]:8,q[a]:8);
end;


begin
clrscr;
numero;h:=1;leggi;azzera;ordina;stampa;readln;
cerca;elimina;mostra;readln;

readln;
end.

 

 
Condividi e segnala Condividi e segnala - permalink - Segnala abuso
 
 

vettori con turbo pascal,listato pas

Post n°1763 pubblicato il 06 Febbraio 2014 da fumarinox
 

esercitazioni con turbopascal v.(3), 5-7
file.pas richiamati con turbo pascal v.5
si forniscono alcune immagini e listato.pas:
possibile copiarlo,incollarlo su notes ,
salvarlo come file.pas, richiamarlo con
turbo pascal v.5  o 7 presente su PC
(dovrebbe funzionare, anche se datato ..1990..2000)

gestione vettori, inserimento, ordinamento, selezione

http://informascienze.altervista.org/algebraturbo/algebraturbo.htm
http://informascienze.altervista.org/algebraturbo/xvetto8.htm

 

program vetto8;
(* legge vettore interi e stampa vettore frequenze ordinato *)
uses crt;
var a,b,c,d,n,h,u:integer;
v:array[1..10] of integer;
f:array[1..10] of integer;
p:array[1..10] of integer;
q:array[1..10] of integer;

procedure numero;
begin
write('scrivi numero elementi da inserire <=50 ');readln(n);
end;

procedure leggi;
begin
for a:=1 to n do
begin
write('elemento n.',a,' = ');readln(v[a]);
end;
end;


procedure ordina;
begin
writeln('vettore ordinato in senso crescente di valori');
for b:=2 to n do
begin
for c:=n downto b do
if v[c-1]>=v[c] then
begin
d:=v[c-1];
v[c-1]:=v[c];
v[c]:=d;
end;
end;
writeln;
end;


procedure stampa;
begin
writeln('stampa vettore ordinato');
for a :=1 to n do
writeln(v[a]);
end;

procedure azzera;
begin
for a:=1 to n do
f[a]:=0;
end;

procedure cerca;
begin
writeln('cerca frequenza vari elementi inseriti');
for a:=1 to n do
begin
c:=v[a];
for b:=1 to n do
if c=v[b] then f[a]:=f[a]+1;
end;
end;


procedure elimina;
begin
writeln('elimina duplicati da vettore originale');
for a:=1 to n do
begin
if v[a]<>v[a+1] then
begin
p[h]:=v[a];
q[h]:=f[a];
h:=h+1;
end;
end;
end;

procedure mostra;
begin
writeln('stampa valori e relative frequenze');
writeln('valori':20,'frequenze':20);
for a:=1 to h-1 do
writeln(p[a]:20,q[a]:20);
end;

procedure ordinaf;
begin
writeln('vettore ordinato in senso crescente');
for b:=1 to h do
begin
for c:=h-1 downto b do
if q[c-1]>=q[c] then
begin
d:=q[c-1];u:=p[c-1];
q[c-1]:=q[c];p[c-1]:=p[c];
q[c]:=d;p[c]:=u;
end;
end;
writeln;
end;

procedure mostraf;
begin
writeln('stampa valori e relative frequenze ordine crescente');
writeln('frequenze':20,'valori':20);
for a:=1 to h-1 do
writeln(q[a]:20,p[a]:20);
end;

begin
clrscr;
numero;h:=1;leggi;azzera;ordina;stampa;readln;
cerca;elimina;mostra;readln;
ordinaf;mostraf;
readln;
end.

 

 
Condividi e segnala Condividi e segnala - permalink - Segnala abuso
 
 

vettori con turbo pascall, listato pas

Post n°1762 pubblicato il 06 Febbraio 2014 da fumarinox
 
Foto di fumarinox

esercitazioni con turbopascal v.(3), 5-7
file.pas richiamati con turbo pascal v.5
si forniscono alcune immagini e listato.pas:
possibile copiarlo,incollarlo su notes ,
salvarlo come file.pas, richiamarlo con
turbo pascal v.5  o 7 presente su PC
(dovrebbe funzionare, anche se datato ..1990..2000)

gestione vettori, inserimento, ordinamento, selezione

http://informascienze.altervista.org/algebraturbo/algebraturbo.htm
http://informascienze.altervista.org/algebraturbo/xvetto2.htm

program vetto2; (* variante di vetto1 in SCRIVI *)
(* carica due vettori di interi *)
(* crea un unico vettore con i precedenti *)
(* ordina vettore risultante *)
(* crea vettore senza duplicati *)
(* stampa vettore ordinato *)
uses crt;
const max=100;
type
v=record
va:array[1..max] of integer;
dim:integer;
end;
var a,b,c:v;i,j:integer;

procedure leggi(var x:v);
begin
write('dimensione del vettore < di ',max ,' = ');readln(x.dim);
for i:=1 to x.dim do
begin
write('scrivi valore ',i:2,'-->');readln(x.va[i]);
end;
end;

procedure scrivi(x:v);
begin
for i:=1 to x.dim do
write(x.va[i]:6);
end;

procedure ordina(var x:v);
procedure scambio(var xx,yy:integer);
var a:integer;
begin
a:=xx;
xx:=yy;
yy:=a;
end;

begin
for i:=x.dim downto 2 do
for j:=2 to i do
if (x.va[j-1]>x.va[j]) then
scambio(x.va[j-1],x.va[j])
end;

procedure merge(x,y:v;var z:v);
var ix,iy:integer;
procedure aggiungi(val:integer;var xx:v);
begin
if (xx.dim<max) then
begin
xx.dim:=xx.dim+1;
xx.va[xx.dim]:=val;
end;
end;
procedure aggiungie(xx:v;var index:integer;var yy:v);
begin
aggiungi(xx.va[index],yy);
index:=index+1;
end;

begin
z.dim:=0;
ix:=1;
iy:=1;
while(ix<=x.dim) and (iy<=y.dim) do
begin
if(x.va[ix]<=y.va[iy]) then
aggiungie(x,ix,z)
else
aggiungie(y,iy,z)
end;
while (ix<=x.dim) do
aggiungie(x,ix,z);
while (iy<=y.dim) do
aggiungie(y,iy,z)
end;

procedure unifica(var x:v);
var i,j:integer;
begin
i:=2;j:=1;
while (i<=x.dim) do
begin
if (x.va[i]<>x.va[j]) then
begin
j:=j+1;
x.va[j]:=x.va[i]
end;
i:=i+1;
end;
x.dim:=j;
end;


begin
clrscr;
writeln('carica elementi primo vettore');
leggi(a);
writeln('carica elementi secondo vettore');
leggi(b);
writeln('ordina elementi primo vettore e stampa');
ordina(a);scrivi(a);READLN;
writeln('ordina elementi secondo vettore e stampa');
ordina(b);scrivi(b);READLN;
writeln('crea vettore unico con due vettori');
merge(a,b,c);scrivi(c);readln;
writeln('elimina duplicati e crea vettore risultante');
unifica(c);
writeln('vettore risultante,ordinato,senza duplicati:');
scrivi(c);
readln;
end.

 

 

 
Condividi e segnala Condividi e segnala - permalink - Segnala abuso
 
 

somma di matrici con turbo pascal,listato pas

Post n°1761 pubblicato il 06 Febbraio 2014 da fumarinox
 

 

esercitazioni con turbopascal v.(3), 5-7
file.pas richiamati con turbo pascal v.5
si forniscono alcune immagini e listato.pas:
possibile copiarlo,incollarlo su notes ,
salvarlo come file.pas, richiamarlo con
turbo pascal v.5  o 7 presente su PC
(dovrebbe funzionare, anche se datato ..1990..2000)

somma matrici

http://informascienze.altervista.org/algebraturbo/algebraturbo.htm
http://informascienze.altervista.org/algebraturbo/matrice8.htm

 

 

 program matrice8;
uses crt;

var a,b,c,r:integer;
n,m:array[1..20,1..20] of integer;
(* dimensione ridondante probabile matrice *)

procedure chiede(k:integer);
begin
for a:=1 to r do
begin
for b:=1 to c do
begin
write('scrivi dato riga ',a,' colonna ',b ,'=');
case k of
1:readln(m[a,b]);
2:readln(n[a,b]);
end;end;end;end;

procedure mostra(k:integer);
begin
for a:=1 to r do
begin
for b:=1 to c do
begin
case k of
1:write(m[a,b],' ');
2:write(n[a,b],' ');
3:write(m[a,b]+n[a,b],' ');
end;end;writeln;end;end;

procedure limiti;
begin
write('numero righe < 11 =');readln(r);
write('numero di colonne < 11 =');readln(c);
clrscr;
end;

procedure pausa;
begin
writeln('premi enter per proseguire');readln;clrscr;
end;

begin
clrscr;
limiti;(* richiesta numero righe e colonne per matrici *)
writeln('richiesta dati prima matrice');chiede(1);pausa;
writeln('richiesta dati seconda matrice');chiede(2);pausa;
writeln('esegue somma due matrici ');
writeln('prima matrice');mostra(1);writeln;
writeln('seconda matrice');mostra(2);writeln;
writeln('somma matrici');mostra(3);writeln;pausa;
end.



 

 

 
Condividi e segnala Condividi e segnala - permalink - Segnala abuso
 
 

somma di matrici con trubo pascal, listati pas

Post n°1760 pubblicato il 06 Febbraio 2014 da fumarinox
 

 


esercitazioni con turbopascal v.(3), 5-7
file.pas richiamati con turbo pascal v.5
si forniscono alcune immagini e listato.pas:
possibile copiarlo,incollarlo su notes ,
salvarlo come file.pas, richiamarlo con
turbo pascal v.5  o 7 presente su PC
(dovrebbe funzionare, anche se datato ..1990..2000)

differenza matrici

http://informascienze.altervista.org/algebraturbo/algebraturbo.htm
http://informascienze.altervista.org/algebraturbo/matrice3.htm

program matrice3;
uses crt;

var a,b,c,r:integer;
n,m,s:array[1..20,1..20] of integer;
(* dimensione ridondante probabile matrice *)

procedure chiede1;
begin
for a:=1 to r do
begin
for b:=1 to c do
begin
write('scrivi dato riga ',a,' colonna ',b ,'=');readln(m[a,b]);
end;
end;
end;

procedure chiede2;
begin
for a:=1 to r do
begin
for b:=1 to c do
begin
write('scrivi dato riga ',a,' colonna ',b ,'=');readln(n[a,b]);
end;
end;
end;

procedure esegue_differenza;
begin
for a:=1 to r do
begin
for b:=1 to c do
s[a,b]:=m[a,b]-n[a,b];
end;
end;

procedure mostra_differenza;
begin
for a:=1 to r do
begin
for b:=1 to c do
begin
write(s[a,b],' ');
end;
writeln;
end;
end;

procedure limiti;
begin
write('numero righe < 11 =');readln(r);
write('numero di colonne < 11 =');readln(c);
clrscr;
end;

procedure pausa;
begin
writeln('premi enter per proseguire');readln;
clrscr;
end;

begin
clrscr;
limiti;(* richiesta numero righe e colonne per matrici *)
writeln('richiesta dati prima matrice');chiede1;pausa;
writeln('richiesta dati seconda matrice');chiede2;pausa;
writeln('esegue differenza due matrici ');esegue_differenza;pausa;
writeln('visualizza somma delle due matrici');mostra_differenza;pausa;
end.



 

 
Condividi e segnala Condividi e segnala - permalink - Segnala abuso
 
 

proprietà dei determinanti:listati pas

Post n°1759 pubblicato il 06 Febbraio 2014 da fumarinox
 

 

esercitazioni con turbopascal v.(3), 5-7
file.pas richiamati con turbo pascal v.5
si forniscono alcune immagini e listato.pas:
possibile copiarlo,incollarlo su notes ,
salvarlo come file.pas, richiamarlo con
turbo pascal v.5  o 7 presente su PC
(dovrebbe funzionare, anche se datato ..1990..2000)

proprietà dei determinanti


http://informascienze.altervista.org/algebraturbo/algebraturbo.htm

http://informascienze.altervista.org/algebraturbo/matrix2.htm

 

 

program matrix2;

(* verifica proprieta determinanti *)
(* 1 scambiare tra loro due righe o due colonne*)
(* il determinante cambia solo di segno *)
(* 2 scambiare righe con colonne:trasposizione *)
(* il determinante non cambia *)
(* 3 moltiplicando elementi di riga o colonna per un numero *)
(* il determinante risulta moltiplicato per tale numero *)
(* 4 aggiungendo agli elementi di una riga o colonna *)
(* corrispondenti elementi di altra riga o colonna *)
(* eventualmente moltiplicati per uno stesso numero *)
(* il determinante non cambia *)
(* 5 la somma dei prodotti degli elementi di una riga o colonna *)
(* per i complementi dei rispettivi elementi di altra riga o colonna*)
(* vale zero *)

uses crt;
var n:array[1..3,1..3] of real;
d:array[1..4] of real;
s:string;
scelta,T,a,b:integer;

procedure fine;
begin
exit;
end;

procedure calcola;
begin
clrscr;
s:=' ';
writeln('calcolo determinante terzo ordine:regola LAPLACE ');
writeln('scrivi i valori della matrice quadrata ordine 3');
writeln('se valori con decimali usa punto decimale 5.3 ');
writeln('dopo ogni valore premere enter ');
writeln('------------------');
writeln('a1 b1 c1 ');
writeln('a2 b2 c2 ');
writeln('a3 b3 c3 ');
writeln;
for a:=1 to 3 do
begin
writeln('------------------------');
for b:=1 to 3 do
begin
write('riga ',a,' colonna n.',b,' = ');readln(n[a,b]);
end;
end;
writeln;
d[2]:=n[2,2]*n[3,3]-n[3,2]*n[2,3];
d[3]:=-(n[2,1]*n[3,3]-n[3,1]*n[2,3]);
d[4]:=n[2,1]*n[3,2]-n[3,1]*n[2,2];
d[1]:=n[1,1]*d[2]+n[1,2]*d[3]+n[1,3]*d[4];

writeln('determinante matrice =',d[1]:4:3);
writeln(d[2]:4:3);
writeln(d[3]:4:3);
writeln(d[4]:4:3);
writeln('-----------------------------------');
writeln('prendi nota del valore del determinante');
writeln('per verificare relazione con nuovo determinante');
writeln('ottenuto apportando variazione alla matrice ');
writeln;
writeln('premi 1 per altro calcolo');
writeln('premi 2 per finire');
write('scelta 1 o 2 ? ');readln(scelta);
case scelta of
1:calcola;
2:fine;
end;
end;

begin
clrscr;
calcola;
end.



 

 

 
Condividi e segnala Condividi e segnala - permalink - Segnala abuso
 
 

soluzione sistemi con kramer,sarrus:listati pas

Post n°1758 pubblicato il 06 Febbraio 2014 da fumarinox
 

 

esercitazioni con turbopascal v.(3), 5-7
file.pas richiamati con turbo pascal v.5
si forniscono alcune immagini e listato.pas:
possibile copiarlo,incollarlo su notes ,
salvarlo come file.pas, richiamarlo con
turbo pascal v.5  o 7 presente su PC
(dovrebbe funzionare, anche se datato ..1990..2000)

soluzione sistemi con kramer-sarrus(variante2)

http://informascienze.altervista.org/algebraturbo/algebraturbo.htm
http://informascienze.altervista.org/algebraturbo/kramer5.htm

 

 

program kramer5;
(* regola pratica per determinante terzo ordine *)
(* soluzione sistema a tre equazioni *)
(* variante di kramer3 .. numeri reali o interi *)

uses crt;
var a1,a2,a3,b1,b2,b3,c1,c2,c3,n1,n2,n3:real;
ds,dx,dy,dz,x,y,z:real;
s:string;
scelta,T:integer;

procedure fine;
begin
exit;
end;

procedure impossibile;
begin
writeln('sistema impossibile');
end;

procedure indeterminato;
begin
writeln('sistema indeterminato o impossibile');
writeln('premi enter');
readln;
end;

procedure determinato;
begin
writeln('sistema determinato:soluzioni=');
writeln('determinante sistema ds=',ds:4:3);
writeln('determinante incognita dx=',dx:4:3);
writeln('determinante incognita dy=',dy:4:3);
writeln('determinante incognita dz=',dz:4:3);
writeln('X = ',dx/ds:4:3);
writeln('Y = ',dy/ds:4:3);
writeln('Z = ',dz/ds:4:3);
writeln;
writeln('premi enter');
readln;
end;

procedure calcola;
begin
clrscr;
s:=' ';
writeln('calcolo determinante terzo ordine:regola di SARRUS ');
writeln('soluzione sistema con tre equazioni e tre incognite ');
writeln('scrivi i valori dei coefficienti e termini noti');
writeln('se valori con decimali usa punto decimale 5.3 ');
writeln('dopo ogni valore premere enter ');
writeln('prova con seguenti valori ');
writeln('1,2,3,4...2,4,6,8..3,6,9,12 indeterminato ');
writeln('2,1,2,1...-3,2,-2,2..12,-1,10,4 impossibile ');
writeln('1,2,3,4...7,3,9,8...2,1,6,3 determinato ');
writeln('------------------');
writeln('a1 b1 c1 n1');
writeln('a2 b2 c2 n2');
writeln('a3 b3 c3 n3');
writeln('-------------------');
write('a1=');readln(a1);
write('b1=');readln(b1);
write('c1=');readln(c1);
write('n1=');readln(n1);
write('a2=');readln(a2);
write('b2=');readln(b2);
write('c2=');readln(c2);
write('n2=');readln(n2);
write('a3=');readln(a3);
write('b3=');readln(b3);
write('c3=');readln(c3);
write('n3=');readln(n3);
writeln('--------------------');
writeln(a1:4:3,s,b1:4:3,s,c1:4:3,s,n1:4:3);
writeln(a2:4:3,s,b2:4:3,s,c2:4:3,s,n2:4:3);
writeln(a3:4:3,s,b3:4:3,s,c3:4:3,s,n3:4:3);
writeln;
ds:=a1*b2*c3+b1*c2*a3+c1*a2*b3-a3*b2*c1-b3*c2*a1-c3*a2*b1;
dx:=n1*b2*c3+b1*c2*n3+c1*n2*b3-n3*b2*c1-b3*c2*n1-c3*n2*b1;
dy:=a1*n2*c3+n1*c2*a3+c1*a2*n3-a3*n2*c1-n3*c2*a1-c3*a2*n1;
dz:=a1*b2*n3+b1*n2*a3+n1*a2*b3-a3*b2*n1-b3*n2*a1-n3*a2*b1;
if (ds<>0) then T:=1 else
if (ds=0) and (dx=0) and (dy=0) and (dz=0) then T:=2 else
if (ds=0) and (dx<>0) or (dy<>0) or (dz<>0) then T:=3 else;
case T of
1:determinato;
2:indeterminato;
3:impossibile;
end;
writeln('-----------------------------------');
writeln('premi 1 per altro calcolo');
writeln('premi 2 per finire');
write('scelta 1 o 2 ? ');readln(scelta);
case scelta of
1:calcola;
2:fine;
end;
end;

begin
clrscr;
calcola;
end.



 

 
Condividi e segnala Condividi e segnala - permalink - Segnala abuso
 
 

soluzione suistemi lineari con kramer.sarrus:listai pas

Post n°1757 pubblicato il 06 Febbraio 2014 da fumarinox
 

 

esercitazioni con turbopascal v.(3), 5-7
file.pas richiamati con turbo pascal v.5
si forniscono alcune immagini e listato.pas:
possibile copiarlo,incollarlo su notes ,
salvarlo come file.pas, richiamarlo con
turbo pascal v.5  o 7 presente su PC
(dovrebbe funzionare, anche se datato ..1990..2000)

soluzione sistemi con kramer-sarrus(variante)


http://informascienze.altervista.org/algebraturbo/algebraturbo.htm
http://informascienze.altervista.org/algebraturbo/kramer4.htm

 

program kramer4;
(* regola pratica per determinante terzo ordine *)
(* soluzione sistema a tre equazioni *)
uses crt;
var a1,a2,a3,b1,b2,b3,c1,c2,c3,n1,n2,n3:integer;
ds,dx,dy,dz,x,y,z:real;
s:string;
scelta:integer;

procedure fine;
begin
exit;
end;

procedure impossibile;
begin
writeln('sistema impossibile');
writeln('ds=',ds:4:3);
writeln('dx=',dx:4:3);
writeln('dy=',dy:4:3);
writeln('dz=',dz:4:3);
end;

procedure indeterminato;
begin
writeln('sistema indeterminato o impossibile');
writeln('ds=',ds:4:3);
writeln('dx=',dx:4:3);
writeln('dy=',dy:4:3);
writeln('dz=',dz:4:3);
writeln('premi enter');
readln;
end;

procedure determinato;
begin
writeln('sistema determinato:soluzioni=');
writeln('determinante sistema ds=',ds:4:3);
writeln('determinante incognita dx=',dx:4:3);
writeln('determinante incognita dy=',dy:4:3);
writeln('determinante incognita dz=',dz:4:3);
writeln('X = ',dx/ds:4:3);
writeln('Y = ',dy/ds:4:3);
writeln('Z = ',dz/ds:4:3);
writeln;
writeln('premi enter');
readln;
end;

procedure calcola;
begin
clrscr;
s:=' ';
writeln('calcolo determinante terzo ordine:regola di SARRUS ');
writeln('soluzione sistema con tre equazioni e tre incognite ');
writeln('scrivi i valori interi dei coefficienti e termini noti');
writeln('dopo ogni valore premere enter ');
writeln('prova con seguenti valori ');
writeln('1,2,3,4...2,4,6,8..3,6,9,12 indeterminato ');
writeln('2,1,2,1...-3,2,-2,2..12,-1,10,4 impossibile ');
writeln('1,2,3,4...7,3,9,8...2,1,6,3 determinato ');
writeln('------------------');
writeln('a1 b1 c1 n1');
writeln('a2 b2 c2 n2');
writeln('a3 b3 c3 n3');
writeln('-------------------');
write('a1=');readln(a1);
write('b1=');readln(b1);
write('c1=');readln(c1);
write('n1=');readln(n1);
write('a2=');readln(a2);
write('b2=');readln(b2);
write('c2=');readln(c2);
write('n2=');readln(n2);
write('a3=');readln(a3);
write('b3=');readln(b3);
write('c3=');readln(c3);
write('n3=');readln(n3);
writeln('--------------------');
writeln(a1,s,b1,s,c1,s,n1);
writeln(a2,s,b2,s,c2,s,n2);
writeln(a3,s,b3,s,c3,s,n3);
writeln;
ds:=a1*b2*c3+b1*c2*a3+c1*a2*b3-a3*b2*c1-b3*c2*a1-c3*a2*b1;
dx:=n1*b2*c3+b1*c2*n3+c1*n2*b3-n3*b2*c1-b3*c2*n1-c3*n2*b1;
dy:=a1*n2*c3+n1*c2*a3+c1*a2*n3-a3*n2*c1-n3*c2*a1-c3*a2*n1;
dz:=a1*b2*n3+b1*n2*a3+n1*a2*b3-a3*b2*n1-b3*n2*a1-n3*a2*b1;
if (ds<>0) then determinato else
if (ds=0) and (dx=0) and (dy=0) and (dz=0) then indeterminato else
if (ds=0) and (dx<>0) or (dy<>0) or (dz<>0) then impossibile else;
writeln('-----------------------------------');
writeln('premi 1 per altro calcolo');
writeln('premi 2 per finire');
write('scelta 1 o 2 ? ');readln(scelta);
case scelta of
1:calcola;
2:fine;
end;
end;

begin
clrscr;
calcola;
end.



 

 

 
Condividi e segnala Condividi e segnala - permalink - Segnala abuso
 
 

soluzione sistemi a 3 equazioni,kramer,listato

Post n°1756 pubblicato il 06 Febbraio 2014 da fumarinox
 

esercitazioni con turbopascal v.(3), 5-7
file.pas richiamati con turbo pascal v.5
si forniscono alcune immagini e listato.pas:
possibile copiarlo,incollarlo su notes ,
salvarlo come file.pas, richiamarlo con
turbo pascal v.5  o 7 presente su PC
(dovrebbe funzionare, anche se datato ..1990..2000)

soluzione sistemi con kramer-sarrus

http://informascienze.altervista.org/algebraturbo/algebraturbo.htm

http://informascienze.altervista.org/algebraturbo/kramer3.htm

 

 

 

 

program kramer3;
(* regola pratica per determinante terzo ordine *)
(* soluzione sistema a tre equazioni *)
(* variante di kramer4 .. numeri reali o interi *)
uses crt;
var a1,a2,a3,b1,b2,b3,c1,c2,c3,n1,n2,n3:real;
ds,dx,dy,dz,x,y,z:real;
s:string;
scelta:integer;

procedure fine;
begin
exit;
end;

procedure impossibile;
begin
writeln('sistema impossibile');
writeln('ds=',ds:4:3);
writeln('dx=',dx:4:3);
writeln('dy=',dy:4:3);
writeln('dz=',dz:4:3);
end;

procedure indeterminato;
begin
writeln('sistema indeterminato o impossibile');
writeln('ds=',ds:4:3);
writeln('dx=',dx:4:3);
writeln('dy=',dy:4:3);
writeln('dz=',dz:4:3);
writeln('premi enter');
readln;
end;

procedure determinato;
begin
writeln('sistema determinato:soluzioni=');
writeln('determinante sistema ds=',ds:4:3);
writeln('determinante incognita dx=',dx:4:3);
writeln('determinante incognita dy=',dy:4:3);
writeln('determinante incognita dz=',dz:4:3);
writeln('X = ',dx/ds:4:3);
writeln('Y = ',dy/ds:4:3);
writeln('Z = ',dz/ds:4:3);
writeln;
writeln('premi enter');
readln;
end;

procedure calcola;
begin
clrscr;
s:=' ';
writeln('calcolo determinante terzo ordine:regola di SARRUS ');
writeln('soluzione sistema con tre equazioni e tre incognite ');
writeln('scrivi i valori dei coefficienti e termini noti');
writeln('se valori con decimali usa punto decimale 5.3 ');
writeln('dopo ogni valore premere enter ');
writeln('prova con seguenti valori ');
writeln('1,2,3,4...2,4,6,8..3,6,9,12 indeterminato ');
writeln('2,1,2,1...-3,2,-2,2..12,-1,10,4 impossibile ');
writeln('1,2,3,4...7,3,9,8...2,1,6,3 determinato ');
writeln('------------------');
writeln('a1 b1 c1 n1');
writeln('a2 b2 c2 n2');
writeln('a3 b3 c3 n3');
writeln('-------------------');
write('a1=');readln(a1);
write('b1=');readln(b1);
write('c1=');readln(c1);
write('n1=');readln(n1);
write('a2=');readln(a2);
write('b2=');readln(b2);
write('c2=');readln(c2);
write('n2=');readln(n2);
write('a3=');readln(a3);
write('b3=');readln(b3);
write('c3=');readln(c3);
write('n3=');readln(n3);
writeln('--------------------');
writeln(a1:4:3,s,b1:4:3,s,c1:4:3,s,n1:4:3);
writeln(a2:4:3,s,b2:4:3,s,c2:4:3,s,n2:4:3);
writeln(a3:4:3,s,b3:4:3,s,c3:4:3,s,n3:4:3);
writeln;
ds:=a1*b2*c3+b1*c2*a3+c1*a2*b3-a3*b2*c1-b3*c2*a1-c3*a2*b1;
dx:=n1*b2*c3+b1*c2*n3+c1*n2*b3-n3*b2*c1-b3*c2*n1-c3*n2*b1;
dy:=a1*n2*c3+n1*c2*a3+c1*a2*n3-a3*n2*c1-n3*c2*a1-c3*a2*n1;
dz:=a1*b2*n3+b1*n2*a3+n1*a2*b3-a3*b2*n1-b3*n2*a1-n3*a2*b1;
if (ds<>0) then determinato else
if (ds=0) and (dx=0) and (dy=0) and (dz=0) then indeterminato else
if (ds=0) and (dx<>0) or (dy<>0) or (dz<>0) then impossibile else;
writeln('-----------------------------------');
writeln('premi 1 per altro calcolo');
writeln('premi 2 per finire');
write('scelta 1 o 2 ? ');readln(scelta);
case scelta of
1:calcola;
2:fine;
end;
end;

begin
clrscr;
calcola;
end.

 

 
Condividi e segnala Condividi e segnala - permalink - Segnala abuso
 
 

didattica , matematica, con C++

Post n°1755 pubblicato il 02 Febbraio 2014 da fumarinox
 
Foto di fumarinox

esercitazioni scolastiche con linguaggio C++ v.2.2
su argomenti di algebra, informatica, latino:
sintassi comandi principali:listati come file.C
utilizzabili per copiarli avendo sul PC  un
programma C++


http://informascienze.altervista.org/linguaggioc/turboc/turboc.htm

 
Condividi e segnala Condividi e segnala - permalink - Segnala abuso
 
 

© Italiaonline S.p.A. 2024Direzione e coordinamento di Libero Acquisition S.á r.l.P. IVA 03970540963