Как создать программу сложения цифр n-значного числа? В общем, я вот что слепил: 9)
{
$numOne = $num % 10; // 9
$modOne = ($num - $numOne) / 10; // 167
if ($modOne > 9)
{
$numTwo = $modOne % 10; // 7
$modTwo = ($modOne - $numTwo % 10) / 10; // 16
if ($modTwo > 9)
{
$numThree = $modTwo % 10; // 6
$modThree = ($modTwo - $numThree % 10) / 10; // 1
$numPen = $numOne + $numTwo + $numThree + $modThree; // 23
if ($numPen > 9)
{
$numFour = $numPen % 10; // 3
$modFour = ($numPen - $numFour % 10) / 10; // 2
$numFin = $numFour + $modFour; // 5
}
}
}
}
echo $numFin;
?>
Наверное, лучше циклом эту задачу решить? Как? Можно ли сделать её универсальной?

21 Авг 2019 в 06:10
193 +1
0
Ответы
1

Да, использование цикла для этой задачи будет более универсальным и эффективным способом реализации программы сложения цифр n-значного числа. Вот пример кода с использованием цикла:

$num = 1679;
$total = 0;
while ($num > 0) {
$digit = $num % 10;
$total += $digit;
$num = (int)($num / 10);
}
echo $total;

Этот код будет работать корректно для чисел любой длины, так как он выполняет сложение цифр в числе путем последовательного извлечения каждой цифры с помощью операции взятия остатка от деления на 10 и деления на 10.

20 Апр 2024 в 13:22
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир