Wpis z mikrobloga

Jak w #python mogę zrobić algorytm płatności za usługi na zasadzie, że wrzucam pewną ilość pieniędzy, i dla tych pieniędzy dostaje maksymalny czas korzystania z usługi (coś jak parkomat): pierwsza godzina - 2 zł, druga godzina 4 zł, każda kolejna godzina - 5 zł? Ale też obsługuje to interwały 15 oraz 30 minutowe. Czyli np wrzucę 1 zł mogę korzystać 30 min, wrzucę 2 zł mogę korzystać 1h, wrzucę 6 zł mogę korzystać 2h (bo pierwsza godzina 2 zł, druga 4 zł), wrzucę 11 zł mogę korzystać 3h itp. Najlepsza będzie funkcja, która przyjmuje wartość dodanych pieniędzy, a zwraca sekundy.
#programowanie #studbaza #java #csharp
  • 10
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Gaahl75:

return (18*(1*100))/60
18 to ilość groszy za minutę, 1*100 to złotówka pomnożona * 100 aby nie było błędów zaokrągleń float, dzielone przez 60 sekund

0.5 zł czyli 50groszy podstawione w takim wypadku zamiast 1zł zwraca 15 minut, funkcję regulujesz groszami
  • Odpowiedz
@Gaahl75: o pajtonie niewiele powiem sensownego, ale zakładając że projekt studencki i nikt w tym płacić nie będzie ( ͡° ͜ʖ ͡°) a chodzi tylko o napisanie jakiejś ifologii na zaliczenie, to... jechałbym TDD: zacząłbym od napisania prostego testów dla którejś z tych wartości, a potem dopisał kod który spełni te testy (serio, wtedy kod pisze się dziwnie łatwo), a potem znów dodał kolejny przypadek i
  • Odpowiedz
@Gaahl75:
1800 sekund dzielone przez 100 groszy, czyli 30 minut na złotówkę
ps w tym co napisałem dla dalszych godzin będzie coraz mniejsza ilość groszy na minutę a nie coraz większa jak napisałem
  • Odpowiedz