除法
Qt编写的大数据的运算,包括基础的四则运算,阶乘
流浪者之路
原创
关注
1点赞·1300人阅读
编写背景:在平常的编程中我们会遇到很多的大数据,这些数据的值超出了整型int的最大范围;甚至超过了long long的数据范围;遇到这种情况,我们的数据处理就会变的十分的麻烦。因为我们不可以使用整型变量来表示这些值当然也就不可使用四则运算来,就算这些值的加减乘除的算术。当遇到这种情况的时候,我么就需要来使用字符串来表示一个数 ;
当然,也要使用字符串来进行相应的四则运算了;
环境:QT编译器; 使用语言:C++;
基本思路:
加法和减法是最基础的算法,要想实现乘法和除法的运算必定要先实现加法和减法的运算;
加法:
数据的加法是以小数点为中轴对齐进行计算;整数部分是以个位数开始,相加大于十就向前进一位;小数部分先把两个字符串补齐到一样长,然后按照整数部分加法进行计算;先计算小数部分,后计算整数部分;
减法:
数据的减法,依旧是先计算小数,后计算整数,把数据每一个单数转换成整型;减去减数每一个单数的整型;如果不够,则借一位;
乘法:
用两个for循环,内循环是循环被乘数,外循环为循环乘数;内循环每次取被乘数的一位,乘以外循环的一位数;
最后把每次外循环所得到的数相加,
除法:
由于除数和被除数都是大数据,所以,每次取除数长度的被除数与除数相除;而所取的被除数是用乘法循环0-9进行判断,得到单个的商;
单个的商乘以除数,与取得指定长度被除数相减;得到的差插入到剩下的被除数前
获得字符串长度的确是用sizeof,但是对于命令行参数数组char argv[]却不能这样,因为参数数组argv是一个字符串数组(注意那个星号),就是多个字符串组成的数组,每个字符串是一个命令行参数。
正确的方法是遍历,int argc这个是命令行参数个数,就是总共有几个命令行参数字符串,用参数个数作为循环条件,然后用sizeof每一个字符串(记为argv[i])就能得到每个参数字符串长度了。
用Qt的话还是用QFile读取文件吧,功能比较强大,配套的QString或者IO
Stream的功能同样强大,处理起来会很方便
问题是你描述的太简单了,就是去Qt assistant看看QFile怎么用就可以了
以上就是关于qt怎么对数组内的数据快速进行运算全部的内容,包括:qt怎么对数组内的数据快速进行运算、如何获得一个char数组长度、QT读取文件到数组等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)