1074 宇宙无敌加法器 (20分)

1074 宇宙无敌加法器 (20分)_第1张图片
1074 宇宙无敌加法器 (20分)_第2张图片

#include
#include 
using namespace std;
void zhuan(string s, int a[20])
{
 int t = 0;
 for (int i = s.length() - 1; i >= 0; i--)
 {
  a[t] = s[i] - 48;
  t++;
 }
}
int main()
{
 string s, s1, s2;
 int a[21] = { 0 }, b[21] = { 0 }, c[21] = { 0 };
 int l, l1, l2, t = 0, num, jin=0, n = 0;
 int  d[25] = { 0 };
 cin >> s >> s1 >> s2;
  zhuan(s, a);
  zhuan(s1, b); l1 = s1.length();
  zhuan(s2, c); l2 = s2.length();
  l = l1;
  if (l2 > l) l = l2;
  for (int i = 0; i < l; i++, n++) {
   if (a[i] == 0)
    a[i] = 10;
   num = b[i] + c[i] + jin;
   jin = num / a[i];
   num = num % a[i];
   d[n] = num;
  }
  if (jin != 0) {
   d[n] = jin;
  }
  int start=0;
  for (int i = n; i >= 0; i--)
   if (d[i] != 0) {
    start = i; break;
   }
  for (int i = start; i >= 0; i--)
   printf("%d", d[i]);
 return 0;
}

你可能感兴趣的:(PTA乙级题)