作业:
问题:如果有人给狗增加100岁,程序怎么能以下判断出问题并提示狗狗活不了这么长啊?
1.直接修改属性的值
2.通过方法修改属性的值
我的答案
通过查资料发现:一般狗狗的寿命为12~15年,在这里统一限定所有狗狗的寿命小于或等于15
代码20行self.age =self.age + age可以改为更简洁的做法:self.age += age
代码中的方法increment_age()是指在狗狗原来的年龄上再增加多少岁,而代码34行输入8,意思是在狗狗4岁基础上再增加8岁,所以结果为12
但是当我把输入改为13时结果如下:
得到的结果为17,可狗狗最多只能活到15岁,这就有问题了。原因是19行代码if语句里先判断输入的数字是否小于或等于15,如果为True执行后面的内容,而输入13<15,所以结果输出为17。
我把17~23行代码改一下就可以了,先计算结果,再判断结果是否小于15即可,如下:
这样得到的结果才是我们想要的,同时也回答了大大提出的问题,不管给狗狗增加多少岁,只要狗狗的年龄超过15岁,代码就提示:狗狗活不了那么长时间。