回 帖 发 新 帖 刷新版面

主题:难题

[b]星期天上午小明乘出租车去本市的外婆家。出租车计价方案为:2公里以内起步价是6元,超过2公里之后按1.8元/公里计价,超过10公里之后在1.8元/公里的基础上加价50%,另外,停车等候则按时间计费:1元/3分(注:不满3分钟不计费)。已知:小明到外婆家路程为N公里,中间停车等候时间总共M分钟,请计算小明到外婆家的出租车费用是多少元? 输入:N M(N,M都是整数) 输出:一个实数(表示车费,精确到0.1元) 例如:输入:8 7 输出:18.8[/b][i]星期天上午小明乘出租车去本市的外婆家。出租车计价方案为:2公里以内起步价是6元,超过2公里之后按1.8元/公里计价,超过10公里之后在1.8元/公里的基础上加价50%,另外,停车等候则按时间计费:1元/3分(注:不满3分钟不计费)。已知:小明到外婆家路程为N公里,中间停车等候时间总共M分钟,请计算小明到外婆家的出租车费用是多少元? 输入:N M(N,M都是整数) 输出:一个实数(表示车费,精确到0.1元) 例如:输入:8 7 输出:18.8[/i]

回复列表 (共22个回复)

沙发

CLS
 INPUT n, m
 p = 6
 IF n > 2 AND n <= 10 THEN p = p + 1.8 * (n - 2)
 IF n > 10 THEN p = p + 1.8 * 8 + 2.7 * (n - 10)
 p = p + m \ 3
 IF p = FIX(p) THEN PRINT LTRIM$(STR$(p)); ".0": END
 PRINT LTRIM$(STR$(p))
END

板凳

你打错了!!!

3 楼

cls
input n,m
select  case n
 case >10 
 s=(6+(n-2)*1.8)* 1.5
 case > 2 amd <10
 s=(6+(n-2)*1.8)
 case else
 s=6
end select
if m>= 3 then s=m*3+s
s=int (s*10)
print s
end

4 楼

[quote]你打错了!!!
[/quote]
我没打错!不信你运行一下!

[fly]切切切切[/fly]

5 楼

还有比你这更简单的。

6 楼

[u][color=0000FF]CLS
INPUT n, m
p = 6 + ABS(((n > 2) + (n <= 10) = -2)) * 1.8 * (n - 2)
p = p + ABS(ABS(n > 10)) * .9 * (n - 10) + m \ 3
PRINT LTRIM$(STR$(p)); : IF FIX(p) = p THEN PRINT ".0"
END
这样行吗[/color][/u]

7 楼

太麻烦了

8 楼

cls
input n,m
select  case n
 case >10 
 s=(6+(n-2)*1.8)* 1.5
 case > 2 amd <10
 s=(6+(n-2)*1.8)
 case else
 s=6
end select
if m>= 3 then s=m*3+s
s=int (s*10)
print s
end

9 楼

哪里麻烦?哪里麻烦?这是最简单的办法!

10 楼


我支持你!他就是麻烦了!你说得对!我做一个给你looklook,看看麻不麻烦

我来回复

您尚未登录,请登录后再回复。点此登录或注册