Sunteți pe pagina 1din 6

C Instruciuni

n orice limbaj de programare avem 2 tipuri de instruciuni:


-Decisive: if else , switch
-Bucle: for while
Limbajul C nu este o excepie, n el avem cele 2 tipuri de instruciuni, vom
ncepe cu instruciunile decisive:
Instruciunea if (dac):
Instruciunea if verifica dac o conditie este adevrata, n cazul n care este
adevrata, se vor executa instruciunile scrise de noi.
Forma generala a unei instruciuni if:
if(expresie){
instruciuni;
}else{
instruciuni;
}

Exemplu:
#include<iostream>
using namespace std;
int main(){
int a; //declar variabila a
cin>>a; //cer de la tastatura valoarea variabilei a
if(a<=0){ //daca a<=0 atunci afiseaza urmtorul mesaj
cout<<Valoarea lui a este mai mica sau egala dect 0! a= <<a<<endl;
}else{ //altfel afiseaza alt mesaj
cout<<Valoarea lui a este mai mare dect 0! a= <<a<<endl;
}
return 0;
}

Dac urmatorului program i se vor da ca date de intrare valori negative, va afisa


mesajul: Valoarea lui a este mai mica sau egala dect 0! dac vei da valori

pozitive atunci mesajul afisat va fi: Valoarea lui a este mai mare dect 0!.
n C deasemenea putem folosi instruciunea else if dup un if n cazul n care
avem mai mult de 2 cazuri posibile, de exemplu:
if(a<=-10){
instruciuni1;
}else if(a>-10 && a<=10){
instruciuni2;
}else{
instruciuni3;
}

Mini programul de mai sus face n felul urmtor:


1) evalueaza dac a este mai mic sau egal cu -10
2) dac conditia este adevrata, va executa instruciuni1
3) altfel dac valoarea lui a mai mare dect -10 SI mai mica dect 10 va executa
instructiuni2
4)altfel va executa instructiuni3
Exemplu practic Un termometru amuzant:
#include <iostream>
using namespace std;
int main(){
int gradeCelsius;
cout<<Dati temperatura n grade Celsius: <<endl;
cin>>gradeCelsius;
if(gradeCelsius<-20){
cout<<Iti nghea chilotii pe tine de frig!;
}else if(gradeCelsius>=-20 && gradeCelsius<=0){
cout<<Ar trebui sa intri n casa!;
}else if(gradeCelsius>0 && gradeCelsius<18){
cout<<Brrr...! E rece!;
}else if(gradeCelsius>18 && gradeCelsius<35){
cout<<In sfrit o temperatura normala!;
}else{
cout<<Ti se prjesc chilotii pe tine!;
}
}

La rularea programului de mai sus n funcie de ce interval se va regsi valoarea

temperaturii introduse de tine, acesta i va afisa un mesaj amuzant .


Instruciunea switch (comuta):
Instructiuea switch este pentru a evalua toate cazurile ca i if, instruciunea
switch este mprumutat de pe vremea limbajului BASIC care era mpreuna cu
instruciunea GOTO care nu mai este valabil astzi n limbajul C, recomand
folosirea if-urilor, sunt mai elegante i mai precise.
Sintaxa:
switch(expresie){
case expresie_constanta1
instructiune1;
break;
case expresie_constanta2
instructiune2;
break;

:
:

/* Putem pune oricate cazuri dorim */


default :
instruciune_implicita;
}

int a;
cin>>a;
switch (a){
case 10:
cout<<Valoarea lui a este 10!;
break;
case 20:
cout<<Valoarea lui a este 20!;
default:
cout<<Valoarea lui a nu este nici 10 nici 20!;
}

Dup cum vedei programul de mai sus evalueaza dac valoarea lui a este 10,
apoi dac este 20 dac nu e nici una din astea 2 va afisa mesajul ca nu e nici una
din cele valori.

Instruciuni repetive(bucle):
De multe ori noi ca i oameni trebuie sa repetam anumite operatii de anumite
ori... cu att mai mult calculatorul, un exemplu din viaa de zi cu zi este spalarea
vaselor:
1) iei vasul din chiuveta
2) l sapunesti
3) l clatesti
4) l pui la uscat
i aceste operatii le reiei oridecate ori ai vase n chiuveta.
n C avem 2 tipuri de bucle: while(cat timp) i for(pentru);
WHILE:
Instruciunea while este folosit acolo unde avem nevoie s se execute anumiti
pai ct timp o conditie este adevrata. Forma generala:
while(conditie){
instruciuni;
}

Exemplu practic:
#include<iostream>
using namespace std;
int main(){
int a;
int i=0;
cout<<Dati valoarea maxima: ;
cin>>a;
while(i<=a){
cout<<Valoarea lui i este: <<i<<endl;
i=i+1;
}
}

Programul de mai sus va cere de la tastatura valoarea lui a, apoi va intra n


bucla while care va aduna cte o unitatea la variabila i pana cnd i va fi egal cu
a i va afisa valoarea curenta a lui i.

Exemplu de rulare:
Dai valoarea maxima: 5
Valoarea lui i este: 0
Valoarea lui i este: 1
Valoarea lui i este: 2
Valoarea lui i este: 3
Valoarea lui i este: 4
Valoarea lui i este: 5

Instruciunea for:
Instruciunea for este folosit cel mai des cnd avem de parcurs un sir de
numere, matrici, dar despre asta vom vorbi mai trziu, forma generala:
for(tip_data intentificator_valid;expresie;instructiune){
instructiuni
}

Exemplu practic:
Sa rescriem programul de mai sus folosind for:
#include<iostream>
using namespace std;
int main(){
int a;
cout<<Dati valoarea maxima:;
cin>>a;
for(int i=0;i<=a;i++){
cout<<Valoarea lui i este:<<i;
}
}

Ce este marcat cu rou e echivalent cu while-ul precedent din subcapitolul cu


while.
Tema:
1) S se realizeze un program care afiseaza mesaje n funcie de anumite valori

a unei variabile de tip ntreg. Exemplu: dac variabila are valoarea 3 s se


afiseze: Salut lume!
2) S se realizeze un program cu o bucla while care s fac suma a n numere
ncepnd cu 0, unde 1<n<100.
3) S se rescrie programul de la punctul 2) doar ca folosind o alta instruciuni de
tip bucla.
Acesta e finalul lectiei cu instruciuni n C, pentru ntrebri, scriei-mi pe
burcovschidavid@gmail.com sau pe facebook: Burcovschi David. O zi buna! :)

S-ar putea să vă placă și