Const n = 50; {Максимальное количество чисел в последовательности} t = -77;{Число-ограничитель, означающее конец ввода}
type ta = array[1..n] of integer;
var a: ta; {массив членов последовательности} az: ta; {массив, содержащий номера нулей в последовательности} kz: integer; {количество членов в массиве az} i, iz, p, n1, n2: integer; flag: boolean;
begin {Вводим числа и сразу же отслеживаем номера нулей в последовательности} Writeln('Вводите последовательность чисел, окончание ввода по -77'); i := 0; iz := 0; repeat Read(p); if p <> t then begin i := i + 1; a[i] := p; if p = 0 then begin iz := iz + 1; az[iz] := i; end end until p = t; kz := iz; Writeln('Вывод последовательностей'); {1. До первого встреченного нуля} for i := 1 to az[1] - 1 do Write(a[i], ' '); Writeln; {2. Остальные промежутки} for iz := 1 to kz do begin for i := az[iz] + 1 to az[iz + 1] - 1 do Write(a[i], ' '); Writeln; end end.
Начнем расшифровку с конца. 58 - столько в алфавите нет букв, поэтому последняя буква имеет номер 8 и это "Ж". Остается 121182018105. 05 - такого быть не может, следовательно номер буквы 5 и это "Д". Остается 12118201810. 10 - это код буквы "И". Остается 121182018, расшифровали окончание "ИДЖ". Может быть, это слово "картридж"? Далее, возможен код как 8, так и 18. 8 - это "Ж", 18 - это "Р". Окончание "ЖИДЖ" ничего не напоминает, окончание "РИДЖ" приближает решение к слову "картридж". Проверим первую букву. Если первая буква номер 1, то это "А", но если номер 12 - это "К". Попробуем, можно ли получить слово "картридж" с оставшихся кодов 11820. 1 - "А", 18 - "Р", 20 - "Т". Все получилось. ответ: КАРТРИДЖ
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota
Оформи подписку