Cod sursa(job #213093)

Utilizator savimSerban Andrei Stan savim Data 8 octombrie 2008 17:42:32
Problema A+B Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.72 kb
#include <stdio.h>
#include <string.h>

int a[100], b[100];

void read(int a[]) {
     char c[100];
     
     scanf("%s", c);
     int k = strlen(c);
     
     a[0] = k;
     for (int i = 0; i < k; i++) 
         a[i + 1] = c[k - i - 1] - '0';
}

void write(int a[]) {
     for (int i = a[0]; i; i--)
         printf("%d", a[i]);
     printf("\n");
}

void add(int a[], int b[]) {
     int i = 0, t = 0;
     for (i = 1; i <= a[0] || i <= b[0] || t; i++, t /= 10)
         a[i] = (t += a[i] + b[i]) % 10;
     a[0] = i - 1;
}

int main() {

    freopen("adunare.in","r",stdin);
    freopen("adunare.out","w",stdout);

    read(a);
    read(b);
    
    add(a, b);
    write(a);
 
    return 0;
}