Форум программистов, компьютерный форум CyberForum.ru

Задача: Покупка цветов - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Инициализировать **struct http://www.cyberforum.ru/cpp-beginners/thread261401.html
Доброго дня, жалко, нету темы для чайников, так что приходится заводить новую. Есть такой FTPLib, он с исходниками, но ни единого примера я не нашел. Одна из функций, псевдокод: int FtpConnect(const char *host, netbuf **nControl); netbuf **pControl; if( FtpConnect(host, pControl) !=0 ) Студия говорит, что "Run-Time Check Failure #3 - The variable 'pControl' is being used without...
C++ Сортировка чисел из файла. Добрый день друзья. Помогите пожалуйста с крусачем:Произвести сортировку элементов одномерного массива вещественных чисел размером N элементов в порядке возрастания дробной части элементов. Элементы массива содержаться в текстовом файле DATA1.TXT. Заранее спасибо. http://www.cyberforum.ru/cpp-beginners/thread261393.html
C++ Шаблонная функция. Где-то ошибка.
Помогите пожалуйста исправить ошибку. написать шаблонную функцию, которая удалит в массиве элементы, стоящие между максимальным и минимальным элементами: #include "stdio.h" template (class T) int del_max_min(T x,int k,T&max,T&min) {
Преобразовать мат.формулу в код на C C++
http://i027.***********/1103/63/2ec1528342d9.jpg Преобразуйте пожалуйста второй пример.
C++ создать программу http://www.cyberforum.ru/cpp-beginners/thread261382.html
Друзья! Помогите написать программу на С++ : создать: 1) функцию для ввода 20 элементов целого типа; 2) функцию для определения суммы отрицательных элементов массива; 3) функцию для вычисления произведения элементов, которые находятся между максимальным и минимальным элементами; 4) функцию для вывода элементов массива; 5) упорядочить элементы по увеличению модуля значений элементов. Пожалуйста,...
C++ Задана матрица целых чисел A(n,n). Все элементы столбца, с наибольшим номером, среди тех, где находится более двух простых элементов, заменить разно Задана матрица целых чисел A(n,n). Все элементы столбца, с наибольшим номером, среди тех, где находится более двух простых элементов, заменить разностью между максимальным и минимальным элементом матрицы. Добавлено через 4 часа 28 минут помогите с программкой :bye: подробнее

Показать сообщение отдельно
researcher
Сообщений: n/a
03.04.2011, 02:25
Задача олимпиадная , правда юнит тест то ли случайно то ли умышленно (дабы отсечь ответы подобные тому что дал neurosis) составили неграмотно...

В ответе с while ошибка, хотя, он близок к истине.

Изменим, приведенный выше, юнит (тоже не перекрывает некоторые пограничные соответствия)
С = 136 р.
А = 25 р/шт.
В = 28 р/шт.
Верное решение:
А*2 + В*3 = 50 + 84 = 134
Приведенный код вернет значение
Букет из 1 ромашки(ек) и 4 гладиолуса(ов) обойдется в 137 р., Ваша сдача -1 р.
Т.к. while(B*4 > C) => 112 > 136 => false и гладиолусов останется 4
//****************************************************************
Для проверки второго решения лучше использовать предыдущий юнит:
С = 149 р.
А = 25 р/шт.
В = 26 р/шт.
C++
1
2
3
4
int max_count_flower = c/a = 149/25 = 5; //***0.96***
int sdacha=c%a = 24;
int b_count=sdacha/(b-a) = 24/1 = 24;
int a_count=max_count_flower-b_count = 5 - 24 = -19;
//******************************************************************
Алгоритм достаточно прост:
//математикой, конечно, можно все запутать и одну головоломку превратить в другую, но чем проще программный код, тем он легче сопровождается и модифицируется под другие условия;
1. Максимальное количество получаем складывая самые дешевые цветы пока их сумма не выйдет за пределы наличной суммы (С): 25 + 25 + 25 + 25 + 25 = 125 < 136;
2. Заменяем по одному цветку с дешевого на более дорогой и проверяем общую сумму пока не достигнем максимально возможной величины:
А*2 + В*3 = 25*2 + 28*3 = 50 + 84 = 134 < 136;
// while вполне подойдет, только граничные условия следует четко определять и тестировать (хотя бы изредка)
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru