👤

Se citește un număr natural n (n<10 la puterea 6 ). Scrie un program C++ care afișează toți divizorii săi naturali în ordine crescătoare. Exemplu Se citește: 12 Se afișează: 1 2 3 4 6 12
(daca se poate prin while si o metoda cat mai usor de inteles pt ca sunt incepatoare)


Răspuns :

Răspuns:

#include <iostream>

using std::cout;

using std::endl;

using std::cin;

int main() {

int numarulCitit;

// vom citi numărul căruia vrem să-i afișăm divizorii

cout << "Introdu numarul (de ex. 12) >> "; cin >> numarulCitit;

/* eu zic că e mai ușor de vizualizat cu un for, același lucru se poate face și cu un while, ideea e că pornim cu i de la 1, la fiecare iterație a for-ului vom verifica dacă numărul nostru se împarte la i (dacă restul împărțirii numărului la i este 0), dacă se împarte înseamnă că i este un divizor al numărului nostru

 de ex restul împărțirii lui 12 la 1 este 0 deci 1 este divizor al lui 12, restul împărțirii lui 12 la 2 este 0 deci 2 este divizor al lui 12, restul împărțirii lui 12 la 5 nu este 0 deci 5 nu este un divizor al lui 12 ș.a.m.d.*/

for (int i = 1; i <= numarulCitit; ++i)

 if (numarulCitit % i == 0)

  cout << i << " ";

/*Mai jos ți-am pus și varianta cu while

int j = 1;

while (j <= numarulCitit) {

 if (numarulCitit % j == 0)

  cout << j << " ";

 ++j;

}*/

return 0;

}