2424 EasyRow
Cerința
Se consideră următorul șir de numere naturale: 1 3 5 8 10 14 16..., în care termenul de pe poziția i (i > 1) este egal cu cel precedent plus numărul de divizori ai lui i. Afișați al n-lea termen.
Date de intrare
Programul citește de la tastatură numărul n.
Date de ieșire
Programul va afișa pe ecran numărul x, reprezentând al n-lea termen din șir.
Restricții și precizări
1 ≤ n ≤ 100.000
Exemplu:
Intrare
5
Ieșire
10
pls rapid
Răspunsuri la întrebare
Răspuns de
2
#include <iostream>
using namespace std;
int main()
{
int n, p=0;
cin >> n;
for(int i=1;i<=n;i++)
{
int no_div=0, j=1;
for(j=1;j*j<i;j++)
if(i%j==0)
no_div+=2;
if(j*j==i)
++no_div;
p+=no_div;
}
cout << p;
return 0;
}
Răspuns de
0
#include <iostream>
using namespace std;
int nrdiv(int num)
{
int nr = 0, j = 1;
for(j = 1; j * j < num; ++j)
if(num % j == 0)
nr += 2;
if(j * j == num)
++nr;
return nr;
}
int main()
{
int n, indtermen, xn = 1;
cin >> n;
for (indtermen = 2; indtermen <= n; ++indtermen)
xn = xn + nrdiv(indtermen);
cout << xn;
return 0;
}
Alte întrebări interesante
Matematică,
8 ani în urmă
Limba română,
8 ani în urmă
Matematică,
8 ani în urmă
Engleza,
9 ani în urmă
Matematică,
9 ani în urmă
Limba română,
9 ani în urmă
Matematică,
9 ani în urmă