Bun venit pe SkullBox!

Bine ai venit, Vizitator. Trebuie să te autentifici sau să îţi creezi un cont.
Ai pierdut sau nu ai primit emailul care conţine codul de activare al contului?

Autentifică-te cu numele de utilizator, parola şi precizează durata sesiunii.
  Pagini: [1]
  Imprimă  
[CURS PASCAL by CataK] Lectia 3  (Vizualizari 1127)
cataK
*

Deconectat Deconectat

Mesaje: 91

[CURS PASCAL by CataK] Lectia 3, Noi 30, 2006, 18:25

----------------------------------------------------------------- Made by CataK -----------------------------------------------------------------

Dupa ce in primele 2 lectii v-ati familiarizat putin cu Pascalul si ati vazut cum se declara o variabila, in aceasta lectie, Lectia 3, veti invata cum sa "jonglaþi":tongue3:  cu variabilele, sa le cititi si sa le afisati, sa le dati anumite valori, etc.  

Operatia de atribuire:  " := "

Sa presupunem ca declarati o variabila kg_mere pe care doriti sa o initializati cu valoarea 2. Initializarea nu se face
Citat

      (GRESIT)

kg_mere = 2  ;

ci...
Citat

    (CORECT)

kg_mere := 2  ;  


Bun, poate unii o sa spuneti: "Dar... am vazut in Lectia 2 ca ai scris la operatori... " = ". Acolo nu am vrut sa complic lucrurile si de aceea am lasat operatia de atribuire pentru lectia asta. Veti vedea pe parcurs ca sunt unele cazuri in care se va folosi " = " si nu ":=". Dar retineti: Atribuirea (mai pe romaneste, ii dai o anumita valoare variabilei), se face numai cu ":=".

Acestea fiind spuse, haideti sa incercam sa facem un mic program!

-----------------------------------------------------------------------------------------------------------------------------------------------------------
Program
Cerinþã: Faceti un program care sa citeasca de la tastatura o variabila de tip intreg si pe care sa o afiseze!

Rezolvare:
Citat


var a:integer;

begin

      write('
Scrieti numarul: ');

      readln(a);

      writeln(a);

end.



Explicatii:
Acum sa incercam sa intelegem impreuna programul de mai sus  Big grin
1. Pe prima linie este declarata variabila - lucru explicat deja in lectia trecuta
2. Inceputul programului
3. Comanda WRITE - explicata in prima lectie
4. Citirea variabilei. Ei bine, aici vroiam sa ajung:). Asa se citeste o variabila. In acest fel, variabila este initializata cu o valoare data de utilizator de la tastatura. Comanda READLN v-a fost facuta cunoscuta in lectia anterioara. Iata cea mai importanta utilizare a acesteia.
5. Scrierea variabilei. Asa se scrie o variabila. Comanda WRITE a fost prezentata de asemenea in prima lectie. Iata una din utilizarile ei.
6. Sfarsitul programului

-----------------------------------------------------------------------------------------------------------------------------------------------------------

Iata mai jos un alt program, in care veti aplica si atribuirea
-----------------------------------------------------------------------------------------------------------------------------------------------------------
Program
Cerinþã: Se dau doua variabile, una de tip intreg si una de tip real. Cea de tip real este citita de la tastatura, iar cealalta intializata cu valoarea 100. Afisati variabilele

Rezolvare:
Citat


var a:integer;
                         b:real;

begin

      write('
Scrieti numarul real: ');

      readln(b);

      a:=100 ;

      writeln(a , b);    { sau puteati scrie :   writeln(a); writeln(b);  }  

end.



Explicatii:
Acum sa incercam sa intelegem impreuna programul de mai sus  Big grin

1. si 2. Sunt declarate variabilele - lucru cunoscut deja
3. Inceputul programului
4. Comanda WRITE care afiseaza respectivul mesaj
5. Este citita de la tastatura variabila reala b
6. Se face atribuirea. Astfel, variabila a este initializata cu valoarea 100.
7. Sunt afisate variabilele. Atentie: Acolo am prezentat doua moduri de afisare. Fie scrieti separat: writeln(a); writeln(b);, fie le scrieti in mod condensat si anume: writeln(a , b);
OBS: eu in program am folosit {    }. Am uitat sa spun in lectiile anterioare faptul, ca intre aceste acolade tot ceea ce scrie nu are nici o valoare. Adica, programul nu tine cont de ceea ce e scris intre aceste acolade. Toata "chestia" se numeste comentariu
8. Sfarsitul programului


-----------------------------------------------------------------------------------------------------------------------------------------------------------

Dupa cum ati vazut, in al doilea program, am scris condensat acolo: writeln(a , b);
Dar... comanda WRITE afiseaza si text, dupa cum ati vazut!

Intrebare: Nu ar putea fi combinate ? BA DA! puteati la al doilea program sa scrieti ceva de genul:
 writeln('Numarul intreg este: ', a);
writeln('Numarul real este:', b );

Sau.. si mai condensat puteati scrie totul intr-un singur WRITE:
  writeln('Numarul intreg este: ', a , ' iar numarul real este ' , b);

Bun... sa trecem mai departe:
-----------------------------------------------------------------------------------------------------------------------------------------------------------
Program
Cerinþã: Se citesc de la tastatura doua variabile de tip intreg. Calculati suma, produsul si catul celor doua numere si afisati-le!

Rezolvare:
Citat


var a , b , Suma, Produs:integer;
                         Cat:real;

begin

      write('
a= '); readln(a);
      write('
b= '); readln(b);
      Suma:=a+b;
      Produs:=a*b;
      Cat:=a/b;
      writeln(
'Suma numerelor', a , ' si ', b ,' este: ', Suma );
      writeln(
'Produsul numerelor', a , ' si ', b ,' este: ', Produs );
      writeln(
'Câtul numerelor', a , ' si ', b ,' este: ', Cat );

end.



Explicatii:

Singura chestie din programul asta care ar trebui explicata este faptul ca variabila cat este de tip real.  De ce ? Deoarece avem o operatie de impartire (  Cat:=a/b; ). Spre exemplu, daca il declaram pe cat de tip intreg si aveam:  a=5, b=3
=> cat = 5/3 care nu apartine numerelor intregi. Astfel programul afisa eroare!
In rest, toate celelalte lucruri au fost explicate pana acum. Pe parcurs voi incerca sa scriu explicatiile sub forma unui
{ comentariu  }
in dreptul fiecarei linii de cod Winking
-----------------------------------------------------------------------------------------------------------------------------------------------------------
Memorat

Hai cã se poate ...
Agkelos
*

Conectat Conectat

Mesaje: 5201

WWW
[CURS PASCAL by CataK] Lectia 3, Noi 30, 2006, 22:03

OMG, he's back !  :hello1:

Credeam ca ai abandonat cursul de Pascal... nu m-am pus foarte serios pe recapitulat dar e placut sa-mi amintesc unele chestii primul limbaj de programare care l-am invatat...  Big grin
Memorat



Problemele se rezolva pe forum. Nu trimiteti PM ca nu va ajut.
Pentru urgente, skullbox at skullbox . info.
cataK
*

Deconectat Deconectat

Mesaje: 91

[CURS PASCAL by CataK] Lectia 3, Dec 01, 2006, 12:11

Nu l-am abandonat... doar ca am avut o perioada foarte aglomerata Sad
O sa continui Tongue  Bafta multa.. si... nu strica sa mai recapitulezi putin Pascal  :lol:
Memorat

Hai cã se poate ...
AdyX
*

Deconectat Deconectat

Mesaje: 1060

WWW
[CURS PASCAL by CataK] Lectia 3, Dec 01, 2006, 20:17

Toate cele 3 parti ale cursului sunt exceptionale! Felicitari!
Memorat
Radu
*

Deconectat Deconectat

Mesaje: 5

[CURS PASCAL by CataK] Lectia 3, Mai 20, 2007, 07:05

F bun tutorialu da la mn nu vrea sa fac nici o inmultiere pun a*b si imi apare tot suma numerelur si la ultimu program vezi ca mai trebuia un readln ca sa nu mai iasa inainte sa iti dea raspunsu. Oricum tia iesit tutorialu  Applause
Memorat
AdyX
*

Deconectat Deconectat

Mesaje: 1060

WWW
[CURS PASCAL by CataK] Lectia 3, Mai 20, 2007, 09:57

Poti apasa ALT + F5 dupa ce programelul s-a terminat, si vei vedea ecranul.
Memorat
SkullAds
Ecspert
ReclAmator
* * * * *
Google AdSense

Gen: Bărbat
Mesaje: Multe

Reclama AdSense,
 

 
   


Pagini: [1]
  Imprimă  
 
Schimbă forumul:  

Ethical hacking and programming community
Powered by SMF 1.1.7 | SMF © 2006-2008, Simple Machines LLC
Traducerea în limba română © 2006-2007 www.smf.ro