大数乘法模板

原创 2015年11月21日 10:09:08
/*
两个非常大的数相乘
模拟乘法运算
*/
#include<iostream>
#include<cstdio>
#include<cstring>
#include<cstdlib>
#include<cmath>
#include<algorithm>
#include<stack>
#include<cmath>
using namespace std;


#define MAX_N 221  
int a1[MAX_N],a2[MAX_N];  
char s1[MAX_N],s2[MAX_N];  
int p[MAX_N*2];  
int main()  
{  
    gets(s1);  
    gets(s2);  
    int i,j;  
    
    
    int len1=strlen(s1);  
    //将数组里的内容变为0 
    memset(a1,0,sizeof(a1));  
    memset(a2,0,sizeof(a2));  
    memset(p,0,sizeof(p));  
    
    j=0;  
    for(i=len1-1; i>=0; i--)  //用数组倒着记录字符串里的数据 
    {  
        a1[j++]=s1[i]-'0';  
    }  
    j=0;  
    int len2=strlen(s2);  
    for(i=len2-1; i>=0; i--)  
    {  
        a2[j++]=s2[i]-'0';  
    }  
    
    for(i=0; i<len1; i++)  
    {  
        for(j=0; j<len2; j++)  
        {  
            p[i+j] += a1[i]*a2[j];//模拟乘法  可以自己在草稿纸上写乘法然后运算看看是否满足这个规律 
        }  
    }  
    
    
    for(i=0; i<MAX_N*2; i++)  //进位 
    {  
        if(p[i]>=10)  
        {  
            p[i+1]+=p[i]/10;  
            p[i]%=10;  
        }  
    }  
    
    for(i=MAX_N*2-1; i>=0; i--)  //找到第一个非零点 
    {  
        if(p[i])  
        break;  
    }  
    
    for(int k=i; k>=0; k--)  //从后往前输出 
    {  
        printf("%d",p[k]);  
    }  
    printf("\n");  
    return 0;  
}  

版权声明:本文为博主原创文章,未经博主允许不得转载。

【大数乘法】【模板记录】哈理工1159MAGI System

MAGI System Time Limit: 1000 MS Memory Limit: 65536 K Total Submit: 285(125 users) Total...

[BZOJ2179]-大数乘法-FFT模板

说在前面这题输入输出真的有毒… 细节调了me一晚上= =#…题目BZOJ2179传送门题面给出两个n位10进制整数x和y,你需要计算x*y。数字长度≤60000\leq 60000输入输出格式输入格...

高精度 大数加法 乘法 除法 幂 模板

高精度 大数加法 乘法 除法 幂 模板

高精度 大数加法 乘法 除法 幂 模板

转载请注明出处:http://blog.csdn.net/u012860063?viewmode=contents 一:加法 1、普通两个大数相加 代码如下: ...

大数加法和大数乘法模板函数

好多函数经常用到,于是写好模板以后直接调用~~~ 此处贡献本渣的C++版的大数加法和大数乘法模板, 在没有Java的恶劣环境下,渣渣用此模板度过了菜鸟时光(如今依旧菜鸟。。。。) 大数加法:...

大数乘法和大数除法模板

写在最前面的 找个时间整理一下代码,下次留着用,主要是大数乘法和大数除法的代码,坑了爹一个下午,很多的细节都疏忽了。 翻转字符串函数 反转字符串函数,方便索引各位数: void rever...

大数模板 大数加法,大数减法,大数乘法,大数除法,大数比较等操作

实现了一个大数模板类,包括加减乘除,求余,比较大小等等操作。 #include #include #include #include using namespace std; #defin...

大数乘法程序代码

  • 2013年02月28日 12:22
  • 16KB
  • 下载

大数乘法基本实现

  • 2011年11月21日 21:03
  • 962B
  • 下载

大数乘法——逐位与移位算法

逐位相乘处理进位法 移位相乘处理进位法
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:大数乘法模板
举报原因:
原因补充:

(最多只允许输入30个字)