👤

Numerele au devenit mai prietenoase, cu toate acestea, unele numere au început să creeze grupuri mai speciale. Un prim grup de numere a decis să lase doar numere care sunt mai mici decât n și dacă au exact x divizori. Așadar au început selecția pentru admiterea în grupa specială.

Se dau două numere naturale, n și x. Să se afișeze toate numerele naturale mai mici sau egale decât n care au exact x divizori.

Date de intrare
Se citesc de la tastatură două numere naturale: n și x.

Date de ieșire
Să se afișeze toate numerele naturale mai mici sau egale decât n care au exact x divizori, separate prin spații.


Răspuns :

#include <iostream>

using namespace std;

//Functie care calculeaza numarul de divizori al valorii date ca parametru

int nrDiv(int n) {

//Caz special n=1

if (n == 1) return 1;

//Divizorii improprii

int contor = 2;

//Divizorii proprii

for (int d = 2; d <= n / 2; d++)

 if (n % d == 0) ++contor;

return contor;

}

int main() {

//Declarari

int n, x;

//Citire date intrare

cin >> n >> x;

//Afisare numere cu x divizori

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

 if (nrDiv(i) == x) cout << i << " ";

return 0;

}

Vezi imaginea ANDREI750238
Vă mulțumim că ați ales să vizitați site-ul nostru dedicat Informatică. Sperăm că informațiile disponibile v-au fost utile. Dacă aveți întrebări sau aveți nevoie de asistență suplimentară, vă rugăm să ne contactați. Revenirea dumneavoastră ne va bucura, iar pentru acces rapid, nu uitați să ne salvați la favorite!


En Trainingsy: Alte intrebari