Differences between revisions 2 and 3
Revision 2 as of 2020-11-28 14:02:46
Size: 3692
Editor: FrBrGeorge
Comment:
Revision 3 as of 2020-11-28 14:19:11
Size: 3695
Editor: FrBrGeorge
Comment:
Deletions are marked like this. Additions are marked like this.
Line 12: Line 12:
 {{{
{{{
Line 14: Line 15:
4a624a644ad8536ebf804a65536e6c536e764a64536e6c88899b8e808080804afe4afd4afe4ad8536e719a80824ab1536e714a64536e764afe4a65536e6c4afe536ea1536f688c80536fb0536df04a6481829b8e536f64536fd8536ebf9b8e  4a624a644ad8536ebf804a65536e6c536e764a64536e6c88899b8e808080804afe4afd4afe4ad8536e719a80824ab1536e714a64536e764afe4a65536e6c4afe536ea1536f688c80536fb0536df04a6481829b8e536f64536fd8536ebf9b8e
Line 16: Line 17:
Line 19: Line 21:
 {{{
{{{

Текст процедуры на языке Рапира в кодировке koi8-r был несколько (не более четырёх раз) раз перекодирован, причём перекодировщику сообщали совершенно произвольную исходную и целевую кодировку (например, из CP866 в latin1). Восстановить предполагаемый текст процедуры.

  • В первой строке ввода — возможные кодировки, не более 8 (через пробел)
  • Во второй строке ввода — последовательность шестнадцатеричных цифр — это байты закодированной процедуры
  • На выходе — исходный текст процедуры.
  • Для упрощения будет считать, что в программе на языке Рапира могут присутствовать только
    • Заглавные русские и латинские буквы (строчных нет)

    • Цифры и символы из набора «()[]+-*/%;.,>=<»

    • Пробелы, табуляции и переводы строки
  • Известно, что неоднозначная перекодировка (в которой более одного входного символа соответствует одному выходному) не производилась

utf8 koi8-r CP1251 CP866 ISO8859-1 ISO8859-5 mac-arabic cp1140
4a624a644ad8536ebf804a65536e6c536e764a64536e6c88899b8e808080804afe4afd4afe4ad8536e719a80824ab1536e714a64536e764afe4a65536e6c4afe536ea1536f688c80536fb0536df04a6481829b8e536f64536fd8536ebf9b8e
  • Подсказка: на входе процедура на языке Рапира, и только она. Не забудьте о возможных переводах строки в конце неё (то ли они есть, то ли нет).

  • Подсказка 2 (мелкая): у типа bytes есть удобный метод…

  • Спойлер. Я решал задачу так:

ПРОЦ СТАРТ();
    ВЫВОД: "ЗДРАВСТВУЙ, МИР!";
КНЦ;


CategoryHomework

LecturesCMC/PythonIntro2020/Homework_TotalBnopnya (last edited 2020-11-30 19:14:08 by FrBrGeorge)