2-10某加油站有a、 b、C 3种汽油,单价分别为6. 12,5.95, 5.75(元/千克)。同时,该加油站提供自动加油、手工加油两种服务模式,分别给予2%和5%的优惠。编写程序实现功能:当用户输入加油量,汽油类型和服务模式后,输出应付款用java
时间: 2024-09-13 11:03:48 浏览: 49
Duolingo-Premium-v5.95.2_build_1580-Mod_yxssp.com.apk
在Java中实现上述功能,我们首先需要创建一个简单的类来存储汽油的价格和相应的优惠信息。然后,通过接收用户输入的加油量、汽油类型和服务模式,我们可以计算出最终的应付款。
下面是一个简单的Java程序实现:
```java
import java.util.Scanner;
public class PetrolStation {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
// 汽油价格
double priceA = 6.12;
double priceB = 5.95;
double priceC = 5.75;
// 优惠
double discountAuto = 0.98; // 自动加油2%优惠
double discountManual = 0.95; // 手工加油5%优惠
// 输入数据
System.out.println("请输入加油量(千克):");
double litres = scanner.nextDouble();
System.out.println("请选择汽油类型(A、B、C):");
char petrolType = scanner.next().toUpperCase().charAt(0);
System.out.println("请选择服务模式(自动加油:1,手工加油:2):");
int serviceMode = scanner.nextInt();
double totalPayment = 0;
switch (petrolType) {
case 'A':
totalPayment = litres * priceA;
break;
case 'B':
totalPayment = litres * priceB;
break;
case 'C':
totalPayment = litres * priceC;
break;
default:
System.out.println("无效的汽油类型!");
scanner.close();
return;
}
if (serviceMode == 1) {
totalPayment *= discountAuto; // 自动加油
} else if (serviceMode == 2) {
totalPayment *= discountManual; // 手工加油
} else {
System.out.println("无效的服务模式!");
scanner.close();
return;
}
System.out.printf("应付款为:%.2f元\n", totalPayment);
scanner.close();
}
}
```
上述程序首先导入了`Scanner`类,用于接收用户的输入。然后定义了三个汽油的价格和两种服务模式的优惠率。程序通过`Scanner`对象接收用户输入的加油量、汽油类型和服务模式。根据输入的汽油类型计算应付款额,并根据服务模式应用相应的优惠。最后,输出应付款额。
请注意,这个程序没有做太多的错误检查,所以在实际使用中可能需要增加更多的异常处理和输入验证来确保程序的健壮性。
阅读全文