Найти сумму цифр заданного натурального числа - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Найти сумму цифр заданного натурального числа На Си (функции и процедуры)

Решение задачи: «Найти сумму цифр заданного натурального числа»

textual
Листинг программы
  1. #include <stdio.h>
  2.  
  3. int foo(const int x)
  4. {
  5.     return x ? x % 10 + foo(x / 10) : 0;
  6. }
  7.  
  8. int main(void)
  9. {
  10.     printf("%d\n", foo(1232101));
  11.     return 0;
  12. }

Объяснение кода листинга программы

В данном коде на языке C представлена функция foo, которая принимает целочисленный аргумент x и возвращает сумму цифр этого числа. В функции используется принцип рекурсии, при этом условием для вызова рекурсивной функции является ненулевой аргумент x. Для получения суммы цифр числа применяется операция модуля 10 (x % 10), которая возвращает последнюю цифру числа, и затем рекурсивный вызов функции foo с аргументом x / 10, который равен оставшейся части числа, отбросив последнюю цифру. Если аргумент x равен нулю, то функция возвращает 0. В функции main создаётся целочисленная константа 1232101, значение которой передаётся в качестве аргумента в функцию foo. Результат работы функции foo выводится на экран с помощью функции printf. Результатом выполнения кода будет число 181, так как сумма цифр числа 1232101 равна 181.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 4 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы