aidapiltoyan43
?>

Реализовать на python дан список слов, и одно слово. список слов можно задать в любом виде: прочитать из файла (тогда нужно указать формат файла, или приложить его пример), ввести с клавиатуры, задать константой, и т.д. слово должно вводиться с клавиатуры. проверить, присутствуют ли в списке слова, состоящие из тех же букв (или их части), из которых состоит слово. порядок букв не имеет значения. в искомых словах может быть меньше букв, чем в исходном. как по количеству, так и по разнообразию. то есть, нельзя искать слова с тремя буквами "е", если в слове их только две, но можно с двумя и с одной. пример: список слов: рыба, рак, щука, лебедь, карась, пескарь, баня, бубен, столб, баян, барыня. слово: рабыня вывод программы: рыба, баня, баян, барыня

Информатика

Ответы

Ляпунов_Владмирович

Пояснение:

Если ввод осуществляется через файл, то он должен называть "Слова.txt" и находиться в одной директории с исполняемым файлом. Выбрать нужный вариант ввода можно просто введя цифру в перовом input.

Код:

# -*- coding: utf-8 -*-

format = int(input("Считать слова из файла (введите 1)\nВводить слова в консоль (введите 2)\nВвести слова в одну строку(введите 3)\nВыбор: "))

words = []

answer = []

if format == 1:

  f = open('Слова.txt', "r", encoding='utf-8')

  line = f.readline()

  while line:

      for i in line.split(", "):

          words.append(i)

      line = f.readline()

  f.close()

elif format == 2:

  n = int(input("Введите кол-во слов - "))

  for i in range(n):

      words.append(input("Вв. слол - "))

elif format == 3:

  n = input("Введите строку - ")

  for i in n.split(", "):

      words.append(i)

else:

  print("Неправильно введен номер ответа")

word = input("Введите поисковое слово - ")

for i in words:

  for j in list(word):

      if len(set(word).intersection(set(i))) == len(i):

          answer.append(i)

          break

print(", ".join(answer))

Текст для документа:

рыба, рак, щука, лебедь, карась, пескарь, баня, бубен, столб, баян, барыня

Vyacheslavovna

Короче. Вот код.

def matrix_gen(gen, n, m):    Matrix = [];    for i in range(n):        a = [];        for j  in range(m):            a.append(gen[j]);        Matrix.append(a);    return Matrix;

Объяснение

Сначало ты инициализируешь функицю с названием "matrix_gen", которая принимает 3 параметра, 'gen' -- это генератор которые ты будешь использовать. 'n' & 'm' это размер матрицы.

Второй строчкой ты инициалихируешь пустой массив, которые похже заполнишь. Третей строчкой ты в for цикле обходишь все строки матрицы, они же подмассивы массива  Matrix, просто 'a'. Делаем мы это 'n' раз.

Четвётрой строчкой ты инициализируешь массив(ы, мы в цикле) 'a', и следующей строчкой заполняешь уже его. Так же в for цикле. Всего в нём будет 'm' элементов.

Надеюсь решение правильное. Честно говоря у тебя вопрос очень странно поставлен.

gladkihvv

1. открой поисковик

2. вбей данные из "как сгенерировать идеальный бесконечный лабиринт в с++"

3.посмотри видео и всё поймёшь

желаю удачи!!

Объяснение:

Предисловие

На написание статьи меня сподвигло практически полное отсутствие материалов на русском языке про алгоритмы генерации лабиринтов. На Хабре, из того, что вообще есть по теме, можно отметить две статьи: раз и два. Ценность и пользу из которых несет лишь вторая. В первой – просто перевод формального алгоритма и небольшое его пояснение. Что, конечно, неплохо, но очень скудно и не вызывает желания изучать тему дальше.

Если моя статья Вам понравится, я продолжу писать о различных алгоритмах. Мы рассмотрим два самых примитивных и простых случая – генерация двоичного дерева и Сайдвиндер, который, по своей сути, просто чуть измененная версия двоичного дерева с одним заметным плюсом. ОСТОРОЖНО ТРАФИК.

Дам один совет – не подглядывайте в код до тех пор, пока вы не напишите свою реализацию. Вы получите гораздо больше удовольствия и пользы от исправления багов и поиска ошибок, чем если просто переведете с одного языка на другой.

Серьезно. Прислушайтесь к совету. Вы, верно, потратите больше времени, но оно стоит стоит. У меня, например, из-за пары ошибок появился очень забавный генератор «инопланетных» текстов, который можно использовать в различных Sci-Fi играх для создания текста. Надеюсь, Вы изучаете тему для себя и никуда не спешите.

P.S.:

Я буду использовать термин «смещение», предполагая английский bias. Т.е. пристрастие алгоритма к направленности в какую-либо сторону. Например, правое смещение – алгоритм генерирует лабиринты с длинными правыми проходами.

Раскраска лабиринтов происходит относительно расстояния от крайнего левого угла поля до некоторой клетки. Чем дальше от начальной координаты – тем темнее будет цвет.

Идеальный лабиринт – такой лабиринт, в котором одна клетка связана с другой одним единственным путем. Иначе говоря, остовное дерево.

Про Lua

Алгоритм двоичного дерева

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Реализовать на python дан список слов, и одно слово. список слов можно задать в любом виде: прочитать из файла (тогда нужно указать формат файла, или приложить его пример), ввести с клавиатуры, задать константой, и т.д. слово должно вводиться с клавиатуры. проверить, присутствуют ли в списке слова, состоящие из тех же букв (или их части), из которых состоит слово. порядок букв не имеет значения. в искомых словах может быть меньше букв, чем в исходном. как по количеству, так и по разнообразию. то есть, нельзя искать слова с тремя буквами "е", если в слове их только две, но можно с двумя и с одной. пример: список слов: рыба, рак, щука, лебедь, карась, пескарь, баня, бубен, столб, баян, барыня. слово: рабыня вывод программы: рыба, баня, баян, барыня
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

gri-7410
strager338
vera-sherepa231
katrinasvr
nzaripova313
s-food
helenavalenti2846
navi35374
supercom-ru-marinaguseva4267
Nikol27051986
coleslow12
anikamalish
bykovaam
tyrnaus
rimmaskis