Python-2-一个简单的四则运算程序
文章目录
- Python-2-一个简单的四则运算程序
- 1 前言
- 2 问题的引出
- 3 程序编写
- 4 ChatGPT 4o给出的方案
1 前言
大家好,我们又见面了。前段时间有点摆烂,最近要恢复一下学习状态。我的学习路线与博客文章的内容,要做出以下的调整:
- 今后所有的博客文章,我都会使用Typora来完成(写写随笔真的十分方便);
- Python基础专栏,不再重述基本的语法(菜鸟教程 - 学的不仅是技术,更是梦想! (runoob.com)在这个链接里有详细的教程),我要做的是一些总结;
- 练习方式:让ChatGPT 4o生成一些题目,让我巩固一些知识点。
接下来我们开始看一个这样的问题。
2 问题的引出
编写一个程序,输入两个整数,计算它们的和、差、积和商,并输出结果。
3 程序编写
我先分享一开始我写的版本:
int1=int(input("请输入第一个整数:"))
int2=int(input("请输入第二个整数:"))
sum_int=int1+int2
de_int=int1-int2
times_int=int1*int2
chu_int=int1/int2
print("相加为",sum_int)
print("相减为",de_int)
print("相乘为",times_int)
print("相除为",chu_int)
我们输入4,2,结果如下:
请输入第一个整数:4
请输入第二个整数:2
相加为 6
相减为 2
相乘为 8
相除为 2.0
这个程序是可以Run出来的,但是我们忽略了一个问题,这个问题一开始我没有考虑到,请大家思考。
没错,如果除数是0呢?输入4,0,结果如下:
请输入第一个整数:4
请输入第二个整数:0
Traceback (most recent call last):
File "C:\Document\python学习\practice.py", line 9, in <module>
chu_int=int1/int2
ZeroDivisionError: division by zero
程序报错,所以要加入一个考虑除数为0的逻辑,才能保证程序的功能是完整的。因此我作出以下改进:
int1=int(input("请输入第一个整数:"))
int2=int(input("请输入第二个整数:"))
sum_int=int1+int2
de_int=int1-int2
times_int=int1*int2
if int2!=0:
chu_int=int1/int2
else:
print("分母不能为0,该除法无意义")
print("相加为",sum_int)
print("相减为",de_int)
print("相乘为",times_int)
if int2!=0:
print("相除为",chu_int)
else:
print("无法作除法")
再次输入4,0,结果如下:
请输入第一个整数:4
请输入第二个整数:0
分母不能为0,该除法无意义
相加为 4
相减为 4
相乘为 0
无法作除法
程序的功能完整了,这给我一个启示:编程的时候一定要考虑到每一种情况,以保证程序能够完整的完成任务。
4 ChatGPT 4o给出的方案
让我们看看这个神奇的大语言模型给出的方案:
# 获取用户输入并转换为整数
int1 = int(input("请输入第一个整数:"))
int2 = int(input("请输入第二个整数:"))
# 进行四则运算
sum_int = int1 + int2 # 加法
de_int = int1 - int2 # 减法
times_int = int1 * int2 # 乘法
# 初始化除法结果
chu_int = None
# 检查除数是否为零并执行除法运算
if int2 != 0:
chu_int = int1 / int2
else:
print("分母不能为0,该除法无意义")
# 输出结果
print("相加为", sum_int)
print("相减为", de_int)
print("相乘为", times_int)
# 仅在除法有效时输出结果
if chu_int is not None:
print("相除为", chu_int)
else:
print("无法作除法")
改进点:
- 除法结果初始化:初始化
chu_int
为None
,这样更明确地表明除法操作在特定条件下执行; - 结构清晰:将除法运算和输出的逻辑清晰地分开,使代码更易读和维护;
- 条件检查:使用
chu_int is not None
来判断除法是否成功,这是一种更好的编程习惯。
让我们输入4,0,结果如下:
请输入第一个整数:4
请输入第二个整数:0
分母不能为0,该除法无意义
相加为 4
相减为 4
相乘为 0
无法作除法
程序能够完整地完成任务。
让我们输入4,0,结果如下:
请输入第一个整数:4
请输入第二个整数:0
分母不能为0,该除法无意义
相加为 4
相减为 4
相乘为 0
无法作除法
程序能够完整地完成任务。
我觉得利用ChatGPT协助学习是一个很好的学习方式,接下来我会尽量一直保持这样的习惯。同一个任务描述,有着不同的方案(“一千个人一千个哈默雷特”),学习其他优秀的编程手的逻辑与思路在我看来也是很有必要的呢,下期见~