Найти сумму делителей данного натурального числа

0 голосов
42 просмотров

Найти сумму делителей данного натурального числа


Информатика (16 баллов) | 42 просмотров
Дано ответов: 2
0 голосов

#include
# define IN "input.txt"
# define OUT "output.txt"
unsigned long long sum(int n){
unsigned long long otv=0;
for (int i=1; i*i<=n; i++)<br>if (!(n%i)){
otv+=i;
if(i*i!=n)otv+=n/i;}
return otv;}
int main(void){
unsigned long long n,otv=0;
freopen(IN,"r",stdin);
freopen(OUT,"w",stdout);
scanf("%I64d",&n);
otv=sum(n);
printf("%I64d",otv);
return 0;}

(617 баллов)
0 голосов

var

 n,i,z:integer;

begin

 readln(n);

for i:=1 to n do if n mod i=0 then inc(z,i);

writeln(z);

end.

(989 баллов)