Найти сумму делителей числа - C (СИ)
Формулировка задачи:
Найти сумму делителей числа.
Ввод с консоли. Вводится одно целое число.
Ограничения: 1≤a≤20000 время работы программы не более 2 с.
Вывод в консоль числа, являющегося суммой делителей исходного числа.
спасибо
Решение задачи: «Найти сумму делителей числа»
textual
Листинг программы
int sum_of_divisors(int n)
{
int sum = 0;
for( int i = 1; i <= n; ++i ) {
if( n % i == 0 ) {
sum += i;
}
}
return sum;
}
Объяснение кода листинга программы
В данном коде представлена функция с именем sum_of_divisors, которая принимает целочисленный аргумент n и возвращает сумму всех делителей этого числа.
- Создаётся переменная sum типа int со значением 0, которая будет использоваться для подсчёта суммы делителей.
- В цикле for, который начинается с i=1 и выполняется до i<=n, проверяется каждый делитель i.
- С помощью оператора % (остаток от деления) проверяется, является ли i делителем n.
- Если i является делителем n, то к переменной sum прибавляется значение i.
- По завершении цикла, функция возвращает значение переменной sum.