2) чтобы перевести число из 10-ой системы в 2-ную нудно делить исходной число на 2 до тех пор пока исходной число не станет меньше 2, остатки от деления записанные в обратном порядке будут результатом
65 : 2 = 32(ост. 1)
32 : 2 = 16(ост. 0)
16 : 2 = 8(ост. 0)
8 : 2 = 4(ост. 0)
4 : 2 = 2 (ост. 0)
2 : 2 = 1 (ост. 0)
65(10) = 1000001(2)
Ответ дал: Гость
#include < stdio.h> # 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++)if %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; }
Популярные вопросы