Type падеж = (им,род,дат,вин,твор,предл); слово = (степь,боль,тетрадь,дверь); var w: слово; р: падеж; напечатать слово w в падеже р и единственном числе (например, при w = степь и р = твор надо напечатать слово степью). язык программирования паскаль, .

sosochek47 sosochek47    1   09.08.2019 11:10    1

Ответы
Amarov Amarov  04.10.2020 07:10
Очень яркая иллюстрация того, как НЕ НАДО работать с перечислимым типом данных

type
  падеж=(им,род,дат,вин,твор,предл);
  слово=(степь,боль,тетрадь,дверь);
var
  w:слово;
  p:падеж;
  s:string;
  n:0..5;
begin
  Writeln('Введите номер слова');
  Write('0-степь,1-боль,2-тетрадь,3-дверь: '); Read(n);
  case n of
  0:w:=степь;
  1:w:=боль;
  2:w:=тетрадь;
  3:w:=дверь
  end;
  s:=w.ToString;
  Writeln('Введите номер падежа');
  Write('0-им, 1-род, 2-дат, 3-вин, 4-твор, 5-предл: '); Read(n);
  case n of
  0:p:=им;
  1:p:=род;
  2:p:=дат;
  3:p:=вин;
  4:p:=твор;
  5:p:=предл
  end;
  case p of
  им,вин: Writeln(s);
  род,дат,предл: Writeln(Copy(s,1,Length(s)-1)+'и');
  твор:Writeln(s+'ю')
  end
end.

Пример
Введите номер слова
0-степь,1-боль,2-тетрадь,3-дверь: 2
Введите номер падежа
0-им, 1-род, 2-дат, 3-вин, 4-твор, 5-предл: 4
тетрадью
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика