Logo referatele carte



loading...


Tipuri de date, variabile, constante, etichete, expresii in Pascal







LIMBAJ DE PROGRAMARE PASCAL                       Tipuri de date , variabile , constante , etichete , expresii.

 Un program in limbajul Pascal contine o descriere a actiunilor ce trebuie sa fie executate de calculator si o descriere a datelor ce sint manevrate de aceste actiuni. Actiunile sint descrise prin instructiuni, iar datele prin declaratii sau definitii. Prin tip de date intelegem o multime de valori.

  Se disting trei categorii de tipuri de date:

-        simple elementare;

-        compuse structurate;

-        de referinta pointer.

In general, tipurile de date sint definite explicit prin declaratii type iar operatiile asociate prin declaratii function sau procedure sint specifice programului in care apar. Exista insa tipuri de date elementare de interes mai general, numite tipuri predefinite. Valorile unui tip de date sint referite prin variabile sau constante. Anumite constante sint predefinite.

   type I = T;

unde  I este un identificator numit numele tipului, iar T specificatia sa. Declaratia variabilelor este precedata de cuvantul  cheie var , a constantelor de cuvant cheie const , iar a etichetelor, de cuvant cheie label .

  Numele I poate fi folosit pentru referirea la tipul T in declaratiile ulterioare de variabile sau pentru definirea altor tipuri. Exista tipuri de date anonime, definite implicit prin declaratii de variabile de forma:

  var  v _ 1 , ….. , v _ n : T ;

Ex:

      label  1,  10 ;

      type  bin = 0 . . 1 ;

      var    bit  :  bin ;

                 cifra :  0 . . 9 ;

      const  zero = 0 ;

      var   i  : integer ;

 etichetele  1 si 10 , tipul bin cu elementele 0 si 1, variabila  bit  de tipul bin, variabila I  de tipul predefinit  integer precum si constanta zero avand valoarea 0.

                    Tipuri de date simple si predefinite.

     Tipurile simple sant de trei categorii: predefinite, enumerare si subdomeniu. Tipurile simple se mai numesc si tipuri scalare.

Exista cinci tipuri de date predefinite: integer , real , boolean , char si text.

  Tipul integer – este o multime de numere intregi cuprinse intre cel mai mic si cel mai mare numar intreg ce se pot reprezenta pe un calculator gazda al limbajului. Exemplu: elementul  -15  al tipului integer poate fi reprezentat prin literele   -15  sau  -17B.

    Fie x reprezentarea in baza 2 a unui numar intreg . Reprezentarea in cod complementar a lui x este:

            

unde baza b a sistemului de enumeratie, limitele  l   si   l   ale exponentului e si  numarul n + 1.

Exemplu: b=2, -128<e < 127 iar n = 23. 

Elementele  tipului real se reprezinta in programe prin literale numerice de formele i . f , i .  fEs sau iEs , eventual precedate de semnul + sau - , unde i si f sint numere zecimale intregi fara semn reprezentand partea intreaga si respectiv partea fractionara a literalului numeric.

Exemplu :     -0,25 al tipului real poate apare in programe Pascal in una din formele  -0.25, -25E-2, -25.0E-2.

In programele Pascal elementele tipului real se presupun a fi scrise in baza 10. Reprezentarea sau memorarea acestora in calculator se face in virgula mobila pe 2 cuvinte 32 biti – simpla precizie sau pe 4 cuvinte 64 biti – dubla precizie. Pozitie binara 15 prima din stanga, in notatia uzuala a primului cuvant este a semnului, in pozitiile 7 – 14  ale primului cuvant se memoreaza caracteristica exponentului marit cu 128, iar in rest se memoreaza mantisa partea fractionara fara prima pozitie dupa virgula.

 Caracteristica este:  c= 128 + e = 2 + 1= 10000001

Primul cuvant al reprezentarii in calculator este  0   10000001  000000, iar al doilea cuvant 0000000000000000 in baza 2. Reprezentarea octala este 40200, respectiv 0.  In mod analogic, -5.0 se va reprezenta prin numerele octale 140640 si 0.

   Cel mai mare numar real reprezentabil in simpla precizie este

0, 111111111111111111111111· 2    1 · 2   10 .

   Cel mai mic numar real pozitiv reprezentabil este:

0,1 · 2   = 2     10  .


Numerele reale de forma 0,1 x ……..  x  i,part intervalul
[½, 1) in 2  subintervale de lungime (1- ½) 2 = 2  .

  

    Tipul boolean – contine doua elemente referite prin constantele predefinite false  si   true . Operatiile predefinite ale aceluiasi tip and, or , not definesc o structura de algebra booleana .

    Tipul char – este o multime finita si ordonata de caractere ce contine, printre altele, litere, cifre, si caracterul spatiu.

Reprezentarea interna a unui element de acest tip se face pe 1 byte si are ca valoare codul ASCHII al caracterului respectiv.

In implementarea Pascal q si r se calculeaza prin instructiunile urmatoare:

  

    q  : =  a       div  b;    r   : =  a   mod  b;

    if  (a  <  0)   and  ( r  < > 0)   then

    begin

              r   : = r + abs (y) ;

              if  b < 0    then    q  : =  q  +  1  else    q  : = q – 1

    end

In limbajul standard, q si r se calculeaza prin:

  q   : = a  div b;       r  : = a   mod   b;

  if.   (a < 0 )  and   ( r  < >  0 ) then

             if  b  >  0   then q  : = q – 1

                      else begin  q : = q + 1 ;   r : = r – 2 * b  end

EXEMPLU:

begin

         writeln ( ' 8 div   3 = ' ,        8  div      3 );

         writeln ( ' -8 div  3 = ' ,      -8  div       3 );       

         writeln ('   8 div -3 =' ,         8  div   (-3) );

         writeln ('  -8 div -3 =' ,        -8 div   (-3) );

         writeln ('   8 mod 3 =' ,         8 mod     3 );

         writeln ('  -8 mod 3 =' ,       -8 mod     3 );

         writeln ('   8 mod –3)=',        8 mod (-3) );

          writeln ('   -8 mod   -3  = ',        -8 mod  (-3) );

end.

Operatori rationali  uzuali =  ,   <  >  ,   < ,   <= ,   >,   >= conduc la rezultate de tip boolean. Operanzii pot fi de tip integer prin reprezentari binare bit cu bit.

Ex: not 1 este –2 , 6 or 3 este 7 , 6 and  3 este 2 .

Pentru tipurile integer , char si boolean exista functiile succ (succesor) si pred (predecesor).

Pred (c) = chr (ord (c) –1) si succ (c) = chr (ord (c) + 1).

Operatii si functii predefinite asociate.

Ex:

var

     a  :  integer ;

     b  :  real ;

     c  :  char ;

     d  :  boolean ;

begin

      c : = ' x ' ;

      a : = 1 ;

      b : = 1.5 ;

      a : = a  +  trunc ( -b)  +  round  ( b) ;

      a : = a mod a   div  a  +  ord  ( ' x ') ;

      b : = succ (a)  +  b /  b  - pred ( succ (a) );

      c : = chr (ord (c)  );

      d : = ( b < = b ) and true ;

   write ( a , b , c , d )

end.

     Tipuri de date enumerare

Un tip enumerare este o multime ordonata de valori specificate prin identificatori.

Copyright © Contact | Trimite referat



Ultimele referate adaugate
Mihai Beniuc
   - Mihai beniuc - „poezii"
Mihai Eminescu Mihai Eminescu
   - Mihai eminescu - student la berlin
Mircea Eliade Mircea Eliade
   - Mircea Eliade - Mioara Nazdravana (mioriţa)
Vasile Alecsandri Vasile Alecsandri
   - Chirita in provintie de Vasile Alecsandri -expunerea subiectului
Emil Girlenu Emil Girlenu
   - Dragoste de viata de Jack London
Ion Luca Caragiale Ion Luca Caragiale
   - Triumful talentului… (reproducere) de Ion Luca Caragiale
Mircea Eliade Mircea Eliade
   - Fantasticul in proza lui Mircea Eliade - La tiganci
Mihai Eminescu Mihai Eminescu
   - „Personalitate creatoare” si „figura a spiritului creator” eminescian
George Calinescu George Calinescu
   - Enigma Otiliei de George Calinescu - geneza, subiectul si tema romanului
Liviu Rebreanu Liviu Rebreanu
   - Arta literara in romanul Ion, - Liviu Rebreanu

Cauta referat
Scriitori romani