• В письменности языка НРЗБРЧВ отсутствуют гласные буквы и знаки препинания, в остальном язык ничем не отличается от русского языка. Чтобы из слова русского языка получить слово языка НРЗБРЧВ, достаточно выкинуть из слова все гласные. Чтобы перевести предложение, нужно перевести каждое слово и выкинуть знаки препинания. Регистр букв следует оставить неизменным. Напишите функцию translate(text), которая переводит текст с русского языка на НРЗБРЧВ. Свой результат функция должна записать во внешнюю переменную translatedText. Формат ввода translatedText = None translate("Удивительный факт, но текст на языке НЕРАЗБОРЧИВО оказывается довольно просто читать. Достаточно небольшой тренировки - и вы сможете это делать.") Формат вывода translatedText == "двтльнй фкт н ткст н зк НРЗБРЧВ кзвтс двльн прст чтть Дсттчн нбльшй трнрвк в смжт т длть" Примечания Слова в НРЗБРЧВ разделяются ровно одним пробелом. Обратите внимание, что при переводе некоторые короткие слова “съедаются” полностью. Следите за тем, чтобы в этом случае не появлялись лишние пробелы.

Ответы 1

  • Замечание: можно здесь обойтись и без переменной translatedText в функции.var translatedText:string;function translate(s:string):string;constgl:set of char=['А','Е','Ё','И','О','У','Ы','Э','Ю','Я','а','е','ё','и','о','у','ы','э','ю','я'];zn:set of char=['.',',','-','!','?','"',':'];var i:integer;beginfor i:=length(s) downto 1 do if s[i] in gl+zn then delete(s,i,1);while pos('  ',s)>0 do delete(s,pos('  ',s),1);translate:=s;translatedText:=s;end;begintranslate('Удивительный факт, но текст на языке НЕРАЗБОРЧИВО оказывается довольно просто читать. Достаточно небольшой тренировки - и вы сможете это делать.');writeln(translatedText);end.Результат:двтльнй фкт н ткст н зк НРЗБРЧВ кзвтс двльн прст чтть Дсттчн нбльшй трнрвк в смжт т длть
    • Автор:

      merlejvmy
    • 6 лет назад
    • 0
  • Добавить свой ответ

Еще вопросы

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years