Sunteți pe pagina 1din 5

Operatorii logici

Recapitulare:
Operatorii aritmetici :+,-,*,/,%
Operatorii relationali: ==(egal), !=(diferit), <,<=,>,>= (rezultatul este
adevarat sau fals)
Operatorii logici: !(negare), and/ &&( SI logic), or/|| (SAU logic)

Negarea:
x>0?
Not (x>0) inseamna x<=0
Pt cond (x%2=0) not(x%2=0) inseamna x impar
Negarea lui > este <=
Negarea lui < este >=
Negarea lui == este !=
Negarea lui <= este >
SI logic: leaga 2 conditii. Valoarea eunei expresii logice este Adevarat sau
Fals
X apartine intervalului [10,30]? X este intre valorile 10,11,12,…..30
x>=10 si x<=30
in C++ (x>=10) && (x<=30)
Rezultatul este adevarat doar daca conditiile sunt toate adevarate. In rest
rezultatul este fals

Conditia ca un numar sa fie de 2 cifre: x>9 si x<100


Conditia ca un numar sa fie cifra: x>=0 si x<10
Conditia ca un numar sa fie de exact 3 cifre: x>99 si x<1000

SAU logic:
X este o cifra. Determinati daca cifra este numar prim
(x==2) || (x==3) || (x==5) || (x==7)
Rezultatul este fals doar daca conditiile sunt toate false. In rest rezultatul
este adevarat.
Maximul/Minimul dintre 3 numere

a=10,b=23, c=45 MAX=45, MIN=10


citeste a,b,c
daca (a>b) si (a>c) atunci MAX=a
daca (b>a) si (b>c) atunci MAX=b
daca (c>a) si (c>b) atunci MAX=c
scrie MAX
daca (a<b) si (a<c) atunci MIN=a
daca (b<a) si (b<c) atunci MIN=b
daca (c<a) si (c<b) atunci MIN=c
scrie MIN

Se da un numar de 3 cifre. Determinati cifra cea mai mare si cifra cea mai
mica.
Ex: x=491  cifra cea mai mare este 9, cifra cea mai mica este 1
x=268 cifra cea mai mare este 8 cifra cea mai mica 2
x=706 cifra cea mare este 7 cifra cea mai mica 0

x=491 a=4, b=9, c=1


citeste x
a=x/100
b=x/10%10
c=x%10
daca (a>b) si (a>c) atunci MAX=a
daca (b>a) si (b>c) atunci MAX=b
daca (c>a) si (c>b) atunci MAX=c
scrie “cifra cea mai mare este: ”, MAX
daca (a<b) si (a<c) atunci MIN=a
daca (b<a) si (b<c) atunci MIN=b
daca (c<a) si (c<b) atunci MIN=c
scrie “cifra cea mai mica este:”, MIN
Probleme DACA
1. Se dau două numere. Să se afişeze acele numere care se împart exact la 7. Exemplu :
Date de intrare : 34 28 Date de ieşire : 28.
2. “Mă iubeşte un pic, mult, cu pasiune, la nebunie, de loc, un pic,…”. Rupând petalele unei
margarete cu x petale, el (ea) mă iubeşte …. Exemplu: Date de intrare: x=10 Date de
ieşire: … de loc.
3. La un concurs se dau ca premii primilor 100 de concurenţi, tricouri de culoare albă, roşie,
albastră şi neagră, în această secvenţă. Ionel este pe locul x. Ce culoare va avea tricoul pe
care-l va primi? Exemplu : date de intrare : x=38 date de ieşire : rosie.
4. Într-o tabără, băieţii sunt cazaţi câte 4 într-o căsuţă, în ordinea sosirii. Ionel a sosit al n-
lea. În a câta căsuţă se va afla? Exemplu : date de intrare : n=69 date de ieşire : casuta 17.
5. Elevii clasei a V-a se repartizează în clase câte 25 în ordinea mediilor clasei a IV-a. Radu
este pe locul x în ordinea mediilor. În ce clasa va fi repartizat (A, B, C, D sau E)?.
Exemplu : date de intrare : x=73 date de ieşire : C.
6. Se dau trei numere diferite. Afisaţi-le în ordine crescătoare. Exemplu : Date de intrare 4
2 6 Date de ieţire 2 4 6.
7. Se dau trei numere diferite. Afişaţi numărul a cărei valoare este cuprinsă între valorile
celorlalte două. Exemplu : Date de intrare 12 14 10 Date de ieşire 12.
8. Se introduc trei date de forma număr curent elev, punctaj. Afişaţi numărul elevului cu cel
mai mare punctaj. Exemplu : Date de intrare nr crt 7 punctaj 120 nr crt 3 punctaj 100
nr crt 4 punctaj 119 Date de ieşire punctaj maxim are elevul cu nr crt 7.
9. Se introduc trei numere. Să se verifice dacă formează o secvenţă de numere consecutive.
Exemple: Date de intrare 3 4 5 Date de ieşire Da Date de intrare 4 5 7 Date de
ieşire Nu.
10. Să se verifice dacă o literă introdusă este vocală sau consoană. Exemplu : Date de intrare
a Date de ieşire vocala.
Probleme diverse

1. Andrei primeşte într-o zi trei note, nu toate bune. Se hotărăşte ca, dacă ultima notă
este cel puţin 8, să le spună părinţilor toate notele primite iar dacă este mai mică decât 8,
să le comunice doar cea mai mare notă dintre primele două. Introduceţi notele luate şi
afişaţi notele pe care le va comunica părinţilor. Exemple : Date de intrare 6 9 9 Date de
ieşire 6 9 9 ; Date de intrare 8 5 7 Date de ieşire 8.
2. Se consideră trei numere întregi. Dacă toate sunt pozitive, să se afişeze numărul mai
mare dintre al doilea şi al treilea număr, în caz contrar să se calculeze suma primelor două
numere. Exemple: Date de intrare 45 23 100 date de ieşire 100 ; Date de intrare 34 -
25 10 Date de ieşire 9.
3. Să se afişeze cel mai mare număr par dintre doua numere introduse în calculator.
Exemple : Date de intrare 23 45 Date de ieşire nu exista numar par ; Date de intrare 28
14 Date de ieşire 28 ; Date de intrare 77 4 Date de ieşire 4.
4. Pe o masă de biliard sunt bile albe, roşii şi verzi. Din fiecare culoare sunt bile de două
dimensiuni: mari şi mici. Să se afişeze câte bile sunt în total pe masa de biliard. Un
jucător vrea să-i spuneţi care bile sunt mai multe , cele mici sau cele mari, afişând
numărul lor. De ce culoare sunt bilele cele mai numeroase? Precizaţi numărul lor.
Exemplu: Date de intrare Nr. bile albe mici: 2 Nr. bile albe mari: 3 Nr. bile rosii mici: 1
Nr. bile rosii mari: 4 Nr. bile verzi mici: 3 Nr. bile verzi mari: 4 Date de ieşire Totalul
bilelor: 17 Mari: 11 bile Verzi: 7 bile
5. La ferma de găini Copanul este democraţie. Fiecare găină primeşte exact acelaşi
număr de boabe de porumb. Cele care nu pot fi împărţite vor fi primite de curcanul
Clapon. Să se spună cine a primit mai multe boabe şi cu cât. În caz de egalitate, se va
afişa numărul de boabe primite şi cuvântul "egalitate". Datele se vor citi în următoarea
ordine: numărul de găini, iar dupa aceea numărul de boabe de porumb. Exemplu: Date de
intrare 100 4050 Date de ieşire: Curcanul mai mult cu 10 boabe.
6. Mircea a mers cu sorcova şi cu pluguşorul, iar cu suma de x lei pe care a strâns-o vrea

cumpere 3 obiecte pe care să le folosească în tabără. Ştiind că are la dispoziţie 4 obiecte:
mănuşi 5 lei, fular 30 lei, căciulă 50 lei şi sanie 55 lei și afișați toate posibilităţile de a selecta
cele 3 obiecte pe care şi le poate cumpăra din banii strânşi şi precizați ce rest ar putea primi
de fiecare dată.
Restricţii şi precizări:
Pentru toate testele există cel puţin o combinaţie de 3 obiecte care se pot cumpăra.
Exemplu Pentru x=95 se va afişa:
manusi fular caciula rest 10 lei
manusi fular sanie rest 5 lei
7. Mama lui Matei face clătite de mai multe feluri. Ea le coace, le numără şi le umple
după următoarea regulă: dacă numărul de ordine al clătitei este format din exact două cifre de
paritate diferită, atunci clătita respectivă va fi umplută cu finetti. Dacă numărul de ordine al
clătitei este format din două cifre diferite, dar de aceeaşi paritate (sunt ambele fie pare, fie
impare), atunci clătita va fi umplută cu dulceaţă de afine. Dacă numărul de ordine al clătitei
este format din exact două cifre, dar nu îndeplineşte condiţiile de mai sus, atunci clătita va fi
umplută cu gem de prune, în orice altă situaţie clătita va fi umplută cu brânză dulce şi stafide.
Când Matei intră în bucătărie, mama tocmai a copt clătita cu numărul de ordine X, pe care o
va mânca Matei. Ce fel de clatită va mânca Matei?
Se citeşte de la tastatură numărul de ordine al clătitei curente, X format din maxim 3 cifre. Să
se afişeze pe ecran unul dintre mesajele: CLATITA CU FINETTI, sau CLATITA CU
DULCEATA DE AFINE, sau CLATITA CU GEM DE PRUNE, sau CLATITA CU
BRANZA DULCE SI STAFIDE, în funcție de umplutura pe care o va avea clătita.
Exemple:
∙ Dacă se citește numărul 25 se va afișa CLATITA CU FINETTI
∙ Dacă se citește numărul 75 se va afișa CLATITA CU DULCEATA DE AFINE
∙ Dacă se citește numărul 100 se va afișa CLATITA CU BRANZA DULCE SI STAFIDE.

8. Numim subnumăr, numărul obţinut prin eliminarea unei singure cifre dintr-un alt
număr, fără aschimba ordinea cifrelor. De exemplu, numărul 345 are subnumerele 34, 35, 45.
Cerinţă
Scrieţi un program care citeşte de la tastatură un număr n de trei cifre nenule şi afişează pe
ecran:
a. Subnumerele lui n separate prin câte un spaţiu.
b. Numărul de subnumere ale lui n care au ambele cifre impare
c. Subnumerele lui n în ordine descrescătoare separate prin cate un spatiu
Exemplu: Dacă se citeşte pentru n valoarea 725, se va afişa:
a. 72 75 25
b. 1
c. 75 72 25
9) În fiecare zi, când merge la școală, Ionel trebuie să urce n trepte (n≤100). Deoarece a
început sse plictisească el inventează un joc. În prima zi urcă câte a trepte iar la sfârșit
rămâne cu un număr detrepte <a pe care le urcă dintr-un singur pas. În a doua zi urcă câte b
trepte iar la sfârșit rămâne cu unnumăr de trepte <b pe care le urcă dintr-un singur pas. Într-
un final se hotărăște ca începând cu a treia zi să urce în varianta în care rămân mai puține
trepte pentru ultimul pas, iar dacă are mai multe variante o alege pe aceea în care face cei mai
puțini pași. Să se scrie un program care va verifica cele două posibilități și va afișa ce
variantă va alege ”Prima zi” sau ”A doua zi”.
Date de intrare
De la tastatură se citesc în ordine n, a, b numere naturale.
Date de ieșire
Se va afișa pe ecran mesajul corespunzător variantei alese: ”Prima zi” sau ”A doua zi”.
Restricții și precizări:
∙ 0<n≤100
∙ 0< a<n, 0< b<n, a≠b
∙ Numărul de trepte rămas poate fi 0.
Exemplu
Date de intrare 26 4 8 Date de ieșire A doua zi

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