Сделал 10 задание
This commit is contained in:
parent
f82456281f
commit
fb1e413400
96
lesson.10.py
Normal file
96
lesson.10.py
Normal file
|
|
@ -0,0 +1,96 @@
|
||||||
|
''' ****** Задание 10 из 20 *********
|
||||||
|
* Для международных документов русский текст преобразуется с использованием латинского алфавита.
|
||||||
|
ГОСТ Р 52535.1-2006 задаёт правила транслитерации идентификационных карт.
|
||||||
|
Ниже приведена таблица замен:
|
||||||
|
|
||||||
|
А — A
|
||||||
|
Б — B
|
||||||
|
В — V
|
||||||
|
Г — G
|
||||||
|
Д — D
|
||||||
|
Е — E
|
||||||
|
Ё — E
|
||||||
|
Ж — ZH
|
||||||
|
З — Z
|
||||||
|
И — I
|
||||||
|
Й — I
|
||||||
|
К — K
|
||||||
|
Л — L
|
||||||
|
М — M
|
||||||
|
Н — N
|
||||||
|
О — O
|
||||||
|
П — P
|
||||||
|
Р — R
|
||||||
|
С — S
|
||||||
|
Т — T
|
||||||
|
У — U
|
||||||
|
Ф — F
|
||||||
|
Х — KH
|
||||||
|
Ц — TC
|
||||||
|
Ч — CH
|
||||||
|
Ш — SH
|
||||||
|
Щ — SHCH
|
||||||
|
Ы — Y
|
||||||
|
Э — E
|
||||||
|
Ю — IU
|
||||||
|
Я — IA
|
||||||
|
Давайте транслитерируем русский текст.
|
||||||
|
|
||||||
|
Букву «ё» транслитерируйте как «e», «й» как «и», а «ъ» и «ь» (и их заглавные версии «Ъ» и «Ь») должны исчезнуть из текста. Строчные буквы заменяются на строчные, заглавные заменяются на заглавные. Если заглавная буква превращается при транслитерации в несколько букв, то заглавной должна остаться только первая из них (например, «Ц» → «Tc»). Все некириллические символы должны остаться на месте.
|
||||||
|
|
||||||
|
Формат ввода
|
||||||
|
В единственной строке задан русский текст. Текст может состоять из любых символов. Вам необходимо транслитерировать только русские буквы, а остальные оставить на месте. Гарантируется, что нет слов, состоящих только из букв «ъ» и «ь».
|
||||||
|
|
||||||
|
Формат вывода
|
||||||
|
Выведите одну строку — транслитерированный текст.
|
||||||
|
|
||||||
|
|
||||||
|
Подсказка
|
||||||
|
Данная задача не сильно отличается от G. Азбука Морзе.
|
||||||
|
|
||||||
|
Однако обратите внимание на работу с заглавными буквами (наглядно отражено во втором примере).
|
||||||
|
|
||||||
|
Пример 1
|
||||||
|
Ввод
|
||||||
|
|
||||||
|
Привет, мир!
|
||||||
|
Вывод
|
||||||
|
|
||||||
|
Privet, mir!
|
||||||
|
'''
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
TRANSLITERATION_MAP = {
|
||||||
|
'А': 'A', 'Б': 'B', 'В': 'V',
|
||||||
|
'Г': 'G', 'Д': 'D', 'Е': 'E',
|
||||||
|
'Ё': 'E', 'Ж': 'ZH', 'З': 'Z',
|
||||||
|
'И': 'I', 'Й': 'I', 'К': 'K',
|
||||||
|
'Л': 'L', 'М': 'M', 'Н': 'N',
|
||||||
|
'О': 'O', 'П': 'P', 'Р': 'R',
|
||||||
|
'С': 'S', 'Т': 'T', 'У': 'U',
|
||||||
|
'Ф': 'F', 'Х': 'KH', 'Ц': 'TC',
|
||||||
|
'Ч': 'CH', 'Ш': 'SH', 'Щ': 'SHCH',
|
||||||
|
'Ы': 'Y', 'Э': 'E', 'Ю': 'IU',
|
||||||
|
'Я': 'IA', 'Ь': '', 'Ъ': '',
|
||||||
|
}
|
||||||
|
|
||||||
|
input_text = input()
|
||||||
|
|
||||||
|
for char in input_text:
|
||||||
|
upper_char = char.upper()
|
||||||
|
|
||||||
|
if upper_char in TRANSLITERATION_MAP:
|
||||||
|
transliterated = TRANSLITERATION_MAP[upper_char]
|
||||||
|
|
||||||
|
if char.isupper():
|
||||||
|
print(transliterated.capitalize(), end='')
|
||||||
|
else:
|
||||||
|
print(transliterated.lower(), end='')
|
||||||
|
else:
|
||||||
|
print(char, end='')
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Loading…
Reference in a new issue