首页 > 其他分享 >有进位的高精度加法

有进位的高精度加法

时间:2023-04-03 16:12:47浏览次数:31  
标签:201 高精度 int 位数 加法 include strlen 进位


【问题描述】
  有两个位数在200以内的高精度数a和b,请编程求出a与b之和。
  输入:两行,第一行为a,第二行为b。
  输出:一行,表示a与b之和C。
  注意:a与b的位数不一定相同。

【输入样例】

  省略

【输出样例】

  省略

#include<iostream>
#include<cstring> 
using namespace std;

int main()
{
    char a[201], b[201];
    int a2[201]={}, b2[201]={}, c2[202]={};
    cin >> a >> b;
    int lena = strlen(a), lenb = strlen(b);
    int max1 = max(lena, lenb);
    // 位数不同,倒序取整。 
    for(int i=0; i<=max1-1; i++)
    {
        a2[i] = a[lena-1-i] - 48;
        b2[i] = b[lenb-1-i] - 48;
    }
    // 大数相加,处理进位(不包含最高位),计算和。
    int x=0, lenc = 0, he;
    while(lenc < max1)
    {
        he = a2[lenc] + b2[lenc] + x;
        x = he/10;
        c2[lenc] = he%10;
        lenc++;
    } 
    // 判断数组a2和b2最高位的和是否产生进位。
    if(x==1) c2[lenc] = x;
    else lenc--;
    for(int i=lenc; i>=0; i--)
    {
        cout << c2[i];
    }
    return 0;
} 

 

标签:201,高精度,int,位数,加法,include,strlen,进位
From: https://www.cnblogs.com/dks0313/p/17283369.html

相关文章

  • java高精度定位系统源码 工厂人员定位系统源码
    这是一套java定位系统源码,工厂人员定位系统源码,UWB高精度定位系统源码,前后端分离架构,源码有演示。工厂人员定位系统,高精度的位置数据作为智能工厂数据流的重要组成部分,可实现对工厂内的人,车、物的精确定位,无缝追踪,智能调配与高效协同,可大幅提升工厂的精益生产及精细化管理水平,我们......
  • 基于matlab的高精度信号峰值检测算法
    1.算法描述       峰值检验是示波表中数据采集方式之一,这种技术起源于存储深度不能满足捕获毛刺的需要。如果用模拟示波器去观察,只有当毛刺信号是重复性的并且和主信号同步时,才能看到毛刺信号。由于毛刺源于其他电路系统,所以这些毛刺只是偶尔发生,并且和主信号......
  • 【codevs3119】高精度开根号(二分答案)
    problem高精度开根号输入一个数求平方根solution二分答案,如果mid*mid>原数就去找更小的,反之找更大的。精度小于二忽略不计?用到高精加,高精乘,加低精,除低精,比较大小这几个......
  • 高精度算法-高精度加法
    为什么要用高精度因为有的题目的数据很大,超出longlong的范围,所以我们需要用高精度来计算:首先是高精度加法:高精度加法就是仿照我们竖式加法进行操作,逐位相加,注意进位!!!题......
  • Python Django 加法计算器案例
    创建add应用在templates内新建add.html文件:<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"/><metahttp-equiv="X-UA-Co......
  • 用js进行加法计算
    html加js代码1<!DOCTYPEhtml>2<htmllang="en">34<head>5<metacharset="UTF-8">6<metahttp-equiv="X-UA-Compatible"content="IE=edge">......
  • C#下利用高精度计时器进行计时操作
    简介精确的时间计量方法在某些应用程序中是非常重要的。常用的WindowsAPI方法GetTickCount()返回系统启动后经过的毫秒数。另一方面,GetTickCount()函数仅有1ms的......
  • 高精度模板2--zhengjun
    只支持非负数,用vectoer实现。#include<bits/stdc++.h>usingnamespacestd;usingll=unsignedlonglong;usingbigint=unsignedlonglong;usingbigbig=__int128;......
  • 高精度算法-加法(附完整源码)
    前言:基础的加法,类似a+b都很熟悉,但是整型之间的加法是存在范围限制的,比如int类型的范围是【-231,+231-1】,即使是longlong类型也有着【-263,+263-1】的范围,一旦超过这个范围,计......
  • 有符号数的加法
    有符号数的加法,从无符号的加法章节就提及过,只要加数有一方为有符号数,则和一定是有符号数,重点强调一下,大家千万不要从场景上分析,认为C=A+B一定是>0,则及时A和B有一个是有符......