三公里内含三公里收费12元,超过三公里每公里收费两元,使用switch实现
时间: 2024-04-29 13:21:18 浏览: 14
```python
distance = int(input("请输入您的行驶距离(单位:公里):"))
if distance <= 3:
fee = 12
else:
fee = 12 + (distance - 3) * 2
print("您需要支付的车费为:{}元".format(fee))
```
使用switch语句实现:
```python
distance = int(input("请输入您的行驶距离(单位:公里):"))
switch_distance = {
1: 12,
2: 12,
3: 12,
}
fee = switch_distance.get(distance, 12 + (distance - 3) * 2)
print("您需要支付的车费为:{}元".format(fee))
```
注:Python中没有原生的switch语句,可以使用字典类型来实现类似的功能。
相关问题
用C语言的switch计算出租车收费的程序,当里程在3公里以内含3公里时收费12, 超过3公里(在0和1之间均计1公里)的部分每公里收费2元。
好的,以下是使用switch语句实现租车收费的程序:
```c
#include <stdio.h>
int main()
{
int distance; // 里程
int fee; // 收费
printf("请输入里程数:");
scanf("%d", &distance);
switch (distance)
{
case 0:
case 1:
case 2:
case 3:
fee = 12;
break;
default:
fee = 12 + (distance - 3) * 2;
break;
}
printf("收费:%d元\n", fee);
return 0;
}
```
以上代码中,我们使用了switch语句根据输入的里程数进行判断,如果里程在3公里以内,收费为12元;如果里程超过3公里,每公里收费2元。由于0~3公里之间的每个公里收费都是12元,所以我们将这些情况都归为一类,使用了case 0:、case 1:、case 2:和case 3:。如果里程超过3公里,则将超出的公里数乘以2,再加上12元的起步费即可。
分别使用三日运算符/switch语句实现一元二次方程的我解。
使用三目运算符实现一元二次方程的解:
```python
a, b, c = 1, 2, 1
x1 = (-b + (b**2 - 4*a*c)**0.5) / (2*a) if a != 0 else None
x2 = (-b - (b**2 - 4*a*c)**0.5) / (2*a) if a != 0 else None
print("x1 =", x1, "x2 =", x2)
```
使用switch语句实现一元二次方程的解:
```python
a, b, c = 1, 2, 1
delta = b**2 - 4*a*c
switch = {
delta > 0: ("x1 = " + str((-b + delta**0.5) / (2*a)), "x2 = " + str((-b - delta**0.5) / (2*a))),
delta == 0: ("x1 = x2 = " + str(-b / (2*a)),),
delta < 0: ("无实数解",)
}
print("\n".join(switch.get(True)))
```