За последние 24 часа нас посетили 55363 программиста и 1773 робота. Сейчас ищут 970 программистов ...

Помогите решить задачу со скидкой 15% :)

Тема в разделе "PHP для новичков", создана пользователем Invision, 6 июн 2011.

  1. Invision

    Invision Активный пользователь

    С нами с:
    26 фев 2009
    Сообщения:
    1.437
    Симпатии:
    1
    Адрес:
    Томск
    не могу шибко "нагружать свой мозг на 5 минут" (прикол с темы ниже), так вот.
    Есть:

    Дана начала аренды: 21.03.11
    Дата окончания аренды: 24.03.11

    Есть стоимость товара. Нужно чтобы каждый день прибавил 15% к стоимости. т.е к примеру
    21.03.11: 100руб.
    22.03.11: +15руб.
    23.03.11: +15руб.
    23.03.11: +15руб.

    Есть такой кусок:

    PHP:
    1.             $this->rent_deli_date = date('Y-m-d', strtotime($this->rent_start_date) - 86400);
    2.             $this->rent_ret_date = date('Y-m-d', strtotime($this->rent_end_date) + 86400);
    3.             $this->rent_money = $goods->goo_rent_cost * $this->rent_amount;
    $this->rent_money и должен иметь правильное значение. сейчас тупо перемножил цену на кол-во.

    Задача: Найти 15% от суммы, и прибавить пол кол-ву дней.от $this->rent_start_date до $this->rent_end_date
     
  2. tommyangelo

    tommyangelo Старожил

    С нами с:
    6 дек 2009
    Сообщения:
    2.549
    Симпатии:
    0
    Адрес:
    Мариуполь
    я правильно понял - каждый день увеличивает стоимость на 15% ?

    Тогда математически это будет (цена)*(1.15)^(количество дней)

    в пхп несложно перевести)
     
  3. Invision

    Invision Активный пользователь

    С нами с:
    26 фев 2009
    Сообщения:
    1.437
    Симпатии:
    1
    Адрес:
    Томск
    грубо говоря у меня:

    $start = 2011-11-23;
    $end = 2011-11-26
    $money = 120;
    $count = 2;

    из этого нужно получить $result = цена.

    Помогите правильно записать :) Уже конец дня мозги не варят совсем :(
     
  4. tommyangelo

    tommyangelo Старожил

    С нами с:
    6 дек 2009
    Сообщения:
    2.549
    Симпатии:
    0
    Адрес:
    Мариуполь
    тю, ну я ж написал))))

    120 * (1,15)^(3)
     
  5. Invision

    Invision Активный пользователь

    С нами с:
    26 фев 2009
    Сообщения:
    1.437
    Симпатии:
    1
    Адрес:
    Томск
    а блин, как теперь разницу между датами узнать формата Y-m-d :)
    p.s формула не канает. поставил цену 100р на 3 дня = 103р. эм...
     
  6. Volt(220)

    Volt(220) Активный пользователь

    С нами с:
    11 июн 2009
    Сообщения:
    1.640
    Симпатии:
    1
    tommyangelo
    А что так сложно?
    0,15*120*3+120=120*(0,15*3+1) проще же.

    Invision
    Код (Text):
    1. strtotime($this->rent_start_date)
    Это timestamp?
    Тогда
    Код (Text):
    1. floor((strtotime($this->rent_end_date)-strtotime($this->rent_start_date))/60/60/24)
     
  7. Invision

    Invision Активный пользователь

    С нами с:
    26 фев 2009
    Сообщения:
    1.437
    Симпатии:
    1
    Адрес:
    Томск
    ребят спасибо большое все клево :)
     
  8. tommyangelo

    tommyangelo Старожил

    С нами с:
    6 дек 2009
    Сообщения:
    2.549
    Симпатии:
    0
    Адрес:
    Мариуполь
    Volt(220)

    Тут надо задачу уточнять.

    Я написал, если цена увеличивается каждый день от текущей.
    Ты написал - от исходной)

    Что нужно автору - знает только он :)
     
  9. Volt(220)

    Volt(220) Активный пользователь

    С нами с:
    11 июн 2009
    Сообщения:
    1.640
    Симпатии:
    1
    tommyangelo
     
  10. tommyangelo

    tommyangelo Старожил

    С нами с:
    6 дек 2009
    Сообщения:
    2.549
    Симпатии:
    0
    Адрес:
    Мариуполь
    tommyangelo

    Ну, а вдруг он сам неправильно задачу понял)))

    Оффтоп.

    Мне знакомый юрист рассказывал любопытную историю с процентами)

    Предыстория.
    Есть магазин, торгующий занавесками. С ними можно подписать договор, стать дистрибьютором. Система какая - подписываешь договор, берешь товар, а деньги за него можно отдать в течение месяца или двух, точно не помню. Т.е. чтобы можно было "начать бизнес без стартового капитала".
    Но у них в договоре есть условие (как обычно написанное внизу и маленькими буквами) - если не возвращаешь деньги в течение срока, то на сумму начисляется пеня, в размере 1% каждый день

    Ситуация.
    Семейная пара решила попробовать свои силы, взяла товара на 500$. Точно не знаю почему за него не расплатились, может денег не было, может что еще.
    Магазин не стал им напоминать, выждал год.
    А после - направил юриста и потребовал возмещения долга вместе с пеней.
    За год (будем считать 365 дней) пеня составила 1,01^365*500 = 18891,7 $

    Ниче так))))
     
  11. Апельсин

    Апельсин Активный пользователь

    С нами с:
    20 мар 2010
    Сообщения:
    3.645
    Симпатии:
    2
    tommyangelo

    ничего тебя не смущает?)
     
  12. tommyangelo

    tommyangelo Старожил

    С нами с:
    6 дек 2009
    Сообщения:
    2.549
    Симпатии:
    0
    Адрес:
    Мариуполь
    а должно? :) Ты говори если что, могу тупить ;)
     
  13. Апельсин

    Апельсин Активный пользователь

    С нами с:
    20 мар 2010
    Сообщения:
    3.645
    Симпатии:
    2
    взяли 500 уе.
    дней - 365.
    пеня - 1% в день от 500 уе. (5 уе в день)

    итого: 5уе * 365 = 1825. это пеня. прибавь те 500 уе, что занимали. Но чтото 19К тут както не получается))
     
  14. karakh

    karakh Активный пользователь

    С нами с:
    11 дек 2007
    Сообщения:
    1.344
    Симпатии:
    0
    не. сложный процент. В первый день пеня 5 уе, во второй начисляется 1% уже не от 500 а от 505 и так далее.
     
  15. tommyangelo

    tommyangelo Старожил

    С нами с:
    6 дек 2009
    Сообщения:
    2.549
    Симпатии:
    0
    Адрес:
    Мариуполь
    Апельсин

    Чувак, в том то и прикол, что процент начисляется на сумму текущего долга, а она каждый день на 1% увеличивается)))

    0 день - 500 уе
    1 день - 500 + 500 * 0,01 = 505 уе
    2 день - 505 + 505 * 0,01 = 510,05 уе (а не 510)
    3 день - 510,05 + 510,05 * 0,01 = 515,1505 (а не 515)

    и.т.д)

    ХД будь аккуратен с кредитами))))
     
  16. Апельсин

    Апельсин Активный пользователь

    С нами с:
    20 мар 2010
    Сообщения:
    3.645
    Симпатии:
    2
    tommyangelo
    http://delo.ua/wiki/penja-133423/

    или вот:
    http://www.dtkt.com.ua/show/2cid15105.html

     
  17. tommyangelo

    tommyangelo Старожил

    С нами с:
    6 дек 2009
    Сообщения:
    2.549
    Симпатии:
    0
    Адрес:
    Мариуполь
    Апельсин

    Блин, ну я своими словами выразил, может это не пеня называется. Короче, суть в том, что именно сложный процент использовался.
     
  18. Апельсин

    Апельсин Активный пользователь

    С нами с:
    20 мар 2010
    Сообщения:
    3.645
    Симпатии:
    2
    tommyangelo
    ну если там в договоре написано, что клиент - дебил, и он его подписывает - то тут нечему удивляться :)
     
  19. karakh

    karakh Активный пользователь

    С нами с:
    11 дек 2007
    Сообщения:
    1.344
    Симпатии:
    0
    Вопрос законодательства. В некоторых странах тупо запрещены сложные проценты на пене. Там при наличии такого договора на бабки попадает магазин.