Составить блок-схему и написать программу на языке C для задачи: Найти сумму делителей натурального числа.
Подходит ли прикрепленная блок схема к этому заданию?
include int sum( int n) { int summa = 0; for( int i = 1; i < n; i++ ) if(n % i == 0 ) summa += i; return summa; } int main () {printf("vvedite N="); scanf("%d",&n); printf("Summa deliteley chisla %d = %d", n, sum(n)); }
изначально s будет равно 25, функция mod - остаток от деления
здесь у нас цикл с условием выполнения, если s будет делиться на 2 без остатка (т.е. остаток будет равен нулю)
в первом случае (когда s=25) у нас получается остаток 1, идем по циклу, получаем s=24 (т.к. s присваивается значение s-1, т.е. 25-1=24) и k=s/2=24/2=12
далее если идти по циклу с s=24, получаем остаток 0 (24/2=12 - целое число без остатка)
по условию цикла получаем k=24 (если остаток 0, то значение s присваиваем k)
В позиционной системе каждый разряд стоит на своей позиции. Например, в 10-ной системе, число 235 означает, что в нем 2 сотни, 3 десятка и 5 единиц. В 2-ной системе число 10010 означает, что в нем 1 число 2^4 = 16 и 1 число 2^1 = 2. Таким образом, эта запись означает число 16 + 1 = 18. В непозиционной системе разные единицы могут быть в разных местах, а их значение определяется взаимным расположением. Самая известная непозиционная система - это римские цифры. Запись IV означает 5 - 1 = 4, запись VI означает 5 + 1 = 6. Запись IX означает 10 - 1 = 9, запись XI означает 10 + 1 = 11. То есть значение значка I означает то +1, то -1, в зависимости от того, стоит он перед или после более старшего значка.
будет выведено значение k, равное 24
Объяснение:
изначально s будет равно 25, функция mod - остаток от деления
здесь у нас цикл с условием выполнения, если s будет делиться на 2 без остатка (т.е. остаток будет равен нулю)
в первом случае (когда s=25) у нас получается остаток 1, идем по циклу, получаем s=24 (т.к. s присваивается значение s-1, т.е. 25-1=24) и k=s/2=24/2=12
далее если идти по циклу с s=24, получаем остаток 0 (24/2=12 - целое число без остатка)
по условию цикла получаем k=24 (если остаток 0, то значение s присваиваем k)