Автор Тема: Задача 1.13  (Прочитано 9369 раз)

0 Пользователей и 1 Гость просматривают эту тему.

BELta

  • Пользователь
  • **
  • Сообщений: 13
  • ФИО: TATA
Задача 1.13
« : Июнь 22, 2013, 12:29:28 am »
В Розничной цене округление никак не пойму как написать. Что ли так: см.рис.
Вложения:
s1766867.png

system_fatal_error

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Добрынин Игорь Сергеевич
Задача 1.13
« Ответ #1 : Август 06, 2013, 11:55:22 pm »
В задачнике тоже так у вас на скриншоте
« Последнее редактирование: Август 06, 2013, 11:55:51 pm от Добрынин Игорь Сергеевич »


Nechipury

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Нечипоренко Евгений Александрович
Задача 1.13
« Ответ #2 : Август 07, 2013, 11:35:05 am »
BELIAKOVATN, впринципе правильно, только надо ещё предусмотреть чтобы цены от 0 до 100 "не округляется", а свыше 100(как в задаче) уже округлялись по правилу - точность 100, вычитать 1 - как у вас на скрине)

DrShust

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: DrShust
Задача 1.13
« Ответ #3 : Август 13, 2013, 05:37:51 pm »
Nechipury, у меня в задачнике от мая 2013 округление 101 рубля до 99... Т.е. получается 2 нужно отнимать? Это во-первых. Во-вторых, если сделать, как на скриншоте, получится введу я, например, 149 - будет округление до 99. Что-то здесь не то...

oltie

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: oltie
Задача 1.13
« Ответ #4 : Август 20, 2013, 11:31:38 am »
Сделала так.

 

 В отчете видно, что округляется до 99 по арифметическим правилам.

 
Вложения:
s2011834.jpg
s5255864.jpg

DrShust

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: DrShust
Задача 1.13
« Ответ #5 : Август 21, 2013, 09:42:01 am »
oltie, ваш вариант ближе, также делал. Единственно, конечно, бред получается, если например базовую на товар 1 поставить 123 руб. тогда розничная также 99 будет. Можно, конечно, границы поставить, но в условии об этом ничего не сказано и, думаю, рисковать на экзамене не стоит.

Nechipury

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Нечипоренко Евгений Александрович
Задача 1.13
« Ответ #6 : Август 21, 2013, 10:27:24 am »
DrShust, в задаче чётко написано что "если рассчитанная в соответствии с процентом цена на товар равна 101 руб., устанавливаемая цена должна быть равна 99 рублям"
« Последнее редактирование: Август 21, 2013, 11:02:20 am от Нечипоренко Евгений Александрович »

DrShust

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: DrShust
Задача 1.13
« Ответ #7 : Август 21, 2013, 11:06:33 am »
Nechipury, тока одна деталь, которую вы пропустили: округление ставлю не 100, а 99. Тогда 149 превращается в 198. 101 округляется до 99.
 Про границу... думаю есть резон поставить границу, но не могу сказать какую. Вот такой получается прайс при точности округления для розничной цены 99. Так что условие тоже выполнено (100 или 101 превращается в 99). В обоих вариантах глаз режет только, что оптовая цена в некоторых случаях больше розничной. В общем... не переубедился я пока:)). За удачу спасибо!

oltie

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: oltie
Задача 1.13
« Ответ #8 : Август 21, 2013, 11:06:35 am »
Цитата (Nechipury)
в задаче чётко написано что "если рассчитанная в соответствии с процентом цена на товар равна 101 руб., устанавливаемая цена должна быть равна 99 рублям"

 в задачнике написано, что округляется до 99 руб по арифметическим правилам. а про 101 - "пример". 
 что вообще не противоречит решению выше  smile

DrShust

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: DrShust
Задача 1.13
« Ответ #9 : Август 21, 2013, 11:09:04 am »
Что-то рисунок не загрузился... Прикрепил word'овский файл.
Вложения:
1.13.docx

Nechipury

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Нечипоренко Евгений Александрович
Задача 1.13
« Ответ #10 : Август 21, 2013, 11:22:16 am »
DrShust, всё классно ,но на товар1 должен показывать 1199 руб. т.к. сами писали "в задачнике написано, что округляется до 99 руб по арифметическим правилам", и ещё вопрос как вы запилили округление 99, если в ручную округление не задаётся? там только 100 есть в программе)
« Последнее редактирование: Август 21, 2013, 11:24:11 am от Нечипоренко Евгений Александрович »

DrShust

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: DrShust
Задача 1.13
« Ответ #11 : Август 21, 2013, 11:32:37 am »
Nechipury, очень даже задаётся. Жмёшь: использовать полные возможности. Файл прилагаю.
Вложения:
1.13-2.docx

Nechipury

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Нечипоренко Евгений Александрович
Задача 1.13
« Ответ #12 : Август 21, 2013, 11:38:17 am »
DrShust, да это понятно)))))
 я тебе говорю что у тебя когда "Базовый" = 1000 руб. то "Розничный" 1188 руб, а должно 1199 руб. ))))))

 Короче я пришёл к выводу что моё решение, а так решение твоё и oltie, не есть Истина, здесь задача решается по другому!

DrShust

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: DrShust
Задача 1.13
« Ответ #13 : Август 21, 2013, 12:07:28 pm »
Nechipury, вот ты странный человек. Спорить не буду, но... Где в задании сказано, что 1200 (1000*0.2+1000) должно округляться до 1199? Написано, что 101 до 99. Главное - по арифметическим правилам. А что это значит? Округлять должно в ближнюю сторону и чтобы получившееся число было кратно точности округления! Т.е., если точность 1,  тогда 1.4 округлится до 1, а 1.5 уже до 2. Там даже переключатель есть (по ариф. правилам или всегда в большую сторону).
 По аналогии, когда я ввожу 50 - округлит до 99, 148 до 99, 149 до 198 (ближайшее кратное становится не 99 а 198). Потому-то и получается не 1199, а 1188 (делится на 99 и ближнее). Кстати, как говорится: в споре рождается истина. Определил для себя нижнюю границу - 50, потому что 49 округлит до 0.

oltie

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: oltie
Задача 1.13
« Ответ #14 : Август 21, 2013, 12:12:40 pm »
Цитата (Nechipury)
когда "Базовый" = 1000 руб. то "Розничный" 1188 руб, а должно 1199 руб.

 с чего вы взяли это? написано по "арифметическим правилам".
 округление до 99 по арифметическим правила как раз 1188.
 если розничная 1000, то с наценкой 20% = 1200 + округление до 99 = 1188 руб.

 если javascript , то это Math.round(1200 / 99) * 99 = 1188 руб.  (проверьте, кто не знает javascript https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/round)

 при математическом округлении до 99 максимальная дополнительная абсолютная погрешность составляет ±49,5.