|

Se introduce de la tastatură un şir de numere naturale, până la citirea numărului 0. Să se afişeze toate tripletele de numere introduse consecutiv care au proprietatea că al doilea şi al treilea număr sunt egale cu câtul, respectiv cu restul dintre împărțirea primului număr la suma cifrelor sale. 15

#include <iostream> using namespace std; int main() {     int numar1, numar2, numar3;     cout << „Introduceti sirul de numere (se opreste la intalnirea cifrei 0):” << endl;     cin >> numar1;     while (numar1 != 0)     {         cin >> numar2;         if (numar2 == 0)         {             break;         }        …

|

Se citeşte un număr natural n. Să se afişeze toate numerele mai mici decât n care sunt egale cu suma pătratelor cifrelor lor. 16

#include <iostream> using namespace std; int main() {     int n;     cout << „Introduceti numarul n: „;     cin >> n;     for (int i = 1; i < n; i++)     {         int suma_patrate_cifre = 0;         int auxiliar = i;         while (auxiliar != 0)         {             int cifra =…

|

Se citesc de la tastatură un număr ke [0, 9] şi un şir de numere naturale, până la citirea numărului 0. Să se afişeze toate perechile de numere introduse consecutive care au proprietatea că au acelaşi număr de apariții ale cifrei k în pătratul lor. 17

#include <iostream> using namespace std; int main() {     int ke;     int numar_ant = -1;     int numar_crt;     cout << „Introduceti numarul ke: „;     cin >> ke;     cout << „Introduceti sirul de numere (se opreste la intalnirea cifrei 0):” << endl;     cin >> numar_crt;     while (numar_crt != 0)    …

|

Se introduce de la tastatură un şir de numere naturale până la citirea numărului 0. Să se afişeze toate perechile de numere introduse consecutiv care au proprietatea că suma cifrelor primului număr este pară, iar suma cifrelor celui de al doilea număr este impară. 18

#include <iostream> using namespace std; int main() {     int numar_ant = -1;     int numar_crt;     cout << „Introduceti sirul de numere (se opreste la intalnirea cifrei 0):” << endl;     cin >> numar_crt;     while (numar_crt != 0)     {         if (numar_ant != -1)         {             int suma_cifrelor_ant = 0;            …

|

Se citeşte un numär natural n. Să se afişeze numărul obţinut prin eliminarea cifrei din mijloc, dacă n are un număr impar de cifre, respectiv a celor două cifre din mijloc, dacă n are un număr par de cifre. 19

#include <iostream> using namespace std; int main() {     int n;     cin >> n;     int num_cifre = 0;     int temp = n;     // determina numarul de cifre al lui n     while (temp != 0)     {         temp /= 10;         num_cifre++;     }     // determina cifrele din mijloc…

|

Să se calculeze suma tuturor numerelor formate din cifre impare distincte. 20

Indicație: cel mai mic număr este 1, iar cel mai mare 97531. #include <iostream> using namespace std; int main() {     int suma = 0;     // parcurge toate numerele formate din cifre impare distincte     for (int n = 13579; n <= 97531; n += 2)     {         // verifica daca toate cifrele…

Să se scrie algoritmul prin care se afişează suma şi produsul divizorilor primi ai unui număr natural n care se introduce de la tastatură. 1

#include <iostream> using namespace std; int main() {     int n;     cout << „Introduceti un numar natural: „;     cin >> n;     int sum = 0, prod = 1;     int d = 2;     while (n > 1) {         if (n % d == 0) {             sum += d;            …

Să se scrie algoritmul prin care se determină toate numerele naturale perfecte mai mici decât un număr n introdus de la tastatură. Un număr natural se numeşte număr perfect dacă este egal cu suma divizorilor săi, din care se exclude divizorul egal cu numărul însuşi. Exemplu: 6=1+2+3; 28=1+2+4+7+14. 2

#include <iostream> using namespace std; int main() {     int n;     cin >> n;     for (int i = 1; i < n; i++) {         int sum = 0;         for (int j = 1; j < i; j++) {             if (i % j == 0) {                 sum += j;            …

Să se rezolve, în mulțimea numerelor naturale, ecuația x2-y2=k, unde k este un număr natural care se introduce de la tastatură. (Indicație: x2-y2=(x+y) x (x-y)==axb-k => x=(a+b)/2 şi y=(b-a)/2; pentru fiecare divizor a al lui k şi b-k/a se calculează x şi y, soluțiile x şi y obținute trebuind să fie numere întregi pozitive.) 3

#include <iostream> using namespace std; int main() {     int k;     cout << „Introduceti numarul k: „;     cin >> k;     for (int a = 1; a <= k; a++) {         if (k % a == 0) {             int b = k / a;             int x = (a + b)…

Se introduce de la tastatură un număr prim p şi se citesc pe rând de la tastatură mai multe numere naturale până când se citeşte numărul O. Să se determine numărul maxim n astfel încât pn să dividă produsul numerelor naturale introduse de la tastatură, fără să se calculeze produsul acestor numere. 4

#include <iostream> using namespace std; int main() {     int p, numar, max_exponent = 0;     // citim numarul prim p     cout << „Introduceti numarul prim p: „;     cin >> p;     // citim numere pana la intalnirea lui 0     while (true) {         cout << „Introduceti un numar natural (sau 0…