yznldzd 发表于 2020-10-4 10:45:53

课后作业37讲动动手第0问

我的代码如下:
class Price:
    jobadu = 100#工作日成年人的票价
    reladu = 120#休息日成年人的票价
    jobkid = 50#工作日儿童的票价
    relkid = 60#休息日儿童的票价
    def jobdayprice(self):#工作日总票价计算方法
      adunum = input('请输入成年人的数量')
      kidnum = input('请输入儿童的数量')
      jobdaytotalprice=adunum*self.jobadu+self.jobkid*kidnum
      print('您及您的随行人工作日游玩需花费%s元'%int(jobdaytotalprice))
    def reldayprice(self):#休息日总票价计算方法
      adunum = input('请输入成年人的数量')
      kidnum = input('请输入儿童的数量')
      reldaytotalprice=adunum*self.reladu+self.relkid*kidnum
      print('您及您的随行人工作日游玩需花费%s元'%int(reldaytotalpric))
   

tt = Price()
tt.jobdayprice()

运行结果如下:
请输入成年人的数量5
请输入儿童的数量2
您及您的随行人工作日游玩需花费555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555522222222222222222222222222222222222222222222222222元

请问各位大佬哪里出了问题

昨非 发表于 2020-10-4 10:53:34

class Price:
    job_adu = 100#工作日成年人的票价
    rel_adu = 120#休息日成年人的票价
    job_kid = 50#工作日儿童的票价
    rel_kid = 60#休息日儿童的票价
    def jobdayprice(self):#工作日总票价计算方法
      adu_num = int(input('请输入成年人的数量'))
      kid_num = int(input('请输入儿童的数量'))         #输入需要将字符串转为int,不然是字符串拼接,而非相加
      jobday_totalprice=adu_num*self.job_adu+self.job_kid*kid_num
      print('您及您的随行人工作日游玩需花费%s元'%jobday_totalprice)
    def reldayprice(self):#休息日总票价计算方法
      adu_num = int(input('请输入成年人的数量'))
      kid_num = int(input('请输入儿童的数量'))
      relday_totalprice=adu_num*self.rel_adu+self.rel_kid*kid_num
      print('您及您的随行人工作日游玩需花费%s元'%relday_totalprice)#这里少打了个e
   

tt = Price()
tt.jobdayprice()

满意的话记得给个最佳

1q23w31 发表于 2020-10-4 10:53:41

class Price:
    jobadu = 100#工作日成年人的票价
    reladu = 120#休息日成年人的票价
    jobkid = 50#工作日儿童的票价
    relkid = 60#休息日儿童的票价
    def jobdayprice(self):#工作日总票价计算方法
      adunum = int(input('请输入成年人的数量'))
      kidnum = int(input('请输入儿童的数量'))
      jobdaytotalprice=adunum*self.jobadu+self.jobkid*kidnum
      print('您及您的随行人工作日游玩需花费%s元'%int(jobdaytotalprice))
    def reldayprice(self):#休息日总票价计算方法
      adunum = int(input('请输入成年人的数量'))
      kidnum = int(input('请输入儿童的数量'))
      reldaytotalprice=adunum*self.reladu+self.relkid*kidnum
      print('您及您的随行人工作日游玩需花费%s元'%int(reldaytotalpric))
   

tt = Price()
tt.jobdayprice()

input返回的是字符型变量取个整就好了
页: [1]
查看完整版本: 课后作业37讲动动手第0问