高精度任意长度实数乘法

本文旨在实现高精度任意长度实数乘法,包括三个关键模块:字符串转整型数组、高精度乘法算法及结果输出。具体描述了每个模块的功能,并提供了ACM题库中1063题的背景,虽然代码经过验证,但在某些平台未通过测试。
摘要由CSDN通过智能技术生成

目标:实现一个高精度实数乘法所需模块

模块:  1、字符串转整型数组模块:将字符串转化为整型数组存储。

   2、乘法算法模块:实现两个整型数组表示的实数相乘,结果用整型数组保存。

   3、输出模块:将得到的结果根据不同的需求输出.

1、字符串转整型数组模块:将字符串转化为整型数组存储。

inline long long trans_to_num(const string &one,vector<type> &multiOne){
	long long i = 0,tmp = 0;
	multiOne.clear();
	type temp;
	//存储的是除了.外的数字元素 前面后面都有可能有0
	for(i = one.size()-1;i>=0;--i){
		if(one[i] == '.')
			tmp = i;
		else
			multiOne.push_back(one[i] - '0');
	}
	if(tmp != 0)
		tmp = one.size()-1-tmp;
	return tmp;
}

 2、乘法算法模块:实现两个整型数组表示的实数相乘,结果用整型数组保存。

vector<type> preci_multi(const vector<type> &multiOne,const vector<type> &multiTwo){
	
	
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值