Дано натуральное число n, не превосходящее 108. необходимо найти и вывести число, которое получится при записи n справа налево и удалении всех девяток. ведущие нули выводить не надо. если в числе n нет цифр кроме девяток и нулей, необходимо вывести 0. например, при вводе числа 1984 нужно вывести 481, а при вводе 2009 нужно вывести 2. для решения этой ученик написал такую программу: var n, m: longint; d: integer; begin read(n); m : = 0; while n> 1 do begin d : = n mod 10; if d < 9 then begin m : = m + d; end; n : = n div 10; end; write(m); end. последовательно выполните следующее. 1. напишите, что выведет эта программа при вводе числа 1984. 2. пример числа, при вводе которого программа выдаст верный ответ. 3. найдите в программе все ошибки (их может быть одна или несколько). для каждой ошибки выпишите строку, в которой она допущена, и эту же строку в исправленном виде. обратите внимание: вам нужно исправить программу, а не написать свою. вы можете только заменять ошибочные строки, но не можете удалять строки или добавлять новые. заменять следует только ошибочные строки: за исправления, внесённые в строки, не содержащие ошибок, будут снижаться.

vovamandrik060p09ui1 vovamandrik060p09ui1    2   28.06.2019 06:10    3

Ответы
samwwww samwwww  22.07.2020 14:54
1 12
2 2,3,4,9
3
var
    n, m: longint;
    d: integer;

begin
    read(n);
    m := 0;
    while n > 0 do {1 на 0}
    begin
        d := n mod 10;
        if d < 9 then begin
            m := 10 * m + d; {домножили на 10}
        end;
        n := n div 10;
    end;
    write(m);
end.
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика