Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > Python
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.12.2022, 17:12   #1
IkesIlyaes
 
Регистрация: 18.11.2022
Сообщений: 8
По умолчанию Пайтон помощь в исправлении ошибки

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

Сделал программу но онавыдает нельзя и можно к каждой букве как исправить так что бы именно срау писано ко всему слову можно или нельзя например вот так

Hello
Oleh
_____
Можно

Код:
a=input()
b=input()
set(a)==set(b)
for i in a:
    if i not in b:
        print("нельзя")
    if i in b:
        print("можно")
IkesIlyaes вне форума Ответить с цитированием
Старый 02.12.2022, 18:05   #2
Valick
Форумчанин
 
Регистрация: 27.04.2022
Сообщений: 493
По умолчанию

цикл по каждой букве слова Б
поиск буквы в слове А
если слова А уже нет или текущей буквы от слова Б в слове А нет, то "нельзя"
если буква есть, то удалять её из слова A
если цикл по каждой букве слова Б полностью завершился, то "можно"
Valick вне форума Ответить с цитированием
Старый 02.12.2022, 21:08   #3
ViktorR
Старожил
 
Регистрация: 23.10.2010
Сообщений: 2,309
По умолчанию

IkesIlyaes
Цитата:
Программа должна учитывать регистр букв введенных слов
Но тогда как понимать:
Цитата:
Hello
Oleh
_____
Можно
Предлагаю составить два словаря, в которых символ слова - ключ, а значение - количество данных символов в слове.
Сортируем словари по ключу и сравниваем.

Тут два варианта к правилам:
- число символов в словах должно совпадать;
- число символов в B может быть меньше числа символов в A.

PS: На первом шаге можно привлечь и множества. В множестве будут символы, например, слова A.
Проверяем вхождение символов слова B в множество символов A.
Но тут есть загвоздка на повторяющиеся символы и тогда можно обратиться к словарям.
Как-то так, ...
ViktorR вне форума Ответить с цитированием
Старый 03.12.2022, 00:36   #4
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,291
По умолчанию

Код:
from collections import Counter

a, b = input(), input()
c = Counter(a)
c.subtract(b)
print("можно" if all(v >= 0 for v in c.values()) else "нельзя")
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Старый 03.12.2022, 10:17   #5
Valick
Форумчанин
 
Регистрация: 27.04.2022
Сообщений: 493
По умолчанию

BDA, читер
Valick вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужна помощь в исправлении ошибки в коде Pascal ABC.NET 30D1AK Помощь студентам 1 28.01.2019 23:02
факториал. пайтон adolphina Помощь студентам 5 11.11.2016 08:31
[Delphi]Восстановление ПРВ( помощь в исправлении и создании модификации) CityZen73 Фриланс 5 06.05.2016 18:40
Помощь в исправлении недоработаных макросов Ukhanev Microsoft Office Excel 1 30.07.2014 17:29
Нужна помощь в исправлении кода #С serzmerz Помощь студентам 5 14.11.2013 04:05