大数乘法

大数乘法

乘法步骤:

    取bign 的某一位与int型整数相乘,再与进位相加,所得结果的个位数作为该位的结果,高位部分作为新的进位。

乘法部分程序:


//高精度乘法

bign mul(bign a,int b) 
{

    bign c;

    //进位 
    int carry=0;

    for(int i=0;i<a.len;i++)
    {
        int temp=a.d[i]*b+carry;

        //个位作为该位的结果 
        c.d[c.len++]=temp%10;

        //高位部分作为新的进位

        carry=temp/10; 


    }

    //这里和加法不一样,乘法的进位可能不止一位,因此用while 

    while(carry!=0)
    {
        c.d[c.len++]=carry%10;
        carry/=10;

    }

    return c;


}




全部评论

相关推荐

赛博小保安:你这简历没啥大问题的,经历技能也足够了,问题应该就是出在出身了,学院本就是这样,HR忙着跟92的勾搭呢,哪有心思看我们这些双非😿😭
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务