| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Центр помощи > [C++] Сортировка_2 |
| Автор: KatrinIceLand 6.9.2008, 19:29 | ||||
| Всем опять привет. Вот у меня еще одна задачка на сортировку (та же тема что и в теме "Сортировка") Задание:
А код все тот же:
Поможите? |
| Автор: KatrinIceLand 7.9.2008, 17:45 |
| Каждая 3-я вещь бесплатно, конечно же самая дешевая 1 - самая дешевая из 3х 6 - всего 6 вещей выбрано Надо что бы Дороти получила максимальную скидку. Если она выбрала 1 6 400 100 200 350 300 250 Тогда она подойдет 3 раза с: 250 200 100 400 350 300 и получит 100 + 300 скидку За третью вещь. |
| Автор: KatrinIceLand 7.9.2008, 18:38 | ||
Вот я отсортировала элементы:
output: 100200250300350400, как мне теперь выбрать 1й + 4й и вывести ответ? И вообще я правильным путем иду? |
| Автор: Dov 7.9.2008, 19:55 | ||
| KatrinIceLand, я бы сделал так: 1. Отсортировал бы в порядке убывания. 2. Подсчитал бы в цикле максимальную сумму скидки. Например так:
|
| Автор: KatrinIceLand 7.9.2008, 19:59 | ||
Что не так? Добавлено через 2 минуты и 42 секунды Dov, привет. Спасибо за помощь Не очень уловила ход мысли. Можно подоходчивее |
| Автор: Dov 7.9.2008, 20:15 |
| KatrinIceLand, смотри. 1. сортируем в порядке убывания. получаем: 400, 350, 300, 250, 200,100. 2. подсчитываем в цикле(см. мой цикл), начиная с элемента array[2], сумму скидки. получаем 300 + 100 = 400. |
| Автор: KatrinIceLand 7.9.2008, 20:17 | ||
что то тут не так
подскажите пожалуйста |
| Автор: Dov 7.9.2008, 20:21 | ||
можно такой цикл написать, что бы не менять порядок сортировки:
|
| Автор: KatrinIceLand 7.9.2008, 20:47 | ||
Dov, спасибо! С постоянными числами в массиве получилось, я теперь пытаюсь запустить все то же только уже без данных в массиве. Т.е. что бы данные считывались и обрабатывались. Что то у меня не совсем получается. Может ты увидишь ошибку?
|
| Автор: Dov 7.9.2008, 21:54 | ||
Ну, что-то такое, например:
|
| Автор: KatrinIceLand 7.9.2008, 22:06 | ||||
| вот тут все правильно:
а вот здесь надо что то доделать:
|
| Автор: Dov 7.9.2008, 22:09 |
| KatrinIceLand, что нужно сохранить, куда и для каких целей? Говори конкретнее. |
| Автор: Dov 7.9.2008, 23:15 |
| KatrinIceLand, я не очень понимаю, зачем нужна какая-то переменная. Тебе нужен ещё один массив целых чисел? После сортировки мы и так можем сложить сумму максимальной скидки. Зачем дополнительные переменные? |
| Автор: KatrinIceLand 7.9.2008, 23:18 | ||
| Ок, не надо переменной. Но все равно где-то ошибка. Вот что у меня на данный момент:
Добавлено через 1 минуту и 32 секунды Dov, классный у тебя аватар |
| Автор: Dov 7.9.2008, 23:29 | ||
| KatrinIceLand, а ты смотришь примеры, которые я тебе даю? Зачем ты делаешь двойной цикл? Вот тебе ещё один пример. Никаких ошибок там нет. Сумму скидки считает правильно.
|
| Автор: KatrinIceLand 7.9.2008, 23:36 |
| Dov, спасибо за помощь! Но тут не все так просто, я на сайте эту программу должна сдать, и там все это не принимается VS - счастлив |
| Автор: Dov 7.9.2008, 23:58 |
| А твоя задача в чём заключается? Написать программу "с нуля" или тебе даётся какая-то программа, а ты должна её привести в надлежащий вид? |
| Автор: KatrinIceLand 8.9.2008, 00:09 | ||
|
| Автор: Dov 8.9.2008, 00:15 |
| KatrinIceLand, а ты уверена, что этот код дан, именно, для этой задачи? |
| Автор: KatrinIceLand 8.9.2008, 00:22 | ||
Я уже не в чем не уверена Меня этот сайт на котором я сдаю программу уже достал. Не понимаю я что ему еще нужно.. На моем компе все компилируется, результат правильный, а на сайте ошибка Ладно, поздно уже, устала я биться с HighTeh.. Всем огромное спасибо за помощь!!! И спокойной ночи |
| Автор: Dov 8.9.2008, 00:26 |
| Спокойной ночи, KatrinIceLand. Добавлено через 2 минуты и 47 секунд Ты бы спросила у препода, что можно использовать в написании программы, а что нельзя. А то бродим здесь, как слепые котята.. |
| Автор: KatrinIceLand 8.9.2008, 00:48 |
| Договорились! Я обязательно решения выложу, что бы разобраться что к чему |
| Автор: KatrinIceLand 11.9.2008, 14:15 | ||
А вот вариант который все таки принял сайт. Найди 3 отличия:
Я такие варианты миллион раз пыталась сдать, а он ни в какую, зато под четким вниманием преподавателя, все получилось. А ошибка с newline ... возможно просто пустая строка в конце программы, надо сделать backspace до самой последней скобки. |
| Автор: Dov 11.9.2008, 16:37 | ||||
Вот самое главное отличие:
Не зря я это спрашивал. Твой string спутал все карты. |
| Автор: Damarus 11.9.2008, 17:02 | ||
Ты бы хоть ошибки полностью написала |
| Автор: KatrinIceLand 11.9.2008, 17:07 | ||
Совершенно точно, string не должно было быть, sorry 1. String 2. Пустая строка в конце кода |