C++程序算出来的结果是错的咋改

问题遇到的现象和发生背景
用代码块功能插入代码,请勿粘贴截图
我想要达到的结果

img

img


这两个C++程序分别哪里出错了,程序可以运行,但是算出来的结果都是错的

主要问题是你没注意到C++中的除法与现实世界的除法有一个区别:C++的除法如果除数和被除数都是整形,则计算结果也是整形且只保留整数部分,丢弃小数部分。
举例说明:
现实世界的除法:1/10=0.1
C++的除法:1/10=0
如果想得到与现实世界相同的结果,你应该设法使两个操作数中的一个是小数,比如:
1.0/10或者1/10.0
如果两个操作数是整形变量,你可以在变量前加一个乘以1.0的操作,即:
int x,y;
double value = 1.0 * x / y;