将分数转换为带有整数的小数C++
Converting a fraction into a decimal with integers in C++
是的。这是一个作业,老实说,这对我来说是一个脑筋急转弯。程序的目标或"问题"(如果你想用数学术语来看待它)是将两个数字相互分开。您可以将整数和分数相互除以。函数定义如下所示:
bool divide(int c1, int n1, int d1, int c2, int n2, int d2, char result[], int len)
c1, c2 - 整数
n1, n2 - 分子 1, 分子 2
d1, d2 - 分母 1, 分母 2
result[ ] - 要显示答案的字符数组
len - 结果中允许的字符数 []
我会简单地使用长除法并以这种方式找到我的答案,但由于有不使用双精度、浮点数或字符串的限制,我对我的方法的选择更加有限。
好消息是,我已经朝着最终解决方案走了很长一段路,并想就我的下一步行动征求意见。这是我到目前为止的过程:
1)将每个数字转换为不正确的分数
2) 取结果 1* (1/结果 2 )
3)找到解决方案的整数部分(如果有的话)
4) (从不正确的分数)取分子 % 分母来找到我拥有的混合分数的新分子
5)我现在在这里,试图为分母找到一个以10为基数的倍数,这样我就可以用十进制格式表示混合分数。任何指示都会有所帮助!
(A/B)/(C/D)
= (A/B) x (D/C) = (AD)/(BC)
因此,只需计算AD和BC,然后减少到最低项。
如果你想真正做除法,就像你在纸上做的那样。
相关文章:
- 如何反转整数参数包
- enum是C++中的宏变量还是整数变量
- 努力将整数转换为链表。不知道我在这里做错了什么
- 整数不会重复超过随机数
- 在C++中手动调整数组大小
- 检查输入是否不是整数或数字
- C++使用整数的压缩数组初始化对象
- 在C++中,将大的无符号浮点数四舍五入为整数的最佳方法是什么
- C++将浮点指针值舍入为小数位数
- 将浮点除法分解为整数和小数部分
- C++ 将数字的小数部分转换为整数
- 小数、双精度、整数等数据类型的范围
- 显示带小数位数的数字,而不是整数
- 小数并四舍五入为整数
- 如果我使用整数变量,如何在C++中获取小数
- 将分数转换为带有整数的小数C++
- 整数和无效操作数中的小数*已更新
- 检查string是否是有效的整数或小数(正负两种情况)
- 在取小数的整数次幂时保持精度
- 由正整数或正小数组成的字符串,转换为I数字格式