Java - Bài tập tính tiền taxi

Viết hàm tính tiền đi taxi Mai Linh với số km đi được nhập từ bàn phím, biết:

  • Giá mở cửa: 14.000đ/ 0.8km.
  • Tiếp theo đến 25km: 16.300đ/ km.
  • Từ km thứ 26: 13.300đ/ km.

Bài giải

-------------------- ######## --------------------

Bài giải.
package vong_lap_while;

import java.util.Scanner;

public class TinhTienTaxi {

	public static void main(String[] args) {
		float km;
		Scanner scanner = new Scanner(System.in);
		long money = 0;
		final int STARTING_FEE = 14000;	// khai báo hằng số giá mở cửa
		final int NEXT_TO_25KM = 16300;	// từ km tiếp theo đến km thứ 25
		final int FROM_26KM_ONWARDS = 13300;	// từ km thứ 26 trở đi
		
		System.out.println("Nhập vào số km đã đi: ");
		km = scanner.nextFloat();
		
		while (km < 0) {
			System.out.println("Số km nhập vào phải lớn hơn 0. Mời bạn nhập lại: ");
			km = scanner.nextInt();
		}
		
		if (km <= 0.8) {
			money = 14000;
		} else if (km <= 25) {
			money = (long) (STARTING_FEE + NEXT_TO_25KM * (km - 0.8));
		} else {
			money = (long) (STARTING_FEE + 16300 * (25 - 0.8) + 13300 * (km - 25 - 0.8));
		}
		
		System.out.println("Số tiền đi " + km + " km = " + money + " đồng.");
	}

}
Kết quả sau khi biên dịch chương trình:

Nguồn: freetuts.net