marți, 5 ianuarie 2010

L6. Structura unui program C/C++

In general, un program este un sir de instructiuni.  In C/C++ programul este o functie numita main.

Efectul instructiunillor din C/C++ este stabilit intr-un fisier numit stdio.h (h vine de la header). Acest fisier este incarcat implicit pentru a asigura buna functionare a programului. Daca dorim sa folosim instructiuni mai complexe (gen cin, cout) trebuie sa specificam si headerul care explica functionarea acestor instructiuni (iostream.h).

De asemenea, trebuie sa stabilim ce variabile folosim, pentru a le putea aloca spatiu si a le da valori. Spre deosebire de alte limbaje, in C/C++ declararea variabilelor folosite poate fi facuta si pe parcursul executiei programului.

Structura unui program C/C++ este urmatoarea
//acesta este un comentariu; el nu influenteaza programul
//declararea headerelor
#include <iostream.h>
//declararea variabilelelor
....
//programul principal
int main()
{
// instructiunile programului
..........
return 1;} //aici se incheie programul

In exemplul urmator (citirea a doua valori si afisarea sumei lor) trebuie sa observati:

  1. orice program are trei parti:

  2. citirea datelor initiale si initializarea variabilelor necesare

  3. prelucrarea datel;or (programul propriuzis)

  4. afisarea rezultatelor


Puteti observa de asemenea:

  • cum se declara o variabila

  • cum se foloseste o constanta text (sir de caractere)

  • cum se citeste o data

  • cum se afiseaza un sir de caractere, constante, variabile si expresii

  • cum putem schimba valoarea unei variabile


# include <iostream.h>

int a,b,c;

int main()

{//citirea datelor initiale; initializarea altor variabile;

cin>>a>>b;

//prelucrarea datelor

c=a+b;

//afisarea datelor

cout <<"afisarea rezulattului"<<endl;

cout<<<<a<<'+'<<b<<'='<<a+b;

cout<<"Suma calculata  este "<<c;

return 1;}

Observatie

  • instructiunea return permite intreruperea brusca a executiei unui program; puteti folosi aceasta instructiune daca , din diverse motive doriti intreruperea brusca a executiei unui program.

5 comentarii:

  1. daca puteti sa ma ajutati...la pascal...am de facut 4 probleme...

    RăspundețiȘtergere
  2. ciobanu diana ioana28 iulie 2011 la 21:42

    NU AM INTELES NIMIC

    RăspundețiȘtergere
  3. daca nu stii inca functii, lasa asa: dupa afisarea rezultaelor trebuie sa scrii return 1.
    cand ai sa inveti functii, vei vedea ca un proces de calcul se poate intrerupe cu return (ex: vreau sa stiu daca un sir de valori are numere negative; la primul numar gasit scriu RETURN 1 - cum ca DA,sirul are numere negative. in felul acesta opresc cautarea pana la sfarsitul sirului - care mi-ar fi dat "cate numere negative sunt in sir") :D

    RăspundețiȘtergere
  4. prima data trebuie sa il invat asa motamo? Sau trebuie sa il iau structural sa il invat prima data axiomatic si dupa aceea sa il aplic pe calculator . Am observat ca programul din c++ este diferit de ce ne preda nouadoamna profesoara.
    Adik noi la ora invatam structura semantica... iar apoi facem un exemplu.
    Dar noi nu avem nici un main ssai seca de genul
    La noi incepe cu declararea variabileleor de exemplu: D.i: n D.o:S
    Natural:n,S
    Inceput
    scrie n
    Daca n0 atunci
    i<- [n/10]
    Inchidem structura daca
    Scrie n
    Sfarsit

    Acesta a fost doar un exemplu . E gresit ce scrie acolo dar e esentialul. Va rog frumos ajutatii-ma si pe mine sa il inteleg CORECT.
    Sunt elev la Mihai Viteazul In Caracal Judetul Olt

    RăspundețiȘtergere
  5. Un prog are sectiunile Declarare variabile, citire si initializare, prelucrare, afisare. In rest e inventivitatea ta in a rezolva problema. Inteleg ca esti in clasa a IX-a. Deocamdata faceti algoritmi (invatatati niste probleme MODEL). Problemele ulterioare vor fi obtinute prin imbinarea acestor algoritmi si vor fi realizate intr-un limbaj (PASCAL sau C/C++). Prin limbaj si editorul sau vei putea sa verifici in ce masura programul tau este corect.
    Si pentru scheme logice sau pseudocod exista unelte care sa te apropie de lumea limbajelor. Arata-i si dnei profesoare linkul urmator. va va face ora mai dinamica.

    http://www.haskell.org/haskellwiki/Rodin

    :)

    RăspundețiȘtergere