Вопрос задан 12.01.2020 в 05:57. Предмет Информатика. Спрашивает Внуков Олег.

Требовалось написать программу, которая получает на входе натуральное число n и выводит число,

которое получается из n после удаления всех пятерок, порядок остальных цифр при этом не меняется. Программист торопился и написал программу неверно, найдите неверную строку и исправьте ее.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=5 then begin r:=r+d*t; t:=t+1 end; n:=n div 10; end;writeln (t);end.
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Вирстюк Саша.
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=5 then begin    1 ошибка: надо вместо d=5 написать d<>5
 r:=r+d*t;  
t:=t+1                                         2 ошибка: надо вместо t+1 написать t*10
end; 
n:=n div 10;
 end;
writeln (t);                                   3 ошибка: надо вместо t написать r
end.
0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Программа, предоставленная вами, предназначена для удаления цифры 5 из введенного натурального числа n. Однако в ней есть несколько ошибок. Давайте разберем их.

1. Вам необходимо вывести число после удаления всех пятерок, а не значение переменной t.

2. В условии `if+d=5` нужно изменить `+` на `=` для правильной проверки равенства.

3. Внутри блока условия, где происходит удаление цифры 5, нужно изменить `r:=r+d*t;` на `r:=r*10+d;` для корректного формирования нового числа без пятерок.

Исправленный вариант программы:

```pascal var n, r, d: longint;

begin readln(n); r := 0;

while n > 0 do begin d := n mod 10; if d <> 5 then r := r * 10 + d;

n := n div 10; end;

writeln(r); end. ```

Теперь программа должна правильно удалять все пятерки из введенного числа и выводить результат.

0 0

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос