комбинации пар букв из слов ввода

import random

def split_into_pairs(words):
    # Убираем пробелы и объединяем слова в одну строку
    text = ''.join(words.split())
    pairs = []

    # Разбиваем на пары
    for i in range(0, len(text), 2):
        if i + 1 < len(text):
            pairs.append(text[i:i+2])
        else:
            pairs.append(text[i] + 'о')  # Добавляем символ подчеркивания, если нечетное количество букв

    return pairs

def generate_random_combinations(pairs, num_lines, pairs_per_line=10):
    random_combinations = []
   
    for _ in range(num_lines):
        # Случайно выбираем пары для одной строки
        selected_pairs = random.sample(pairs, pairs_per_line)
        random_combinations.append(' '.join(selected_pairs))

    return random_combinations

# Получаем ввод от пользователя
input_words = input("введите группу слов: ")

# Разбиваем на пары
pairs = split_into_pairs(input_words)

# Запрашиваем количество комбинаций
num_combinations = int(input("количество комбинаций для вывода: "))

# Генерируем случайные комбинации
combinations = generate_random_combinations(pairs, num_combinations)

# Выводим результат
for line in combinations:
    print(line)






  **  код программы вывода комбинаций букв





import random

def generate_combinations(phrase, num_combinations=10, combination_length=10):
    # Удаляем пробелы и создаем список уникальных букв
    letters = list(set(phrase.replace(" ", "")))
   
    combinations = []
   
    while len(combinations) < num_combinations:
        combination = ""
        used_pairs = set()  # Множество для хранения использованных пар букв
       
        while len(combination) < combination_length:
            letter = random.choice(letters)

            # Проверяем, не образует ли добавление буквы повторяющуюся пару
            if len(combination) > 0:
                pair = combination[-1] + letter

                if pair not in used_pairs:
                used_pairs.add(pair)
                combination += letter
            else:
                combination += letter

        # Проверяем, что комбинация уникальна
        if combination not in combinations:
            combinations.append(combination)

    return combinations

# Ввод фразы пользователем
user_input = input("Введите фразу: ")

# Ввод количества строк вывода
num_lines = int(input("Количество строк для вывода комбинаций: "))

# Генерация и вывод комбинаций
result = generate_combinations(user_input, num_lines)

# Проверка на случай, если нет комбинаций
if not result:
    print("Не удалось сгенерировать комбинации.")
else:
    for comb in result:
        print(comb)



Как работает программа:
split_into_pairs: Эта функция принимает строку слов, удаляет пробелы и разбивает строку на пары букв.
Если количество букв нечетное, добавляется символ подчеркивания для завершения последней пары.

generate_random_combinations: Эта функция генерирует случайные строки, выбирая заданное количество пар из списка. Каждая строка состоит из случайно выбранных пар.

Программа запрашивает ввод от пользователя, обрабатывает его и выводит 10 строк, каждая из которых содержит 10 случайных пар букв из слов ввода.



 **


введите группу слов:
нам нужно просто найти нужные комбинации слов и букв в строке


количество комбинаций для вывода: 200

ви кв ло на на тр но на ок уж
на уж пр би то на тр ом ви вс
на ок уж бу то пр ин ны ео уж
то тр уж бу на ви ом ин ек на
би ци но йт уж мн тр ин на то
ло на то йт бу мн на ео уж уж
ео кв но бу тр ци ис то ин ек
ис ок ек ин ци на ом би ны пр
на ис вс бу то уж ок ом пр ны
на но тр вс ви ин пр ео на йт
ис тр вс ин ци ок ны би на пр
би на уж ис ви уж ны ос кв вс
ек ло тр уж вс бу ис ви ом на
ек би ок ны ло ци на на вс кв
ок бу ви кв йт ек пр ео ин на
ек ны ео вс на ом ос ци ис йт
ис на пр ци йт ек ос на ны ин
на ео ны ло то уж йт на кв пр
ци но тр ом ны ек на ви пр на
тр кв ин то йт ео ци уж ом ос
бу но уж би пр на ны то ви ин
но вс бу ок ны йт на на на пр
мн би ло пр то вс ви ис ок ом
ин ны на вс ок бу би уж пр на
ци ок кв ео пр ны йт мн ом но
на то ци би ек ок на ви ин ео
ок вс на ом ны ис ос то ви пр
бу тр ек на ци уж уж ны ви ис
би ок вс ом ви ис на ео пр йт
ин уж ом пр ос ны ло ис на ек
бу ло уж би кв ок ин пр ек ом
ло мн ци пр тр ны ок ос кв ви
ци ис ло ны на мн тр вс ок ин
мн уж ин ек ок ци на но на пр
ис то би ек ом ны ци на уж тр
ви ео пр ос кв то уж ис ок мн
ом пр ви ло тр би мн уж ци бу
ео кв тр ок ин би ом на ло на
ци ос ин пр ео ек на вс то ис
ок би ци уж ны но на бу ви на
на пр уж бу ви то ео на на ок
на ок уж ом кв ин уж ео ны то
уж пр кв мн ны на вс ин йт ло
ос ви ео на вс тр кв уж би мн
ок ис ин ци бу тр на мн на кв
уж ны йт ци ос но тр ек на бу
ек ос ци ны ок мн ви на ео тр
на ом пр на ок ек ви ин на бу
ок уж на пр на ис йт ин мн бу
ци мн ео ом ин на би то ек на
на вс ны тр пр ис уж на ек ом
ис на ло вс то мн ин уж йт ом
ны то ло вс ис кв уж уж на ос
ци на ео пр то но ны ек на би
тр вс ци ис пр ео ин ом на уж
на ео бу йт ом ос мн пр ок уж
мн на на вс ок ви ом ци би на
ео то бу ос ок ис ви ом ци вс
на ек ло би но бу ос то ны тр
би вс ом ло ин йт на кв ео уж
на вс мн ци ом ис ин ос ны ло
ци ис ны но уж ео бу вс тр ин
на пр тр ек бу но ис на ци вс
тр на но кв ок то на ис ео ос
ек вс ом ци ок ео тр уж кв бу
ео мн то ок бу вс на ны но на
ло но ок бу ос то ек ом ви уж
ос ви вс мн би на ек бу но ны
ис тр ци би кв йт на ос на ок
ек на уж ос на ци ны вс мн ин
ци но ок ис на ин вс мн ви ны
бу пр би ны ло то на ци ек кв
бу пр ис би но ом ео ос йт ек
ви ин пр бу би ео мн уж ци ек
ны ци уж ло тр ом ин но ек би
пр но на бу ны уж на ви ло тр
на ок кв но ци ин вс ос пр йт
ом то ло ок мн ци пр ин на на
на вс мн на йт кв би ци на ео
мн ны ис но ци ви ло кв на на
ис на пр на мн на вс ны ин уж
йт на пр ом тр но ци ин ны ис
ек ци ос би то уж но ло тр бу
пр на ос ны йт би уж тр уж вс
пр ек ви ло на ны ис бу но на
мн ны ин на ос йт ок то ео уж
йт мн уж пр ис ок тр ло ек на
кв ом ло бу ео то но ек ок на
на на ци ло бу вс ок пр кв йт
ци ек бу тр на на ом ео ло уж
но би на ом ны уж ло ок на мн
ис на ло уж ны ео йт бу ок тр
би на кв ны ин йт ис но ок мн
на то ин ом ис уж йт ны мн вс
то тр ци ос ек ло бу мн уж ом
ек на вс ок ло ны йт на пр ом
ци кв ло ос ео ом уж ек вс мн
ок ви но йт пр ин на кв бу уж
уж но мн на йт ос ло ис ны ви
ек на ео пр бу ны ци ис ом ос
то ци ом ви пр йт ек ос ин уж
то но уж на йт ны мн ци ло на
ос мн вс кв ек бу би ци ом тр
ны уж ек на йт би уж ви ци мн
уж тр вс бу на ци ис ос уж то
вс пр ок ис бу уж на то кв на
ис ин ек йт ци ос ло но мн пр
на ин пр вс ис мн на ви би ци
би ны ек мн ло уж ин ео йт ос
йт ци уж мн би тр уж ин на ви
на ны уж ви бу кв ом уж на ек
пр ло ин йт на вс уж то уж ос
бу ны тр на ок пр ло вс на ео
ео ок ны ци то ин ос уж на но
ос мн на ин бу тр уж ек кв ео
би на уж ис уж кв ео ны ок то
на ек ви ны кв ом уж ин уж то
вс ны уж но мн бу уж ви ом ло
ео вс уж на ви тр ос но ци на
бу ин ви ок на би то пр мн ос
уж тр ви ны ео ло но пр кв ок
ло уж то ок би но на бу ви на
на уж но тр бу ис ви на ин ло
би ис ек на ло бу ео уж но тр
ви ин на тр на уж но ло вс бу
на уж пр йт ео но ок вс мн на
ис но ок бу уж йт ос то на ек
ци ис бу на но пр уж то ос йт
йт вс то мн би ок на но уж тр
би бу тр уж ом на ло йт ос ин
ци тр ок вс ом на мн на ек ны
то ци мн но уж би ис ом ны бу
ин мн ос на тр ео ви на ло ис
тр би на кв вс ек но ви ом ны
ци ло би мн на но на ин ок вс
ны би ео пр ом на ос йт ин то
кв ны но уж ло йт на ос ом бу
ом ис бу на ео то ос но пр ок
ин на уж пр уж ом на на йт вс
ис йт ло ом на то уж кв ны мн
но ек ло на ны уж ок мн бу ос
тр би ци ин ом ис ек но то на
но ло пр тр ео уж йт на ны ис
бу ок кв йт ци на вс мн уж на
на ос ин мн то ео ви ек на ом
ны би мн то ек кв ви вс йт ис
ок пр ло но тр вс ин ек мн йт
ек ци ом ос тр ео то йт бу ок
йт ео на ин на кв ло тр бу би
би ек ок на ин вс пр бу йт но
ин ос ви но би ло йт кв ек пр
ок уж вс на ис ин йт ци ео ви
кв но уж би йт ео ом то вс бу
вс ом на ек бу ос уж йт ви кв
на вс бу пр ло ек ок мн на кв
вс ис ок уж на уж ви би бу ос
ок ло ом ци то ви на но би ео
ло бу йт ок мн на вс но ци пр
ин мн вс на ом на уж ис уж кв
ео на мн ви ек на ин пр йт ис
мн пр йт но ом ви ос ин ок уж
ом уж тр ин кв ек ос би ис ло
ок ис тр ци бу на ос уж ео ом
ок ис ви на би ео тр мн уж ин
но ин вс ом ео мн ос уж бу ло
ос ци то на ви ис бу пр би ео
ео уж на ок мн ны ис ек би пр
мн уж ом ло на кв ео ис вс на
бу на кв пр йт на ло ци уж но
ом на ек ны но ло бу уж ео ок
ок би на на ны мн кв ци на ви
уж йт на вс ео бу то ло тр ос
ом ек ео пр на вс но тр ин ло
ло на ин ис мн тр то ок би ос
тр ци но уж мн на ек ис пр ео
ом но ны на ек ло уж на ео мн
уж би ек ви ом бу мн тр йт то
пр ин мн на ос ви на бу но ис
на ци бу йт тр ос кв пр уж ло
ос то ви пр на но ис тр ок ци
ви ци ло йт ин кв мн уж ны то
но ви на вс ци мн кв тр на ео
то бу на ек ис ны уж ом ос вс
бу ны то ви на пр на ок ом но
ло мн ны пр но ек на вс бу то
на ео ис ви тр ок уж йт ек ло
вс ло уж на ны тр пр но ек то
ло уж на пр кв ок ео ин на ек
вс ис но уж на на уж ин то ци
ви уж вс на уж ци ин ло ок ом
уж на ин тр би ло на пр но уж
пр то ин уж тр мн ны кв ис ви
на пр ис ек ин ви уж то йт ло
ок кв ци уж ны на ек би вс тр
ом бу уж ос ин ис вс би ок но
вс ис ек ео ло то на би уж бу
на ви на ны ло ок пр ин вс ео
ин на но ло то на ци тр уж ео
но на би уж ны ин ци уж тр ом
ек ос уж йт ок ин но на пр ви


Рецензии