Задача про конфеты
Не смог понять как решать данную задачу:
Андрею на новый год подарили N конфет. С пришедшими гостями Андрей делился своими конфетами поровну. Если точно не делилось, то Андрей съедал неделящиеся конфеты. Сколько конфет съедал Андрей ? все ли гости получили ? Количество входящих гостей запрашивается с клавиатуры, ввод числа 0 является признаком того, что гости пришли все. Прошу помощи по задаче. Паскаль. Задача с использованием циклов
Ответы (1 шт):
Сейчас нет возможности проверить работоспособность кода, так что прошу принять ответ только как наставление, а не рабочее решение!
Сначала спрашиваешь у пользователя сколько конфет и сохраняешь в переменную candies_number, затем спрашиваешь сколько гостей и сохраняешь в переменную guests_number, а потом вычисляешь то что требуется по задаче.
Нам понадобятся следующие переменные:
var
candies_number, guests_number, eaten_number: integer;
all_guests_eaten: boolean;
Чтобы получить данные с консоли используется такая конструкция:
writeln('Введите количество конфет: ');
ReadInteger(candies_number);
По аналогии запроси и количество гостей.
Андрей съедает все конфеты, которые являются остатком от деления количества конфет на количество гостей. Значит через оператор остатка от деления узнаешь сколько конфет съедает Андрей, примерно так candies_number mod guests_number и сохраняешь это дело в соответствующую переменную, которую выше уже описали.
Второй вопрос - всем ли гостям достались конфеты, это означает, что количество конфет больше, либо равно количеству гостей, сохраняешь это значение в логическую переменную - с типом boolean, которую также описали уже выше. С условиями, надеюсь, сможешь разобраться.
В итоге выводишь в консоль сообщения с ответом на поставленные вопросы.
P.S. по поводу такого условия к задаче "Количество входящих гостей запрашивается с клавиатуры, ввод числа 0 является признаком того, что гости пришли все" предлагаю поставить в тупик преподавателя и спросить что бы это могло означать и кто такие "все", которые пришли :)