Вопрос задан 22.06.2023 в 14:50. Предмет Информатика. Спрашивает Евсеева Кристина.

Не получается компилировать программу на паскале Выходит ошибка из-за else, пишет, что встречено

else, а ожидался оператор. Вот программа: var s:='2'+'8'*99+'2'; begin while (pos('81',s)<>0) or (pos('882',s)<>0) or (pos('8883',s)<>0) do begin var i81:=pos('81',s); var i882:=pos('882',s); var i8883:=pos('8883',s); if i81<>0 then begin delete(s,i81,2); insert('2',s,i81); else if i882<>0 then begin delete(s,i882,3); insert('3',s,i882); else delete(s,i8883,4); insert('1',s,i8883); end; end; end; end.
0 0
Перейти к ответам

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

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Merkulova Arina.

var s:='2'+'8'*99+'2';

begin

while (pos('81',s)<>0) or (pos('882',s)<>0) or (pos('8883',s)<>0) do

begin

var i81:=pos('81',s);

var i882:=pos('882',s);

var i8883:=pos('8883',s);

if i81<>0 then

begin

delete(s,i81,2);

insert('2',s,i81)

end

else

if i882<>0 then

 begin

  delete(s,i882,3);

  insert('3',s,i882);

 end

else

delete(s,i8883,4);

insert('1',s,i8883);

end;

end.

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Проблема в вашем коде связана с неправильным использованием оператора else. В Pascal, оператор else всегда должен иметь соответствующий оператор if. В вашем коде вы используете оператор else, но у вас нет соответствующего if, что вызывает ошибку.

Исправьте свой код, добавив соответствующие операторы if перед каждым else, как показано ниже:

pascal
var s:='2'+'8'*99+'2'; begin while (pos('81',s) <> 0) or (pos('882',s) <> 0) or (pos('8883',s) <> 0) do begin var i81 := pos('81',s); var i882 := pos('882',s); var i8883 := pos('8883',s); if i81 <> 0 then begin delete(s,i81,2); insert('2',s,i81); end else if i882 <> 0 then begin delete(s,i882,3); insert('3',s,i882); end else begin delete(s,i8883,4); insert('1',s,i8883); end; end; end.

Теперь у вас есть правильно структурированный блок if...else, и ваша программа должна компилироваться без ошибок.

0 0

Похожие вопросы

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

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

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