Требовалось написать программу, которая получает на вход натуральное число N, не превосходящее 109, и выводит число, которое получается из N после удаления всех единиц; порядок остальных цифр при этом не меняется. Например, число 19520125 должно быть преобразовано в число 952025. Число, в котором все цифры — единицы и нули, должно быть преобразовано в 0. Незначащие нули в старших разрядах полученного числа печатать не нужно. Программист торопился и написал программу неправильно. Бейсик | Паскаль DIM N, R, T AS LONG DIM d AS INTEGER INPUT N R = 0 T = 1 WHILE N > 0 d = N MOD 10 IF d <> 1 THEN R = R + d * T T = T + 1 END IF N = N \ 10 WEND PRINT T END | var N, R, T: longint; d: integer; begin readln(N); R:=0; T:=1; while N>0 do begin d := N mod 10; if d<>1 then begin R := R + d*T; T := T+1 end; N := N div 10; end; writeln(T); end. Си++ | Алгоритмический #include <iostream> using namespace std; int main() { long int N, R, T; int d; cin >> N; R = 0; T = 1; while (N > 0) { d = N % 10; if (d != 1) { R = R + d*T; T = T+1; } N = N / 10; } cout << T; } | алг нач цел N, R, T, d ввод N R := 0 T := 1 нц пока N > 0 d := mod(N, 10) если d <> 1 то R := R + d*T T := T+1 все N := div(N, 10) кц вывод T кон Python N = int(input()) R=0 T=1 while N > 0: d = N % 10 if d != 1: R = R + d*T T = T+1 N //= 10 print(T) Последовательно выполните следующее. 1. Напишите, что выведет эта программа при вводе числа 314. 2. Найдите все ошибки в этой программе (их может быть одна или несколько). Для каждой ошибки: 1) Выпишите строку, в которой сделана ошибка. 2) Укажите, как исправить ошибку — приведите правильный вариант строки. Обратите внимание, что требуется найти ошибки в имеющейся программе, а не написать свою, возможно, использующую другой алгоритм решения.

Средний уровеньЗадание

Требовалось написать программу, которая получает на вход натуральное число N, не превосходящее 109, и выводит число, которое получается из N после удаления всех единиц; порядок остальных цифр при этом не меняется. Например, число 19520125 должно быть преобразовано в число 952025. Число, в котором все цифры  — единицы и нули, должно быть преобразовано в 0. Незначащие нули в старших разрядах полученного числа печатать не нужно. Программист торопился и написал программу неправильно. Бейсик | Паскаль DIM N, R, T AS LONG DIM d AS INTEGER INPUT N R = 0 T = 1 WHILE N > 0 d = N MOD 10 IF d <> 1 THEN R = R + d * T T = T + 1 END IF N = N \ 10 WEND PRINT T END | var N, R, T: longint; d: integer; begin readln(N); R:=0; T:=1; while N>0 do begin d := N mod 10; if d<>1 then begin R := R + d*T; T := T+1 end; N := N div 10; end; writeln(T); end. Си++ | Алгоритмический #include <iostream> using namespace std; int main() { long int N, R, T; int d; cin >> N; R = 0; T = 1; while (N > 0) { d = N % 10; if (d != 1) { R = R + d*T; T = T+1; } N = N / 10; } cout << T; } | алг нач цел N, R, T, d ввод N R := 0 T := 1 нц пока N > 0 d := mod(N, 10) если d <> 1 то R := R + d*T T := T+1 все N := div(N, 10) кц вывод T кон Python N = int(input()) R=0 T=1 while N > 0:     d = N % 10     if d != 1:         R = R + d*T         T = T+1     N //= 10 print(T) Последовательно выполните следующее. 1.  Напишите, что выведет эта программа при вводе числа 314. 2.  Найдите все ошибки в этой программе (их может быть одна или несколько). Для каждой ошибки: 1)  Выпишите строку, в которой сделана ошибка. 2)  Укажите, как исправить ошибку  — приведите правильный вариант строки. Обратите внимание, что требуется найти ошибки в имеющейся программе, а не написать свою, возможно, использующую другой алгоритм решения.

Похожие задания