# data[].attributes.body
Se citesc numere intregi pana la intalnirea valorii 0. Sa se calculeze suma lor.
Ex: 5 1 2 4 0  => se afiseaza s=5+1+2+4=12

#include<iostream.h>
int main()
{
int s,x;
s=0;
cin>>x;
while(x!=0)
{
s=s+x;
cin>>x;
}
cout<<s;
return 0;}

# data[].attributes.headline
17.05.2024  - Prelucrarea unui sir de valori cand nu se cunoaste numarul acestora

# data[].attributes.subject
17.05.2024  - Prelucrarea unui sir de valori cand nu se cunoaste numarul acestora

# data[].attributes.body
Enuntul problemei:
"se citesc de la tastatura numere naturale/intregi/reale pana la intalnirea valorii 0. Sa se calculeze si sa se afiseze......"

Ex: 12  45  9  16  23  0  => 5 numere
1 2 3 4 5 6 7 8 9 10 0  => 10 numere

cin>>x;
while(x!=0)
{
//prelucreaza x
cin>>x;
}

# data[].attributes.body
Calculul unei sume
s=0;
Intr-o structura repetitiva (for,while):  s=s+ceva

Calculul unui produs
p=1;
Intr-o repetitie: p=p*ceva;

Numararea unor valori
k=0;
Intr-o repetitie:  k=k+1;

# data[].attributes.headline
10.05.2024  -   Prelucrarea unui sir de valori cand se cunoaste numarul acestora

# data[].attributes.subject
10.05.2024  -   Prelucrarea unui sir de valori cand se cunoaste numarul acestora

# data[].attributes.body
Enuntul problemei:
"se citeste de la tastatura un numar n si apoi n numere naturale/intregi/reale. Sa se calculeze si sa se afiseze......"

Ex:  n=5  se citesc numerele 45  12   9    78  21 =>x
i=1 i=2 i=3 i=4 i=5

cin>>n;
for(i=1;i<=n;i++)
{   cin>>x;
//prelucreaza x
}

# data[].attributes.body
Sa se genereze primii n termeni ai sirului lui Fibonacci.

f1=1 f2=1 f3=f1+f2

n=10 =>1,1,2,3,5,8,13,21,34,55

#include<iostream>

int main()

{

unsigned int n,f1,f2,f3;

cin>>n;

f1=1;f2=1;

cout<<f1<<" "<<f2<<" ";

for(i=3;i<=n;i++)

{f3=f1+f2;

cout<<f3<<" ";

f1=f2;f2=f3;

}

return 0;

}

# data[].attributes.body
Șirurile de valori generate se obțin prin calcularea termenilor șirului, respectându-se o regulă.

Valoarea unui termen din șir se poate genera: în funcție de poziția sa în șir, cu ajutorul unor termeni care îl preced, cu ajutorul unei condiții date etc.

# data[].attributes.body
Șirul de valori reprezintă o serie de numere aleatorii sau care poate fi generat pe baza unor proprietăți.

Ex:

4,7,9,12,14,54,32 => sir de nr cu valorii aleatorii

2,4,6,8,10 =>sirul primelor 5 nr pare

# data[].attributes.headline
Problema - completati instructiunile lipsa:

# data[].attributes.subject
Problema - completati instructiunile lipsa:

# data[].attributes.body
Scrieti un program C++ care citeste de la tastatura 2 nr naturale a si b si calculeaza si afiseaza media lor geometrica.

#include<.......................> => iostream

#..................<math.h> => include

int ...........() => main

{

.................................. a,b; => unsigned int

................. mg; => float

cin>>.................; => a>>b

mg=....................; => sqrt(a*b)

cout<<.................; => mg

............................; => return 0

}

# data[].attributes.body
1)Variabila x este de tip real. Care dintre următoarele expresii C/C++ are valoarea 1 (este adevarata) dacă şi numai dacă numărul real memorat în variabila x aparţine intervalului (5,8]?

a. (x<8) && (x>=5)

b. (x<=8) || (x>5)

c. (x>8) || (x<=5)

d. (x<=8) && (x>5)

2) Care este rezultatul evaluării expresiei C/C++ alăturate?11*3/2*2/3 =33/2*2/3=16*2/3=32/3=10

a. 2

b. 10

c. 2.75

d. 11

3)Variabila x este de tip real. Care dintre următoarele expresii C/C++ are valoarea 1 dacă şi numai dacă numărul real memorat în variabila x nu aparţine intervalului (2,9]?

a. (x>2) && (x<=9)

b. (x<=2) && (x>9)

c. (x<=2) || (x>9)

d. (x<2) || (x>9)

4)Variabilele x şi y sunt de tip întreg, x memorând valoarea 8, iar y valoarea 6. Care dintre expresiile C/C++ de mai jos are valoarea 0 (este falsa)?

a. 3*x-4*y==0 => 3*8-4*6==0 => 24-24==0 => 0==0 Adev.

b. (x+y)/2 > x%y+1 => 14/2>2+1 => 7>3 => Adev

c. !(x/2+2==y) => !(4+2==6) => !(6==6) => !(A)=F

d. x-y+3!=0 => 8-6+3!=0 => 5!=0 Adev

5) Care dintre următoarele instrucţiuni C/C++ determină inserarea cifrei 7 în faţa ultimei cifre a unui număr natural, cu exact 3 cifre, memorat în variabila x?

x=512 => 5172

a. x=(x/10*10+7)*10+x%10;

x=(512/10*10+7)*10+512%10=(51*10+7)*10+2=517*10+2=5172

b. x=x/10+7+x%10;

x=512/10+7+512%10=51+7+2=60

c. x=(x%10*10+7)*10+x/10;

x=(2*10+7)*10+51=270+51=321

d. x=(x/10+7)*10+x%10;

x=(51+7)*10+2=580+2=582

# data[].attributes.body
1) Evaluati urmatoarele expresii:

floor(5.25)+sqrt(16)=5+4=9

ceil(7.18)+abs(-5)=8+5=13

pow(3,2)+ floor(5.25)=9+5=14

# data[].attributes.body
1) Se citeste un numar natural x de la tastatura. Sa se afiseze mesajul "da" daca este patrat perfect si mesajul "nu" daca nu este patrat perfect.

2) Se citeste un numar intreg x de la tastatura. Sa se afiseze mesajul "da" daca numarul apartine intervalului inchis [a,b] si mesajul "nu" daca nu apartine intervalui ( a si b se citesc de la tastatura).

if(x>=a && x<=b)

cout<<"da";

else cout<<"nu";

# data[].attributes.body
1) Se citeste un numar natural y de la tastatura. Sa se afiseze mesajul "numar par" daca este par si mesajul "numar impar" daca este impar.

# data[].attributes.body
1) Se citeste un numar intreg x de la tastatura. Sa se afiseze mesajul "da" daca este pozitiv si mesajul "nu" daca este negativ.

#include<iostream>

int main()

{

int x;

cin>>x;

if(x>=0)

cout<<"da";

else

cout<<"nu";

return 0;

}

# data[].attributes.body
1)

#include<iostream>

int main()

{

float r,h,v;

cin>>r>>h;

v=3.14*r*r*h;

cout<<v;

return 0;

}

2)

#include<iostream>

int main()

{

float r,h,v;

cin>>r>>h;

v=3.14*r*r*h/3;

cout<<v;

return 0;

}

# data[].attributes.body
Date de intrare - r,h

Date de iesire - V

Pentru pi => folosim valoarea 3.14

# data[].attributes.body
1) Se citeste un numar intreg x de la tastatura. Sa se afiseze mesajul "da" daca este pozitiv si mesajul "nu" daca este negativ.

# data[].attributes.body
Conditii logice:

x este par: x%2==0

x este impar:  x%2==1 sau  x%2!=0

x este pozitiv: x>=0

x este negativ: x<0

x apartine [a,b]: x>=a && x<=b

x nu apartine [a,b]: x<a || x>b

x este patrat perfect:  floor(sqrt(x))=sqrt(x)

# data[].attributes.body
abs(x)=calculeaza modulul lui x
sqrt(x)=calculeaza radical din x
pow(x,y)=calculeaza x la puterea y
floor(x)=calculeaza partea intreaga a lui x
ceil(x)=calculeaza cel mai apropiat intreg >=x

# data[].attributes.body
SINTAXA
if (conditie_logica)
instructiune1;
else
instructiune2;

if (conditie_logica)
instructiune1;
Instructiunea IF  se executa astfel:

se evalueaza conditia logica

daca este adevarata se executa instructiune1

daca este falsa se executa instructiune 2 (niciodata ambele)

OBS - Daca ramura altfel (else)  lipseste si conditia logica este falsa, nu se executa nimic!

# data[].attributes.body
1)

#include<iostream>

int main()

{

float d1,d2,A;

cin>>d1>>d2;

A=d1*d2/2;

cout<<A;

return 0;

}

2)

#include<iostream>

int main()

{

float a,P,A;

cin>>a;

P=4*a;

A=a*a;

cout<<P<<" "<<A;

return 0;

}

# data[].attributes.body
1) Sa se calculeze aria unui romb A, stiind diagonalele d1 si d2.

2) Sa se calculeze aria A si perimetrul P al unui patrat, stiind latura a.

# data[].attributes.body
Se citesc de la tastatura 2 numere reale a si b, reprezentand lungimea si latimea unui dreptunghi. Sa se calculeze si afiseze aria si perimetrul acestuia.

#include<iostream>

int main()

{

float a,b,P,A;

cin>>a>>b;

P=2*a+2*b;

A=a*b;

cout<<P<<" "<<A;

return 0;

}

# data[].attributes.body
Tipuri de date:

numere intregi - int

numere naturale - unsigned int

numere reale - float

Declararea unei variabile:

tip_date nume_variabila;

Ex:

int a;

unsigned int x,y;

float c;

Citirea datelor => cin>>nume_variabila;

Ex: cin>>a; cin>>x>>y>>z;

Afisarea datelor => cout<<nume_variabila;

Ex: cout<<a;

cout<<x<<y; //x=13 y=25 =>1325

cout<<x<<" "<<y; // 13 25

cout<<x<<endl<<y; // 13

25

Instructiunea de atribuire => nume_variabila=valoare/expresie;

Ex: a=5;

b=a+2*c;