1 / 1 / 0
Регистрация: 18.11.2020
Сообщений: 21
|
|
1 | |
Айболит 2.025.01.2021, 15:43. Показов 8783. Ответов 3
Метки нет (Все метки)
Предыдущее решение по автоматизации клиники Айболита не принесло свои плоды. Многие посетители начали пытаться попасть на прием без очереди поэтому было принято доработать внедренную систему.
Модифицируйте функцию hello(name), которая принимает на вход имя пациента. Теперь она должна проверять наличие свободных окон и если такое есть писать сообщение "Здравствуйте, <имя>! Подойдите к окошку номер <номер окна>" и занять окно данным пациентом. Если свободных окон нет, то должно выводиться сообщение "Простите, <name>. Все окна заняты" Модифицируйте функцию search_card(name), которая принимает на вход имя пациента. Теперь она перед поиском карты должна проверять обслуживается ли данный пациент в настоящий момент. Если нет, то выводить сообщение "Простите, <имя>, дождитесь своей очереди", иначе проводить поиск карты и выводить те же сообщения, что и в предыдущей версии программы. Напишите функцию good_bye(name), которая тоже принимает на вход имя пациента, и, если он обслуживается в настоящее время, выводит - "До свидания, не болейте, <имя>", и освобождает окошко, в котором обслуживался данный пациент. Иначе выводит сообщение "Простите, <имя>, дождитесь своей очереди". Список имён пациентов, пронумерованный с 1, находится в списке base, который является глобальным. Номер пациента соответствует номеру карты. Список окон (нумерация также с единицы) находится в глобальном списке query, где значение элемента None говорит о том, что окошко с соответствующим индексом свободно и готово обслуживать следующего клиента. Пример ввод base = ["Иван", "Юлия Иванкова"] query = [None, None, None] hello("Иван") search_card("Иван") hello("Юлия Иванова") search_card("Юлия Иванова") вывод Здравствуйте, Иван! Подойдите к окошку номер 1 Ваша карта с номером 1 найдена Здравствуйте, Юлия Иванова! Подойдите к окошку номер 2 Ваша карта не найдена Примечания Клиенты подходят к свободному окошку с минимальным номером.
0
|
25.01.2021, 15:43 | |
Ответы с готовыми решениями:
3
Доктор Айболит решил собрать робота, который поможет ему делать стандартные назначения Айболит 2.0 Айболит Айболит |
13 / 12 / 1
Регистрация: 16.11.2019
Сообщений: 33
|
||||||
03.02.2022, 09:11 | 2 | |||||
1
|
10 / 10 / 0
Регистрация: 05.04.2023
Сообщений: 47
|
||||||
14.02.2024, 23:17 | 3 | |||||
0
|
0 / 0 / 0
Регистрация: 07.05.2024
Сообщений: 1
|
|
07.05.2024, 15:37 | 4 |
c = 1
lst = [] def hello(name): global query global c global lst if c < (len(query) + 1): print(f'Здравствуйте, {name}! Подойдите к окошку номер {c}') c += 1 lst.append(name) else: print(f'Простите, {name}. Все окна заняты') def search_card(name): global lst global base if name in lst: cc = 1 if name in base: for i in base: if i != name: cc += 1 else: break print(f'Ваша карта с номером {cc} найдена') else: print('Ваша карта не найдена') else: print(f'Простите, {name}, дождитесь своей очереди') def good_bye(name): global lst global c if name in lst: print(f'До свидания, не болейте, {name}') lst.remove(name) c -= 1 else: print(f'Простите, {name}, дождитесь своей очереди')
0
|
07.05.2024, 15:37 | |
07.05.2024, 15:37 | |
Помогаю со студенческими работами здесь
4
Айболит - 2 Айболит Айболит Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |