Advertisement
lorinczandras

Banki o3-mini-high tesztfeladathoz magyarázat

Feb 1st, 2025
40
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 1.78 KB | None | 0 0
  1. Magyarázat
  2. CSV beolvasás és számlák létrehozása
  3. A read_invoices függvény szűrt és ellenőrzött módon olvassa be a CSV fájlt, majd minden sorból létrehoz egy Invoice objektumot. A bemeneti adatok esetén figyelünk arra, hogy ne legyen hiányzó mező!
  4.  
  5. Bank konfiguráció és tranzakciós díjak
  6. A Bank osztály tartalmazza a bankhoz tartozó paramétereket (kamat, tranzakciós díj százalék, minimum és maximum díj), továbbá metódust a napi kamatláb kiszámítására.
  7.  
  8. Pénzmozgás szimuláció
  9. A simulate_cash_flow függvény egy idővonalon végigsimulálja a pénzmozgást:
  10.  
  11. A kimenő számlák összegeit letétként hozzáadja a banki egyenleghez a due_date-n.
  12. A bejövő számlákat a fizetési dátumuk szerint kifizetésként vonja le, csoportosítva partner szerint, és mindezen tranzakciókra kiszámolja a banki díjat és a globális tranzakciós adót.
  13. Minden nap, ha az egyenleg pozitív, kamatot számol.
  14. Optimalizáció
  15. Az optimize_schedule függvény véletlenszerű módosításokkal (egy számla fizetési dátumának változtatása) próbálja növelni a végső banki egyenleget. Az iterációk előrehaladását százalékos formában folyamatosan megjeleníti.
  16.  
  17. Futtatás
  18. A program parancssori argumentumként várja a CSV fájl elérési útját, valamint opcionálisan az iterációk számát.
  19.  
  20. Példa futtatás:
  21. ruby invoice_optimizer.rb -i 15000 utalasok.csv
  22.  
  23. Ez a példa egy alapvázat ad, amelyen tovább lehet finomítani a modellt (például a csoportosítás részletesebb kezelése, finomabb iteratív algoritmus, stb.). Fontos, hogy a bemeneti adatok és a bank paraméterek valós környezetben megfelelően legyenek validálva és szükség esetén bővítve a biztonsági ellenőrzéseket.
  24.  
  25. Remélem, ez a példa segít az indulásban!
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement