Вариант № EGE_INF_1800
Добавлен 29 августа 2017 г. в 0:12. Изменён 22 октября 2017 г. в 1:02.Скачать PDFЗадание
Требовалось написать программу, которая по входному натуральному числу \(n\), не превосходящему \(10^4\), определяла и печатала сумму цифр этого числа. Приведённая ниже программа содержит ошибки.
-
Копировать
var n, j, k : integer; begin read(n); j := 10; k := 0; while j < n do begin k := k + n div j mod 10; j := j * 10 end; write(k) end.
-
Копировать
#include <iostream> int main(){ int n, j, k; std::cin >> n; j = 10; k = 0; while(j < n){ k += n / j % 10; j *= 10; } std::cout << k; return 0; }
-
Копировать
DIM N, J, K AS INTEGER INPUT N J = 10 K = 0 WHILE J < N K = K + N \ J MOD 10 J = J * 10 WEND PRINT K
-
Копировать
n = int(input()) j = 10 k = 0 while j < n : k += n // j % 10 j *= 10 print(k)
Последовательно выполните следующее.
1) Напишите, что выведет эта программа при вводе числа 123.
2) Укажите наименьшее значение входной переменной \(n\), при котором, не смотря на ошибки, программа выведет верный ответ.
3) Найдите в программе все ошибки (их может быть одна или несколько). Для каждой ошибки выпишите строку, в которой она допущена, и приведите эту же строку в исправленном виде.
Достаточно указать ошибки и способ их исправления для одного языка программирования. Обратите внимание: необходимо исправить приведённую программу, а не написать свою. Требуется заменить только ошибочные строки, но нельзя удалять строки или добавлять новые. За исправления, внесённые в строки, не содержащие ошибок, баллы будут снижаться.