王者745 2021-03-31 18:55 采纳率: 66.7%
浏览 789
已采纳

请求指点这个实现快递计费系统

print("实现快递计费系统")

weight = int(input("请输入重量( kg )"))

n=input("请输入地区编号(01.华东地区 02.华南地区 03.华北地区):")

s=0

if weight>=2:

    if n=="01":

        p=26+3*(weight-2)#13元首重价格+超出部分每公斤3元

    elif n=="02":

        p=24+2*(weight-2)#12元首重价格+超出部分每公斤2元

    elif n=="03" :

        p=28+4*(weight-2)#14元首重价格+超出部分每公斤4元   

    #2公斤以下

elif weight<2 and weight>0:

    elif n=="01"

       p=13*weight#13元首重价格

    elif n=="02"

       p=12*weight#12元首重价格

    elif n="03"

       p=14*weight#14元首重价格

#输出此次快递价格

  print("您好,此件包裹价格为:",p,"元")

 

  • 写回答

1条回答 默认 最新

  • CSDN专家-黄老师 2021-03-31 20:47
    关注

    整个过程有两个大的条件,第一是大于2kg,第二是在0到2kg之内。

    大于2kg是首重价格+超出部分每公斤3元,超出部分可能有小数,需要向上取整,使用内置模块math可实现

    在0到2kg之内只需收取首重价格即可

    实现代码如下:

     

    import math
    print("实现快递计费系统")
    
    weight = int(input("请输入重量( kg )"))
    
    n=input("请输入地区编号(01.华东地区 02.华南地区 03.华北地区):")
    
    p=0
    
    if weight>=2:
    
        if n=="01":
    
            p=13+3*math.ceil(weight-2)#13元首重价格+超出部分每公斤3元
    
        elif n=="02":
    
            p=12+2*math.ceil(weight-2)#12元首重价格+超出部分每公斤2元
    
        elif n=="03" :
    
            p=14+4*math.ceil(weight-2)#14元首重价格+超出部分每公斤4元
    
        #2公斤以下
    
    elif 0 < weight < 2:
    
        if n=="01":
    
           p=13 #13元首重价格
    
        elif n=="02":
    
           p=12 #12元首重价格
    
        elif n=="03":
    
           p=14 #14元首重价格
    
    #输出此次快递价格
    
    print("您好,此件包裹价格为:",p,"元")
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥100 求数学坐标画圆以及直线的算法
  • ¥100 c语言,请帮蒟蒻写一个题的范例作参考
  • ¥15 名为“Product”的列已属于此 DataTable
  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 自己瞎改改,结果现在又运行不了了
  • ¥15 链式存储应该如何解决
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站