Sunteți pe pagina 1din 4

<HTML>

<HEAD>
<TITLE>C++ Learning</TITLE>
</HEAD>
<BODY>
<H1><B>Instructiuni</H1></B>
<H2>Instructiunea de decizie</H2>
<FONT SIZE=4>
In instructiunea de decizie se evaluaeza expresia si daca rezultatul este adevarat
(corespunzator valorii logice
<I>True</I>), se executa <B>instructiunea_1</B>, altfel se executa
<B>instructiunea_2.</B>
<H3>Observatii:</H3>
<OL>
<LI> Partea <b>else instructiune_2;</b> poate sa lipseasca . In acest caz doar una
dintre alternative se executa.</LI>
<LI> Fiecare alternativa executa o singura instructiune daca este necesara executia
mai multor instructiuni atunci ele vor fi grupate
intre acolade </LI>
<LI><B> Instructiune</B> poate fi orice instructiune recunoscuta de C++ inclusiv
<B>If</B>.</LI></OL>
<H2><U>Probleme rezolvate</U></H2>

<ul type=circle>
<li>Problema 1.Se citesc trei valori intregi, reprezentand cifre, sa se formeze
numarul care incepe cu o cifra para, care poate fi oricare dintre cele trei. Daca
nu exista cifre pare se va scrie "Nu exista cifra para".
<P>include iostream </P>
<P>using namespace std;</P>
<P>int main() {</P>
<p>int a,b,c,n;</p>
<p>cin a b c;</p>
<p>if(a%2==0) { </p>
<p> n=a*100+b*10+c; </p>
<p>` cout n;} </p>
<p>

<H2>Instructiunea switch...case.</H2>

<P>Sintaxa:

Instructiunea se executa astfel:


Se evalueaza <B> expresia </B> si apoi:
- daca rezultatul obtinut este egal cu valoarea obtinuta in urma evaluarii :
<UL TYPE=SQUARE> <OL>
<LI> <B> exp_1 </B> se executa <B> instructiune_1 </B> dupa care se trece la
executarea instructiunii
care urmeaza dupa <B> switch</B>;</LI>
<LI> <B> exp_2 </B> se executa <B> instructiune_2 </B> dupa care se trece la
executarea instructiunii
care urmeaza dupa <B> switch</B>;</LI>
<LI><B> ....................................................</B></LI>
<LI> <B> exp_i </B> se executa <B> instructiune_i </B> dupa care se trece la
executarea instructiunii
care urmeaza dupa <B> switch</B>;</LI>
<LI> <B> exp_n </B> se executa <B> instructiune_n </B> dupa care se trece la
executarea instructiunii
care urmeaza dupa <B> switch</B>;</LI>
- altfel, se executa intructiunea intructiune_n+1, dupa care se trece la
executarea instructiunii care urmeaza dupa <B>
switch</B>.

<B>! Observatii:</B>
<OL TYPE=a>
<OL>
<LI> Oricare dintre cele trei expresii pot sa lipseasca (pot sa lipseasca chiar si
toate),
dar cei doi delimitatori; dintre cele trei expresii sunt obligatorii;</LI>
<LI> Operatorul <B> break </B> are rolul de a opri switch-ul dupa ce un caz a fost
executat.
Daca break lipseste, atunci toate instructiunile dupa acel caz vor fi executate,
indiferent
daca conditiile sunt adevarate sau false.</LI>
<LI> <B> default</B> nu este afectat de <B>break</B>.</LI></OL>
<H2><U>Probleme rezolvate</U></H2>

<OL TYPE=1>
<OL>
<p>1.Creeaza un program folosind switch...case care afiseaza numere de la 1 la 5 in
functie de valoarea citita</p>
<P>Daca alt numar este introdus se va afisa 0</P>
<P>
Solutie: </P>

<I>
<P>include iostream </P>
<P>using namespace std;</P>
<P>int main() {</P>
<P> int n;</P>
<P> cin n;</P>
<P> switch(n){</P>
<P> case 1: {cout<<1;</P>
<p> break;}</p>
<P> case 2: {cout<<2;</P>
<p> break;}</p>
<P> case 3: {cout<<3;</P>
<p> break;} </p>
<P> case 4: {cout<<4;</P>
<p> break;} </p>
<P> case 5: {cout<<5;</P>
<p> break;} </p>
<P> default: cout<<0;</P>
<P> }</P>
<P> return 0;</P>
<P>} </I></P>
<p>Programul va afisa numarul corespunzator valorii sale daca apartine intervalului
[1,5], altfel afiseaza 0;</p>
<p>2.Creeaza un program care spune daca un om este major sau minor: </p>
<p>include iostream </p>
<p>using namespace std;</p>
<i>
<p>int main () {</p>
<p> int n=18;</p>
<p> switch(n) {</p>
<p> case 10: { cout<<"Este minor";</p>
<p> break;}</p>
<p> case 18: { cout<<"Este major";</p>
<p> break;}</p>
<p> }</p>
<p> return 0;</p>
<p>}</p></i>
<p>Afiseaza:Este major</p>
<p>3.Creeaza un program care afiseaza numarul a,b,c introduse de la tasatarura cand
alt numar n introdus de la tastatura este egal cu ele.</p>
<p>Daca numarul n nu va fi egal cu a,b,c, se va afisa n:</p>
<p><i></p>
<p>#include iostream </p>
<p>using namespace std;</p>
<p>int main () {</p>
<p> int a,b,c,n;</p>
<p> cin a b c n</p>
<p> switch(n) {</p>
<p> case a:{cout a;</p>
<p> break;}</p>
<p> case b:{cout b;</p>
<p> break;}</p>
<p> case c:{cout c;</p>
<p> break;}</p>
<p> default: cout n;</p>
<p> }</p>
<p> return 0;</p>
<p>}</p></i>
<p>Afiseaza: a, cand n=a; b, cand n=b;c, cand n=c; n, cand n!=a si n!=b si n!=c</p>
<P>4.Se da un numar natural n. Sa se afiseze 0 daca ultima cifra este 0 si 1
respectiv. In caz contrar,</p>
<p>se va afisa numarul 404.
<p></p>
<p>#include iostream </p>
<p>using namespace std;</p>
<p>int main () {</p>
<p>int n;</p>
<p>cin n;</p>
<p>switch(n%10) {</p>
<p> case 0:{ cout 0; </p>
<p> break;} </p>
<p> case 1:{ cout 1: </p>
<p> break;} </p>
<p> default: cout 404;</p>
<p> }</p>
<p> return 0;</p>
<p>}</p>
<p>5.Se dau doua numere a si b. Sa se afiseze, in aceasta ordine:suma lor daca
ultima cifra a lui b este egala cu 0, </p>
<p>diferenta lor daca ultima cifra a lui b este egala cu 1 si produsul lor daca
niciunul dintre cazurile de mai sus se adevareste </p>
<p>#include iostream </p>
<p>using namespace std;</p>
<p>int main () {</p>
<p>int a,b;</p>
<p>cin a b;</p>
<p>switch(b%10) {</p>
<p> case 0: { cout a+b;</p>
<p> break;}</p>
<p> case 1:{ cout a-b;</p>
<p> break;} </p>
<p> default: cout a*b; </p>
<p> }</p>
<p> return 0;</p>
<p>}</p>
<h2><u>Probleme propuse</u></h2>
<p></p>
<OL TYPE=1>
<OL>
<LI>Se da un numar natural citit de la tastatura. Sa se afiseze ultima si penultima
cifra a sa daca numarul este par. Daca numarul este impar se va afisa 00. </li>
<li>Este citit numarul natural n de la tastatura. Sa se afiseze (n%10)*2 daca
numarul este par si (n%10)/10 daca numarul este impar. </li>
<li>Sa se afiseze pe ecran produsul unui numar natural n citit de la tastatura cu
un alt numar b daca ultima cifra a lui n este egala cu ultima a lui b. </li>
<li>Se citeste un numar x si un numar y. Sa se afiseze x+y daca ultima cifra a lui
n este egala cu 2,4,6,8 si x*y daca ultima cifra a lui n este egala cu 1,3,5,7
</li>
<li>Se citesc a,b,c si d de la tastatura. Sa se afiseze: suma dintre a si b daca
a=b, produsul dintre a si c daca a=c si media aritmetica dintre a si d daca a=d
</li>

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