Home - qdidactic.com
Didactica si proiecte didacticeBani si dezvoltarea cariereiStiinta  si proiecte tehniceIstorie si biografiiSanatate si medicinaDezvoltare personala
referate stiintaSa fii al doilea inseamna sa fii primul care pierde - Ayrton Senna





Aeronautica Comunicatii Drept Informatica Nutritie Sociologie
Tehnica mecanica

C


Qdidactic » stiinta & tehnica » informatica » c
Notiuni primare de programare in Pascal si C



Notiuni primare de programare in Pascal si C


Secretul invatarii rapide a programarii


Exista posibilitatea invatarii rapide a programarii ?

Desigur. Experienta predarii si invatarii programarii ne-a dovedit ca exista metode diferite de invatare a programarii, mai rapide sau mai lente, mai temeinice sau mai superficiale. Din moment ce se doreste invatarea rapida a programarii inseamna ca, pentru cel ce doreste aceasta, problemele ce isi asteapta rezolvarea cu ajutorul calculatorului sint importante sau stringente. Am putea chiar presupune ca solutionarea lor rapida este un deziderat mai important decit invatarea programarii. Tocmai de aceea, fiind constienti de acest fapt, vom prezenta in continuare una din cele mai rapide metode de invatare a programarii.

Sa observam mai intii ca pentru invatarea unei limbi straine este necesara comunicarea si vorbirea intensa a acelei limbi. Cu totii am putut constata ca daca exista o motivatie sau nevoie puternica de a comunica in acea limba, cel putin pentru o perioada de timp, procesul de invatare a ei este foarte rapid. De exemplu, daca ne aflam intr-o tara straina sau daca dorim apropierea de o persoana straina (mai ales daca este atragatoare si de sex opus . ) categoric vom constata ca am invatat mult mai iute limba respectiva. Si aceasta datorita faptului ca efortul de invatare a fost mascat in spatele efortului (intens motivat!) de a comunica si de a ne face cunoscute intentiile si gindurile.



La fel, pentru invatarea rapida si cu usurinta a programarii efortul trebuie indreptat, nu spre “silabisirea” limbajului de programare, ci spre rezolvarea de probleme si spre scrierea directa a programelor de solutionare a acestora. Concentrindu-ne asupra problemelor ce le solutionam nici nu vom observa cind si in ce fel am invatat sa scriem programe. La urma urmei, programarea este doar un instrument, doar o unealta “de scris”, si nu un scop in sine. Daca vrei iute sa inveti sa scrii, conteaza cum sau in ce mina tii stiloul ? .

Nu trebuie deloc neglijat si un al doilea factor secret'. Asa cum “meseria nu se invata, ci se fura“, tot astfel programarea se poate invata mult mai usor apelind la ajutorul unui profesor sau a unui specialist. Acesta, prin experienta si cunostintele sale de specialitate ne poate ajuta sa pasim alaturi de el “pe carari batatorite” si intr-un ritm sustinut.

In concluzie, intr-o descriere plastica si metaforica, metoda secreta cea mai rapida de “ascensiune” in programare este metoda “privirii concentrate spre virf, cu ghidul alaturi si pe carari batatorite”.



Notiuni primare de programare in Pascal si C


In spiritul celor spuse mai sus, vom introduce acum 'intr-un ritm alert', prin exemple concrete, notiunile elementare de programare in limbajele Pascal si C (in paralel). Vom pleca de la prezentarea structurii generale a unui program iar apoi vom trece la prezentarea celor patru structuri-instructiuni elementare continute in psedo-limbajul de descriere a algoritmilor. Vom avea in plus grija de a precede descrierea fiecarei structuri elementare de liniile de declarare a tipului variabilelor implicate. Peste tot vor apare linii de comentariu (ignorate de compilator). In limbajul Pascal comentariile sint cuprinse intre acolade , pe cind in C ele sint cuprinde intre constructia de tipul /* comentariu*/ sau apar la sfirsitul liniei precedate de doua slash-uri //comentariu.


Structura unui program

Program Nume_de_Program;


BEGIN



END. 

(Orice se va scrie dupa punct va fi ignorat de catre compilator)

// linii de incluziuni de fisiere header


// declaratii de variabile si functii externe (globale)


void main(void)

Exemplu :

Program Un_Simplu_Test;

Const e=2.68;

Var x:real;

BEGIN

x:=1./2+e*(1+e);

Writeln(‘Rezultatul este:’,x);

END.

Exemplu :

#include <stdio.h>


int e=2.68;

float x;

void main(void)

Atribuirea : var:=expresie;


Var i,j:integer;perimetrul:real;


j:=2000 div 15;

i:=i+(j-1)*Sqr(2*j+1);

perimetrul:=2*PI*i;

#include <math.h>  // declara constanta M_PI

int i,j; float perimetrul;


j=2000 / 15; // impartire intreaga implicita !!

i+=(j-1)* (2*j+1)*(2*j+1); // in C avem operatorul

// de adunare + inainte de egal = ; functia putere in

// C este pow(x,y)

perimetrul=2*M_PI*i;

Intrare/Iesire :

Citeste var1, var2, var3, . ;

Scrie var1, var2, var3, . ;

Sau

Scrie expresia1, expresia2, expresia3, . ;


Var i,j:integer;perimetrul:real;


Readln(i,j);

Perimetrul:=2*PI*i;

Writeln(‘Raza=’,i:4,’ Perimetrul=’,perimetrul:6:2,’ Aria=’, PI*Sqr(i):6:2);


#include <math.h>  // declara constanta M_PI

int i,j; float perimetrul;


scanf(“%i %i”,&i,&j); // “%i %i” este descriptorul de format de citire, & este operatorul de adresare

perimetrul=2*M_PI *i;

printf(“Raza=%4i Perimetrul= %6.2f Aria= %6.2f”,i,perimetrul,M_PI*i*i); // %6.2f – descriptorul de format de afisare a unei valori reale(flotante) pe 6 pozitii rotunjit la 2 zecimale

Conditionala :

Daca <conditie_logica> atunci instructiune1 [altfel instructiune2];

Var i,j,suma:integer;


If i <= 2*j+1 then suma:=suma+i

else suma:=suma+j;

int i,j,suma;


if (i<=2*j+1) suma+=i

else suma+=j;

Ciclul de tipul Repeat-Until:

Repeta instructiune1, instructiune2, . pina cind <conditie_logica>;

Var i,j,suma:integer;


suma:=0;i:=1;

Repeat

suma:=suma+i; i:=i+1;

Until i>100;

int i,j,suma;


suma=0;i=1;

do

suma+=i;

while (i++<100);

Ciclul de tipul Do-While:

Cit timp <conditie_logica> executa instructiune;

Var i,j,suma:integer;


suma:=0;i:=1;

While i<=100 do begin

suma:=suma+i; i:=i+1;

End;

int i,j,suma;


suma=0;i=1;

while (i++<100)

suma+=i;


Ciclul de tipul For (cu contor):

Pentru var_contor:=val_initiala pina la val_finala executa instructiune;

Var i,j,suma:integer;


suma:=0;

For i:=1 to 100 do

Suma:=suma+i;

int i,j, suma;


for(suma=0,i=1;i<=100;i++)

suma+=i;




Contact |- ia legatura cu noi -| contact
Adauga document |- pune-ti documente online -| adauga-document
Termeni & conditii de utilizare |- politica de cookies si de confidentialitate -| termeni
Copyright © |- 2024 - Toate drepturile rezervate -| copyright