• Предмет: Информатика
  • Автор: grishaebat2016
  • Вопрос задан 1 год назад

(Паскаль) Исправить программный, доисторический код

Приложения:

lenyashastin: Здравствуй! Можешь простыми словами объяснить, что нужно сделать? Не очень вдуплил
dustedangel: исправить код
grishaebat2016: Исправить код, то есть найти ошибку и устранить.
lenyashastin: Понятно. Сейчас гляну
grishaebat2016: Как по другому еще сформулировать то?)

Ответы

Ответ дал: Аноним
1

Ответ:

1. Неверны тип данных(Char-символьный тип). Заменить на integer.

2. В цикле While не ставиться ; после do

Объяснение:

Ответ дал: lenyashastin
1

Ответ:

var a, b, c, x, y:integer;

begin

 read (a, b);

 x:=a;

 y:=b;

 while x*y>0 do

 if x>=y then x:=x mod y

 else y:=y mod x;

 c:=x+y;

 write (a*b div c);

end.

Пояснение:

1) char меняем на integer, т.к. значения переменных не символьные, а численные.

2) После команды do не ставится точка с запятой ";".


Аноним: Char это не строковый, а символьный тип данных(может хранить внутри себя лишь один символ из кодировочной таблицы). Строковый тип данных это string.
lenyashastin: Благодарю! Сейчас я лишь изучаю Паскаль, Ваша поправка очень кстати! Я просто переписал листинг и запустил программу, после чего исправил все появившиеся ошибки. У меня char и string ассоциируются с буквенными значениями, поэтому, перепутал.
Аноним: Всегда пожалуйста. Если пишите через Pascal.ABC, то там в меню помощь есть справка, в ней много всего интересного написано, в том числе и про типы данных.
Вас заинтересует