c++文本到多维数组



所以我需要编写一个程序来对这个文本文件中的数字求和:

3

22 5126717910121751622546

29 88888888888888888888888888888

40 2525255125133485451578436833138834387837

第一行显示行数,下面的行是我需要求和的数字。下列任意一行中的第一个数字表示第二个数字的位数。

输出文件应该像这样:

2525255125222374345594043632149474899271

我发现我必须使用多维数组。我是c++的新手,不习惯多维数组,所以我需要一些帮助。提前感谢!注:如果我的英语不好,我很抱歉。

由于这些整数相当大,您需要将它们存储在string中,并为这些字符串(实际上是大整数)定义操作符+

您可以执行以下操作来将它们存储在1D vector中,因为如果您真正执行BigInteger add,则"位数"不相关。同时,您只输出和而不是结果中的位数。

   vector<string> data;
   ifstream dataFile("dataInput.txt");   //or you can use stringstream
   long numbers = 0; 
   dataFile >> numbers;
   long digits = 0;
   string currentNum;   
   while (dataFile >> digits >> currentNum)
   {
     data.push_back(currentNum);
   }
   //now add those integers

Add for BigInteger很简单

相关内容

  • 没有找到相关文章

最新更新