Форум программистов, компьютерный форум, киберфорум
Наши страницы
Pascal ABC
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
HelenaAntipova
0 / 0 / 1
Регистрация: 14.12.2015
Сообщений: 32
#1

Разложить по коробкам новогодние подарки

11.04.2016, 06:48. Просмотров 834. Ответов 3
Метки нет (Все метки)

Даны целые неотрицательные а, X,Y,Z. Известно , что в каждый новогодний подарок необходимо положить а конфет , одно или два яблока, одну или две груши , причем количество фруктов в подарке должно равняться трем. Каждое максимальное количество подарков можно скомплектовать из Х конфет, Y яблок и Z груш.
Помогииииите
через ветвления
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.04.2016, 06:48
Ответы с готовыми решениями:

Каким количеством способов можно разложить 12 шариков по 4-м коробкам?
Здравствуйте. Подскажите, что-то не могу с лету сообразить по какой формуле...

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

Рассфассовка шаров по коробкам
Приветствую участников форума! На входе имеем массив из чисел: in = Нужно...

Распределение чисел по 3 коробкам
Привет! Написал программу, но она работает некоректно. Условие :...

Раскладываем случайно шары по коробкам
Есть 40 одинаковых шаров и 60 одинаковых коробок, раскладываем случайно шары по...

3
Puporev
Модератор
54388 / 41969 / 28988
Регистрация: 18.05.2008
Сообщений: 98,865
11.04.2016, 07:51 #2
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Одними ветвлениями не решить наверное. Предлагаю так.
Pascal
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
var a,x,y,z,k,f,p:integer;
begin
write('Сколько конфет x=');
readln(x);
write('Сколько яблок y=');
readln(y);
write('Сколько груш z=');
readln(z);
write('Сколько положить конфет в каждый подарок a=');
readln(a);
k:=x div a;  // Ограничение по конфетам
f:=0;   //Ограничение по фруктам
repeat
if y>z then
 begin
  y:=y-2;
  z:=z-1;
 end
else
 begin
  y:=y-1;
  z:=z-2;
 end;
f:=f+1;
until y+z<3;
if k<f then p:=k
else p:=f;
write('Количество подарков=',p)
end.
1
Shamil1
Модератор
2109 / 1419 / 322
Регистрация: 26.03.2015
Сообщений: 5,150
04.09.2017, 14:50 #3
Лучший ответ Сообщение было отмечено Puporev как решение

Решение

Цитата Сообщение от HelenaAntipova Посмотреть сообщение
через ветвления
Нужно выбрать минимальное из x/a, y, z, (y+z)/3.
0
Puporev
Модератор
54388 / 41969 / 28988
Регистрация: 18.05.2008
Сообщений: 98,865
04.09.2017, 15:35 #4
Правильно, сходится с предыдущим решением, но сильно проще.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.09.2017, 15:35

Новогодние снежинки
Вложение javascript.snow.v1.0.source.zip в низу поста. Преимущества скрипта:...

Новогодние игры
А какие есть новогодние игры, или игры с участием деда мароза.

Поздравительные и новогодние открытки (на С++)
Доброго времени суток! Близятся новогодние праздники и надо делать подарки!...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru