8.02 Подсчет количества слов/чисел
Ошибка.
Попробуйте повторить позже
Сколько слов длины 5, начинающихся на гласную и заканчивающихся на согласную, можно составить из букв Я,К,О,Р,Ь? Каждая из допустимых букв может встречаться в слове любое количество раз или не встречаться совсем.
Примечание: Ь не считать ни гласным ни согласным.
Гласных букв две - Я и О, согласных букв тоже две - К и Р, Ь не является ни гласной ни согласной. Тогда для первого места в слове есть два варианта выбора буквы, для последнего два варианта, в то время как на оставшихся трех местах посередине может находиться любая буква из пятибуквенного набора Я,К,О,Р,Ь.
Тогда общее количество слов .
Решение программой (циклы):
Составим программу для перебора всех возможных 5-буквенных слов из букв Я, К, О, Р, Ь. Для этого организуем 5
вложенных циклов, по одному на каждую букву. Каждый цикл перебирает буквы из строки "ЯКОРЬ формируя все
возможные комбинации.
После формирования каждого слова проверяем условие: первая буква должна быть гласной (Я или О), а последняя –
согласной (К или Р). Если слово удовлетворяет условию, добавляем его в множество. После завершения циклов
выводим длину множества, получая количество допустимых слов.
ans = set() # множество для подходящих слов alf = ’ЯКОРЬ’ # доступные буквы # Перебор всех возможных 5-буквенных комбинаций for x1 in alf: for x2 in alf: for x3 in alf: for x4 in alf: for x5 in alf: # составляем слово w = x1 + x2 + x3 + x4 + x5 # проверяем условие: первая буква гласная, последняя согласная if w[0] in ’ЯО’ and w[-1] in ’КР’: ans.add(w) # добавляем слово в ответ print(len(ans)) # выводим количество уникальных слов
Решение программой (itertools):
Для перебора всех возможных комбинаций символов используем функцию product из модуля itertools. Она формирует
все последовательности указанной длины, позволяя включать буквы более одного раза или не включать вовсе. Условие,
что первая буква – гласная, а последняя – согласная, записывается в программе аналогично решению с помощью
циклов.
from itertools import product ans = set() alf = ’ЯКОРЬ’ # Генерируем все возможные 5-буквенные комбинации из букв for w in product(alf, repeat=5): w = ’’.join(w) # преобразуем кортеж в строку # проверяем условие: первая буква гласная, последняя согласная if w[0] in ’ЯО’ and w[-1] in ’КР’: ans.add(w) print(len(ans)) # выводим количество уникальных слов
Специальные программы

Программа
лояльности v2.0
Приглашай друзей в Школково и получай вознаграждение до 10%!

Крути рулетку
и выигрывай призы!
Крути рулетку и покупай курсы со скидкой, которая привязывается к вашему аккаунту.

Бесплатное онлайн-обучение
Для школьников из приграничных территорий России, проживающих в ДНР, ЛНР, Херсонской, Запорожской, Белгородской, Курской, Брянской областях и Крыму.

Налоговые вычеты
Узнай, как получить налоговый вычет при оплате обучения в «Школково».

Специальное предложение
для учителей
Бесплатный доступ к любому курсу подготовки к ЕГЭ, ОГЭ и олимпиадам от «Школково». Мы с вами делаем общее и важное дело, а потому для нас очень значимо быть чем-то полезными для учителей по всей России!

Вернём деньги за курс
за твою сотку на ЕГЭ
Сдать экзамен на сотку и получить обратно деньги за подготовку теперь вполне реально!