亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

C語言實(shí)現(xiàn)高精度加法

 更新時(shí)間:2021年05月03日 11:39:08   作者:summer_awn  
這篇文章主要為大家詳細(xì)介紹了C語言實(shí)現(xiàn)高精度加法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

本篇為高精度加法的計(jì)算,接下來我還會(huì)去寫高精度乘法的計(jì)算。

一、高精度運(yùn)算的概念

高精度運(yùn)算其實(shí)就是參與運(yùn)算的數(shù)完全超出基本數(shù)據(jù)類型所能表示的范圍的運(yùn)算(例如int型范圍就是 - 2147483648 ~+ 2147483647)
所以如果想求較大數(shù)的話就要創(chuàng)建新的數(shù)據(jù)類型

二、數(shù)據(jù)類型的選取

我選擇的是int型數(shù)組,這樣比較便于計(jì)算和理解

三、代碼

其中a和b我是通過隨機(jī)數(shù)來賦值

//author   summer_awn
//date    2017/6/20
 
#include<iostream>
#include<time.h>
 
#define lenth_a 200
#define lenth_b 200
 
using namespace std;
 
//計(jì)算a+b
void main() {
 
 srand((unsigned)time(NULL));
 
 int * a = new int[lenth_a];//數(shù)組a            ******
 
 for (int i = 0; i < lenth_a; ++i) {
 
  a[i] = rand() % 10;
 
 }
 
 cout << "a=";
 for (int i = lenth_a - 1; i >= 0; --i) {//輸出a
  cout << a[i];
 }
 cout << endl;
 cout << endl;
 
 int * b = new int[lenth_b];//數(shù)組b            ******
 
 for (int i = 0; i < lenth_a; ++i) {
 
  b[i] = rand() % 10;
 
 }
 
 cout << "b=";
 for (int i = lenth_b - 1; i >= 0; --i) {//輸出b
  cout << b[i];
 }
 cout << endl;
 cout << endl;
 
 
 
 int lenth_result;//結(jié)果的長度en
 
 if (lenth_a > lenth_b) lenth_result = lenth_a + 1; 
 else lenth_result = lenth_b + 1;//通過一個(gè)判斷來確定結(jié)果的長度
 
 
 int * a2 = new int[lenth_result];//a2***********
 
 int * b2 = new int[lenth_result];//b2***********
 
 memcpy(a2, a, sizeof(int)*lenth_a);//
 
 memset(a2 + lenth_a, 0, sizeof(int)*(lenth_result - lenth_a));
 
 memcpy(b2, b, sizeof(int)*lenth_b);
 
 memset(b2 + lenth_b, 0, sizeof(int)*(lenth_result - lenth_b));
 
 delete(a);
 delete(b);
 
 int * result = new int[lenth_result];//result*********
 
 result[0] = a2[0] + b2[0];
 
 for (int i = 1; i < lenth_result - 1; ++i) {
 
  result[i] = a2[i] + b2[i] + result[i - 1] / 10;
 
  result[i - 1] = result[i - 1] % 10;
 }
 
 result[lenth_result - 1] = result[lenth_result - 2] / 10;
 
 result[lenth_result - 2] = result[lenth_result - 2] % 10;
 
 delete(a2);
 delete(b2);
 
 cout << "結(jié)果=";
 for (int i = lenth_result - 1; i >= 0; --i) {
  cout << result[i];
 }
 cout << endl;
 
 system("pause");
 
 delete(result);
}

四、結(jié)果

結(jié)果有截圖,未驗(yàn)證(因?yàn)閼校?/p>

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 深入了解C++的多態(tài)與虛函數(shù)

    深入了解C++的多態(tài)與虛函數(shù)

    這篇文章主要為大家詳細(xì)介紹了C++多態(tài)與虛函數(shù),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-07-07
  • 基于QT實(shí)現(xiàn)顯示OpenCV讀取的圖片

    基于QT實(shí)現(xiàn)顯示OpenCV讀取的圖片

    OpenCV自帶了一部分常用的GUI功能,但是更多的圖像處理功能需要其他GUI框架來輔助實(shí)現(xiàn),本文將通過QT來顯示OpenCV讀取的圖片,需要的可以參考一下
    2022-11-11
  • C/C++ Qt 基本文件讀寫的基本使用(2種實(shí)現(xiàn))

    C/C++ Qt 基本文件讀寫的基本使用(2種實(shí)現(xiàn))

    文件的讀寫是很多應(yīng)用程序具有的功能,本文主要介紹了兩種實(shí)現(xiàn)方法,第一種使用QFile類的IODevice讀寫功能直接讀寫,第二種是利用 QFile和QTextStream結(jié)合起來,用流的方式進(jìn)行文件讀寫
    2021-11-11
  • 深入理解C預(yù)處理器

    深入理解C預(yù)處理器

    下面小編就為大家?guī)硪黄钊肜斫釩預(yù)處理器。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2016-08-08
  • C/C++函數(shù)參數(shù)傳遞機(jī)制詳解及實(shí)例

    C/C++函數(shù)參數(shù)傳遞機(jī)制詳解及實(shí)例

    這篇文章主要介紹了C/C++函數(shù)參數(shù)傳遞機(jī)制詳解及實(shí)例的相關(guān)資料,需要的朋友可以參考下
    2017-02-02
  • 通過c++的sort函數(shù)實(shí)現(xiàn)成績排序功能

    通過c++的sort函數(shù)實(shí)現(xiàn)成績排序功能

    這篇文章主要介紹了通過c++的sort函數(shù)實(shí)現(xiàn)成績排序,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-02-02
  • C++深入分析講解智能指針

    C++深入分析講解智能指針

    為了解決內(nèi)存泄漏的問題,C++中提出了智能指針。內(nèi)存泄漏的產(chǎn)生原因有很多,即使我們正確的使用malloc和free關(guān)鍵字也有可能產(chǎn)生內(nèi)存泄漏,如在malloc和free之間如果存在拋異常,那也會(huì)產(chǎn)生內(nèi)存泄漏。這種問題被稱為異常安全
    2022-05-05
  • 基于linux下獲取時(shí)間函數(shù)的詳解

    基于linux下獲取時(shí)間函數(shù)的詳解

    本篇文章是對(duì)linux下獲取時(shí)間的函數(shù)進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-05-05
  • c++打印封裝每次打印前面加上時(shí)間戳問題

    c++打印封裝每次打印前面加上時(shí)間戳問題

    這篇文章主要介紹了c++打印封裝每次打印前面加上時(shí)間戳問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-01-01
  • C語言數(shù)據(jù)結(jié)構(gòu)之棧與隊(duì)列的相互實(shí)現(xiàn)

    C語言數(shù)據(jù)結(jié)構(gòu)之棧與隊(duì)列的相互實(shí)現(xiàn)

    這篇文章主要為大家詳細(xì)介紹了如何利用C語言相互實(shí)現(xiàn)數(shù)據(jù)結(jié)構(gòu)中的棧與隊(duì)列,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下
    2022-07-07

最新評(píng)論