Instructiuni de control

Implementarea algoritmilor > Instructiuni de control

Se citeşte un număr care reprezintă luna din an (1 pentru ianuarie, 2 pentru februarie etc.). Afişaţi numărul lunii precedente şi numărul lunii următoare. 1

#include <iostream> using namespace std; int main() {     int luna;     cout << „Introduceti numarul lunii: „;     cin >> luna;     switch(luna) {         case 1:             cout << „Luna precedenta: decembrie\n”;            ...

Citește Mai Mult

Implementarea algoritmilor > Instructiuni de control

Se citesc două numere de la tastatură, care reprezintă anul şi luna. Afişaţi numărul de zile din luna respectivă (pentru luna februarie se va ţine cont de an: dacă este bisect sau nu). 2

#include <iostream> using namespace std; int main() {     int an, luna;     cout << „Introduceti anul: „;     cin >> an;     cout << „Introduceti luna (1 – ianuarie, 2 – februarie, etc.): „;...

Citește Mai Mult

Implementarea algoritmilor > Instructiuni de control

Se citesc mai multe cifre de la tastatură până când suma lor depăşeşte valoarea 40. Afişaţi numărul de cifre introduse. Scrieţi câte o variantă de program pentru fiecare structură repetitivă implementată în limbajul C++. Precizaţi expresiile şi instrucțiunile folosite pentru cele trei acţiuni ale procesului de control. 3

while #include <iostream> using namespace std; int main() {     int cifra, suma = 0, nrCifre = 0;     while (suma < 40) {         cout << „Introduceti o cifra: „;         cin >> cifra;...

Citește Mai Mult

Implementarea algoritmilor > Instructiuni de control

Să se afişeze toate numerele de forma abba divizibile cu n (n se citeşte de la tastatură). Scrieţi câte o variantă de program pentru fiecare structură repetitivă implementată în limbajul C++. Precizaţi expresiile şi instrucţiunile folosite pentru cele trei acţiuni ale procesului de control. 6

Varianta cu structura while: #include <iostream> using namespace std; int main() {     int n, a = 0, b = 0;     cout << „Introduceti valoarea lui n: „;     cin >> n;     while...

Citește Mai Mult

Implementarea algoritmilor > Instructiuni de control

Să se calculeze produsul a*b a două numere întregi, fără să se folosească operatorul pentru înmulţire (se foloseşte adunarea repetată a lui a, de b ori, şi se ține cont de semnul numerelor). 7

Pentru a calcula produsul a * b fără operatorul de înmulțire, putem folosi adunarea repetată a lui a, de b ori. În plus, trebuie să ținem cont de semnul numerelor. Iată o posibilă implementare în...

Citește Mai Mult

Implementarea algoritmilor > Instructiuni de control

Să se calculeze câtul şi restul împărțirii a două numere întregi a şi b, fără să se folosească operatorii / şi % (se foloseşte scăderea repetată a lui b din a şi se ţine cont de semnul numerelor). 8

Pentru a calcula câtul și restul împărțirii a două numere întregi a și b fără a folosi operatorii / și %, putem folosi o buclă while pentru a scădea repetat b din a până când...

Citește Mai Mult

Implementarea algoritmilor > Instructiuni de control

Să se afişeze cuburile perfecte mai mici decât un număr n citit de la tastatură. 9

Pentru a afișa toate cuburile perfecte mai mici decât un număr n citit de la tastatură, putem utiliza o buclă while sau for și putem itera prin toate numerele între 1 și n/3 (deoarece cel...

Citește Mai Mult

Implementarea algoritmilor > Instructiuni de control

Să se afişeze numărul pătratelor perfecte mai mici decât un număr n citit de la tastatură. 10

Pentru a afla numărul pătratelor perfecte mai mici decât un număr n, putem parcurge toate numerele naturale de la 1 la n și pentru fiecare număr verificăm dacă este pătrat perfect. Dacă este, incrementăm un...

Citește Mai Mult

Implementarea algoritmilor > Instructiuni de control

Se citeşte un număr natural n şi apoi un şir de n numere întregi. Afişați suma pe care o obţineţi adunând primul divizor prim din fiecare număr citit. nu doresc sa folosim functii! 11

#include <iostream> bool is_prime(int num) {     if (num <= 1) {         return false;     }     for (int i = 2; i * i <= num; i++) {         if (num % i...

Citește Mai Mult

Implementarea algoritmilor > Instructiuni de control

Se citeşte un număr natural n şi apoi un şir de n numere întregi. Afişaţi primul număr care are cei mai mulți divizori. 12

Pentru a rezolva această problemă, putem parcurge șirul de numere și pentru fiecare număr vom calcula numărul de divizori și îl vom compara cu cel mai mare număr de divizori găsit până la momentul respectiv....

Citește Mai Mult

Implementarea algoritmilor > Instructiuni de control

Se citesc mai multe numere naturale până se citeşte un număr negativ. Afişaţi ultimul număr care are cei mai puţini divizori primi. 13

#include <iostream> #include <cmath> using namespace std; int main() {     int n;     int min_div = 999999;  // initializam cu un numar mare, sa ne asiguram ca il actualizam la primul numar citit    ...

Citește Mai Mult

Implementarea algoritmilor > Instructiuni de control

Se citeşte un număr natural nenul care poate avea maxim 9 cifre. Afişaţi cifrele distincte ale numărului. 14

#include <iostream> using namespace std; int main() {     unsigned long long n;     bool digits[10] = { false }; // initializam toate cifrele la false     cout << „Introduceti un numar natural de cel...

Citește Mai Mult

Implementarea algoritmilor > Instructiuni de control

Se citeşte un număr natural nenul care poate avea maxim 9 cifre. Determinaţi dacă numărul are cifrele ordonate strict crescător sau strict descrescător. 15

#include <iostream> int main() {     unsigned int n, prev_digit, digit;     bool ordered = true;     std::cout << „Introduceti un numar natural: „;     std::cin >> n;     // Initializam prev_digit cu valoarea primei...

Citește Mai Mult

Implementarea algoritmilor > Instructiuni de control

Să se determine toate dubletele de numere întregi (x,y) care îndeplinesc condiţia X2+y2 = r2, unde r se citeşte de la tastatură. 16

#include <iostream> #include <cmath> //pentru funcția sqrt using namespace std; int main() {     int r;     cout << „Introduceti r: „;     cin >> r;     for (int x = -r; x <= r;...

Citește Mai Mult

Implementarea algoritmilor > Instructiuni de control

Să se determine toate dubletele de numere întregi (x,y) care îndeplinesc condiția X2+y2 < r2, unde r se citeşte de la tastatură. 17

#include <iostream> #include <cmath> using namespace std; int main() {     int r;     cout << „Introduceti valoarea r: „;     cin >> r;     for(int x=-r; x<=r; x++)     {         for(int y=-r; y<=r;...

Citește Mai Mult

Implementarea algoritmilor > Instructiuni de control

Să se afişeze toate numerele de forma a2+b4, cu 1<=a<=10 şi 1<=b<=10. 18

#include <iostream> int main() {   for (int a = 1; a <= 10; ++a) {     for (int b = 1; b <= 10; ++b) {       int result = a * a +...

Citește Mai Mult

Implementarea algoritmilor > Instructiuni de control

Să se determine toate triunghiurile diferite care au lungimea laturilor numere naturale şi perimetrul p (p se citeşte de la tastatură). 19

#include <iostream> using namespace std; int main() {     int p;     cout << „Introduceti perimetrul: „;     cin >> p;     cout << „Triunghiurile cu perimetrul ” << p << ” sunt: ” <<...

Citește Mai Mult

Implementarea algoritmilor > Instructiuni de control

Se consideră numărul n=2a2+3b3, a şi b fiind două numere naturale distincte cu 1<=a<=10 şi 1<=b<=10. Să se afişeze toate numerele n generate astfel, şi, pentru fiecare număr n generat, descompunerea lui în sumă de trei pătrate. 20

#include <iostream> #include <cmath> using namespace std; int main() {     for(int a = 1; a <= 10; a++) {         for(int b = 1; b <= 10; b++) {             if(a != b) {...

Citește Mai Mult

Implementarea algoritmilor > Instructiuni de control

Sa se determine toate dubletele de numere intregi (x, y) care indeplinesc simultan conditiile: -a<x<a si -b<y<b; a si b se citesc de la tastatura. 21

#include <iostream> using namespace std; int main() {     int a, b;     cout << „Introduceti valorile pentru a si b: „;     cin >> a >> b;     for(int x = -a+1; x <...

Citește Mai Mult

Implementarea algoritmilor > Instructiuni de control

Să se determine toate tripletele de numere naturale (x,y,z) care îndeplineste condiția x2+y2+z2=n, unde n se citeşte de la tastatură. 22

#include <iostream> #include <cmath> using namespace std; int main() {     int n, x_max, y_max, z_max;     cout << „Introduceti valoarea lui n: „;     cin >> n;     cout << „Introduceti limita superioara pentru...

Citește Mai Mult

Implementarea algoritmilor > Instructiuni de control

Să se determine toate tripletele de numere naturale (x,y,z) care îndeplinese simultan condiţiile 1<=x<=y<=z<=n şi x2+y2=z2; n se citeşte de la tastatură. 23

#include <iostream> using namespace std; int main() {     int n;     cout << „Introduceti n: „;     cin >> n;     for (int x = 1; x <= n; x++) {         for (int...

Citește Mai Mult

Implementarea algoritmilor > Instructiuni de control

Să se determine toate cvadruplele de numere naturale (x,y,z,n) care îndeplinese simultan condiţiile: n>=3, 1<=x<=y<=z<=m şi xn+yn=zn unde m se citeşte de la tastatură. 24

#include <iostream> using namespace std; int main() {     int m;     cout << „Introduceti valoarea lui m: „;     cin >> m;     for (int n = 3; n <= m; n++) {        ...

Citește Mai Mult

Implementarea algoritmilor > Instructiuni de control

Să se scrie toate modurile în care poate fi descompus un număr natural nenul în sumă de cuburi a două numere naturale. Dacă nu există nici un mod de descompunere, să se scrie mesajul „Imposibil”. 25

#include <iostream> #include <cmath> using namespace std; int main() {    int n;    cout << „Introduceti un numar: „;    cin >> n;    bool existaSolutie = false;    for (int i = 1;...

Citește Mai Mult

Implementarea algoritmilor > Instructiuni de control

Să se găsească cel mai mic număr natural nenul care poate fi descompus în sumă de cuburi a două numere naturale. 26

#include <cmath> using namespace std; int main() {     int n;     bool found = false;     cout << „Introduceti valoarea lui n: „;     cin >> n;     for (int num = 1; num...

Citește Mai Mult

Implementarea algoritmilor > Instructiuni de control

Să se găsească cel mai mic număr natural nenul care poate fi descompus în sumă de cuburi a două numere naturale, în cel puţin două moduri distincte. 27

#include <iostream> #include <unordered_set> #include <cmath> using namespace std; int main() {     int n = 1;     unordered_set<int> cubes;     while (true) {         bool found = false;         for (int a = 1;...

Citește Mai Mult

Implementarea algoritmilor > Instructiuni de control

Scrieţi un program care să afişeze de câte ori apare o cifră nenulă c în scrierea tuturor numerelor naturale mai mici sau egale cu un număr dat n. Cifra c şi valoarea lui n se citesc de la tastatură. 28

#include <iostream> using namespace std; int main() {     int n, c;     cout << „Introduceti cifra c: „;     cin >> c;     cout << „Introduceti numarul n: „;     cin >> n;    ...

Citește Mai Mult