Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/8: Рейтинг темы: голосов - 8, средняя оценка - 4.88
2 / 2 / 0
Регистрация: 23.05.2022
Сообщений: 8

Задача про Картошку

08.07.2022, 16:03. Показов 1826. Ответов 3

Студворк — интернет-сервис помощи студентам
Помогите пожалуйста выйти из цикла! вот что написал преподаватель
В задании 5 не записали выход из цикла:
Но не могу понять что препод имеет ввиду =(
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
class Potato:
    states = {0: 'Отсутствует', 1: 'Росток', 2: 'Зелёная', 3: 'Зрелая'}
 
    def __init__(self, index):
        self.index = index
        self.state = 0
 
    def grow(self):
        if self.state < 3:
            self.state += 1
            self.print_stats()
 
    def is_ripe(self):
        if self.state == 3:
            return True
        return False
 
    def print_stats(self):
        print('Картошка {} сейчас {}'.format(
            self.index, Potato.states[self.state]
        ))
 
 
class PotatoGarden:
 
    def __init__(self, count):
        self.potatoes = [Potato(index) for index in range(1, count + 1)]
 
    def grow_all(self):
        print('Картошка прорастает!')
        for i_potato in self.potatoes:
            i_potato.grow()
 
    def are_all_ripe(self):
        if not all([i_potato.is_ripe() for i_potato in self.potatoes]):
            print('Картошка ещё не созрела!')
        else:
            print('Вся картошка созрела! Можно собирать\n')
 
 
class Gardener:
    def __init__(self, name, harvest):
        self.name, self.harvest = name, harvest
 
    def info_gardener(self):
        print(f'Имя садовника: {self.name}\nСобрал картошки: {self.harvest}')
 
    def action(worker, my_garden):
        if all([i_potato.is_ripe() for i_potato in my_garden.potatoes]):
            quest = int(input('Собрать картошку? \n1 - да, 2 - нет\n'))
            if quest == 1:
                potato_count = 0
                for i_potato in my_garden.potatoes:
                    worker.harvest += 1
                    potato_count += 1
                    i_potato.state = 0
                print(f'{worker.name} собрал {potato_count} картофелин!')
                worker.info_gardener()
        else:
            quest = int(input(f'Отправить {worker.name}а ухаживать за картошкой? \n 1 - да, 2 - нет\n'))
            if quest == 1:
                my_garden.grow_all()
                my_garden.are_all_ripe()
 
 
my_garden = PotatoGarden(5)
worker = Gardener('Ostin', 0)
while True:
    Gardener.action(worker, my_garden)
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
08.07.2022, 16:03
Ответы с готовыми решениями:

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

задача про самолет (аналог задачи про рюкзак)
Мне хотелось бы, чтобы вы посоветовали и помогли мне, как правильно решить задачу. В самолет требуется погрузить n видов предметов,...

Задача про взлом кода из книги Эрика Фримена про основы javascript в конце 5 главы.
читаю книгу Эрика Фримена про основы javascript.В конце 5 главы есть задачка про взлом кода.Никак не могу понять как ее решить.НЕ понимаю...

3
1956 / 874 / 352
Регистрация: 05.09.2021
Сообщений: 1,387
08.07.2022, 16:27
Цитата Сообщение от rusAga Посмотреть сообщение
Но не могу понять что препод имеет ввиду =(
Дружище, а почему не спросить у препода, что он имел ввиду, если вам это не понятно?
Как-то же он донес до вас эту инфу, задайте ему вопрос по этому же каналу связи

По сути, цикл в вашем коде только одни, строки 68-69. Он действительно "вечны". Задумано так вами или нет я не знаю.
Если так и должно быть, то объясните преподу, что это нормальная "бизнес логика" программы. Ну или введите какое-то условие, по которому цикл может завершиться, если не хотите что-то кому-то объяснять.
2
2 / 2 / 0
Регистрация: 23.05.2022
Сообщений: 8
09.07.2022, 14:00  [ТС]
anton78spb, Выражусь точнее, я не могу прописать условие выхода в классе Gardener, в функции action я задаю вопрос 1 или 2, вот 1 прописан, а как прописать 2й вариант не понимаю, что бы он не шёл собирать или не шёл ухаживать
0
 Аватар для Semen-Semenich
5226 / 3472 / 1174
Регистрация: 21.03.2016
Сообщений: 8,300
09.07.2022, 14:19
if , elif не ? не слышал?
Python
1
2
3
4
if quest == 1:
    # работаем по одной схеме
elif quest == 2:
    # работаем по другой схеме
хотя можно и так но это не оптимально
Python
1
2
3
4
if quest == 1:
    # работаем по одной схеме
if quest == 2:
    # работаем по другой схеме
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
09.07.2022, 14:19
Помогаю со студенческими работами здесь

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

Задача про Randomize и про проценты
Доброго времени суток. Возникла ещё одна задача, я думал что не сложная, как оказалось не знаю, как правильно решить. ...

Видюха греется хоть картошку жарь
Ребят помогите была система Мать MSI 760GM-P23 Видео AMD Radeon R7 370 Камень FX4300 БП 650 Вт Все работало нормально

Кто как любит готовить картошку?
придлагаем свой рецепты я вот жарю с тушенкой и с чесноком очень вкусно

Определить сколько дней фермер собирал картошку
Условие задачи: У фермера имеется поле с картошкой размером N на M (размеры указываются в картошках). В сентябре фермер решил собрать всю...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru