После исполнения операторов S := -12; k := 90; S := s + 10; Met: k := k + 10; If k < 200...

0 голосов
54 просмотров

После исполнения операторов S := -12; k := 90; S := s + 10; Met: k := k + 10; If k < 200 then S := 50 else s := s + k; If k < 200 then goto met; переменная S получит значение


Информатика (303 баллов) | 54 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

Программу надо сформатировать и тогда её структура будет видна лучше.
А чтобы понять, как идет выполнение, в нужных точках ставим промежуточную выдачу - это называется "трассировкой".

var
  s, k: integer;
label
  met;
begin
  s:=-12;
  k:=90;
  Writeln('s=',s,', k=',k);
  s:=s+10;
  Writeln('s=',s);
met:
  Writeln('Метка met:');
  k:=k+10; Write('k=',k);
  if k<200 then s:=50 else s:=s+k;<br>  Writeln(', s=',s);
  if k<200 then goto met;<br>  Writeln('Результат: s=',s)
end.

Результат выполнения программы:
s=-12, k=90
s=-2
Метка met:
k=100, s=50
Метка met:
k=110, s=50
Метка met:
k=120, s=50
Метка met:
k=130, s=50
Метка met:
k=140, s=50
Метка met:
k=150, s=50
Метка met:
k=160, s=50
Метка met:
k=170, s=50
Метка met:
k=180, s=50
Метка met:
k=190, s=50
Метка met:
k=200, s=250
Результат: s=250

(142k баллов)
0

ничего не поняла

0

Что же - плохо! Если Вы даже такое не понимаете, не знаю даже, КАК нужно объяснять. Ваш ответ - 250.

0

решение понятно, я не была уверенна в ответе своем. а не поняла комментарии до решения

0

Что именно Вы не поняли?

0

вы имели в виду форматирование текста, записи были другие с нотками сарказма

0

Не понял, где Вы сарказм увидели? Не могли бы Вы все же просто скопировать сюда фрагмент текста, вызвавший непонимание?