Создайте программу на Python
Создать строку из 15 слов. Выбрать из нее все слова, содержащие букву -б-. Вывести слова и число данных слов. (Каждую строчку объяснить)
Ответы
Программа:
Python:
letter = 'б'
txt = 'бар пар паша маша даша бабушка быль былка быстро белка привет пока быт вор пайтон'
count = 0
for i in txt.split():
if set(letter) <= set(i):
count += 1
print(i)
print(count, 'слов.')
Объяснение:
В начале вводим символ "б" и саму строку из пятнадцати слов. После - регистрируем переменную count, в которой будет храниться количество слов. С помощью цикла проходима по изменённой строке: с помощью метода split() мы разделили слова на отдельные элементы в массиве (i проходит по каждому элементу массива). После идёт проверка - находится ли словарь с единственным элементов "б" в словаре с буквами слова (с помощью метода set() буквы слова, которые сейчас в переменной i, преобразуются в словарь). Если элемент "б" находится в словаре с текущим словом, то значение переменной count увеличивается на 1 и само слово выводится. После окончания цикла выводится общее кол-во слов.
Другая реализация и оформление решения.
while True: #Цикл продолжается до тех пор, пока пользователь не введет корректную строку из 15 слов.
string = input('Введите строку из 15 слов: ')
if string.count(' ') != 14: #Если в строке 14 пробелов, то в ней 15 слов, поэтому если это не так, то строка введена неверно.
print('В строке должно быть 15 слов, попробуйте снова!')
continue #Идет в начало цикла
break #Выходим из цикла
list_words =[] #Создаем пустой список слов
for word in string.split(): # Цикл по списку из слов строки string.
if 'в' in word: #Условие работает, если в слове есть буква "б".
list_words.append(word) #Добавляем слово с буквой "б" в список.
print('Вы ввели строку:', string) #Ввод изначальной строки.
print('Cлова содержащие букву "б":',', '.join(list_words)) #Выводим слова с буквой "б" через запятую.
print('Количество слов с буквой "б":', len(list_words)) #Выводим количество слов с буквой "б".