- Node.js (>= 10.16.0)
npm install
npm run test
- The system must determine the total fare for a ride based on the distance and waiting time, utilizing the
- formula: ฿4 * kilometer + ฿1 * minute of waiting
- The distance should be rounded up to the nearest 0.5 km, and waiting time should be rounded up to the nearest minute.
- The system is required to impose a minimum fare of 35 baht if the calculated fare falls below this threshold.
- For a given list of multiple rides, the system must compute the overall total fare.
- The fare calculation and minimum fare rules should be applied individually to each ride in the list.
- The system should generate a detailed invoice that includes:
Invoice:
Ride Fare: ฿70.00 for Distance: 15.0 km, Waiting Time: 10 minutes
Ride Fare: ฿35.00 for Distance: 7.0 km, Waiting Time: 5 minutes
Ride Fare: ฿40.00 for Distance: 8.2 km, Waiting Time: 6 minutes
Total Number of Rides: 3
Total Fare: ฿105.00
Average Fare Per Ride: ฿35.00
- ระบบจะต้องคำนวณค่าโดยสารรวมทั้งหมดของการเดินทาง
- โดยใช้สูตร: ฿4 * กิโลเมตร + ฿1 * นาทีที่รอ
- ระบบจะต้องปัดเศษของระยะทางที่เหลืออยู่ให้เป็น 0.5 กิโลเมตร และปัดเศษของเวลาที่รออยู่ให้เป็นนาที
- ระบบจะต้องคิดค่าโดยสารขั้นต่ำ 35 บาท หากค่าโดยสารที่คำนวณได้น้อยกว่านี้
- สำหรับรายการการเดินทางหลายรอบ ระบบจะต้องคำนวณค่าโดยสารรวมทั้งหมด
- ระบบจะต้องคำนวณค่าโดยสารและใช้กฎขั้นต่ำแยกตามการเดินทางแต่ละรอบ
- ระบบจะต้องสร้างใบแจ้งหนี้ที่มีรายละเอียดอย่างละเอียด ซึ่งรวมถึง:
Invoice:
Ride Fare: ฿70.00 for Distance: 15.0 km, Waiting Time: 10 minutes
Ride Fare: ฿35.00 for Distance: 7.0 km, Waiting Time: 5 minutes
Ride Fare: ฿40.00 for Distance: 8.2 km, Waiting Time: 6 minutes
Total Number of Rides: 3
Total Fare: ฿105.00
Average Fare Per Ride: ฿35.00