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

Ответы на вопрос

Отвечает Щербатюк Анна.
Замечание: можно здесь обойтись и без переменной translatedText в функции.
var translatedText:string;
function translate(s:string):string;
const
gl:set of char=
['А','Е','Ё','И','О','У','Ы','Э','Ю','Я','а','е','ё','и','о','у','ы','э','ю','я'];
zn:set of char=['.',',','-','!','?','"',':'];
var i:integer;
begin
for 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;
begin
translate('Удивительный факт, но текст на языке НЕРАЗБОРЧИВО оказывается довольно просто читать. Достаточно небольшой тренировки - и вы сможете это делать.');
writeln(translatedText);
end.
Результат:двтльнй фкт н ткст н зк НРЗБРЧВ кзвтс двльн прст чтть Дсттчн нбльшй трнрвк в смжт т длть
var translatedText:string;
function translate(s:string):string;
const
gl:set of char=
['А','Е','Ё','И','О','У','Ы','Э','Ю','Я','а','е','ё','и','о','у','ы','э','ю','я'];
zn:set of char=['.',',','-','!','?','"',':'];
var i:integer;
begin
for 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;
begin
translate('Удивительный факт, но текст на языке НЕРАЗБОРЧИВО оказывается довольно просто читать. Достаточно небольшой тренировки - и вы сможете это делать.');
writeln(translatedText);
end.
Результат:двтльнй фкт н ткст н зк НРЗБРЧВ кзвтс двльн прст чтть Дсттчн нбльшй трнрвк в смжт т длть


Топ вопросов за вчера в категории Информатика

Информатика 47

Информатика 33

Информатика 67

Информатика 18

Информатика 25

Информатика 563

Информатика 16
Последние заданные вопросы в категории Информатика
Предметы
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili