fbpx

Problema #18 – Numarul de divizori – Rezolvari PBInfo

de Mihai-Alexandru

Se da un număr natural n.

Cerinţa

Calculaţi numărul de divizori ai lui n.

Date de intrare

Fişierul de intrare nrdiv.in conţine pe prima linie numărul n

Date de ieşire

Fişierul de ieşire nrdiv.out va conţine pe prima linie numărul rez, reprezentând numărul de divizori ai lui n.

Restricţii şi precizări

  • 0 < n <= 100000

 

Exemplu

nrdiv.in

6

nrdiv.out

4

Explicații:

Pentru numărul 6 avem divizorii 1,2,3,6 deci numărul acestora este egal cu 4.

#include <fstream>
using namespace std;
ifstream fin("nrdiv.in");
ofstream fout("nrdiv.out");
int main()
{
    int n,cate=0;
    fin>>n;
    for(int i=1;i*i<=n;i++)
    {
        if(n%i==0) cate=cate+2;
        if(i*i==n) cate--;
    }
    fout<<cate;
    return 0;
}
Comentarii

S-ar putea sa iti placa