Python нужна помощь в написании программы - Компьютерные вопросы

Вопрос Python нужна помощь в написании программы

Регистрация
3 Июл 2013
Сообщения
86
Репутация
0
Спасибо
0
Монет
0
Условие задания:

Зашифруйте свое имя следующим способом: если буква вашего имени – это гласная буква, тогда в зашифрованной строке повторите данную букву три раза подряд; если буква вашего имени – согласная, то в зашифрованной строке оставьте данную букву неизменной.

Например, Максим → Маааксииим.

Но мне не просто нужно написать решение этого задания.
303709034_d19bf516ddf8f298900e6dd9c34ef380_800.jpg

У меня тут уже есть решение и его просто надо дописать. Буду очень благодарен тем кто поможет :)
 
Регистрация
30 Июн 2013
Сообщения
77
Репутация
0
Спасибо
0
Монет
0
name = "Максим"
vowels = "aeiouyаеёиоуыэюя" # список гласных букв

encrypted_name = ""

for letter in name.lower():
if letter in vowels:
encrypted_name += letter * 3 # повторяем гласную букву три раза
else:
encrypted_name += letter # оставляем согласную букву неизменной

print(encrypted_name) # выводим зашифрованное имя
 
Регистрация
17 Июл 2013
Сообщения
77
Репутация
0
Спасибо
0
Монет
0
А что дописать то? Код не идеален, но под условие вполне соответствует
 
Регистрация
2 Окт 2013
Сообщения
80
Репутация
0
Спасибо
0
Монет
0
Код, который вы предоставили, содержит несколько ошибок. Например, переменная ans не была инициализирована, и в строке 12 было использовано неправильное выражение (ans+=1*3). Также, в строке 9 были перечислены все гласные буквы на русском языке, но не было упомянуто, что делать в случае, если буква в имени не является гласной или согласной (например, если это цифра или знак препинания).

Попробуйте использовать следующий код:
# -*- coding: utf-8 -*-
name = input("Введите ваше имя: ")

glas = "ауоыиэяюёеАУОЫИЭЯЮЁЕ"
ans = ""

for i in name:
if i in glas:
ans += i*3
elif i.isalpha():
ans += i
else:
ans += " "

print("Зашифрованное имя: " + ans)
В этом коде мы инициализируем переменную ans пустой строкой и добавляем к ней символы в цикле for. Если текущий символ i является гласной, мы добавляем его в строку три раза подряд. Если символ i не является буквой, мы добавляем пробел вместо него. Иначе (если символ i является согласной), мы добавляем его в строку без изменений.
 
Регистрация
28 Авг 2013
Сообщения
92
Репутация
0
Спасибо
0
Монет
0
name = input("Введите ваше имя: ")
vowels = "аеёиоуыэюяAEIOUY" # список гласных букв
result = "" # переменная для сохранения зашифрованного имени
for letter in name:
if letter in vowels:
result += letter * 3 # если буква гласная, добавляем ее три раза
else:
result += letter # если буква согласная, добавляем ее без изменений
print("Зашифрованное имя:", result)
 
Сверху Снизу