Cod sursa(job #2229945)

Utilizator nxssGrasu Pancreasu nxss Data 8 august 2018 15:28:02
Problema A+B Scor 0
Compilator c Status done
Runda Arhiva de probleme Marime 0.73 kb
#include <stdio.h>
#include <string.h>


int main (int argc, char **argv) {

	char a[100];
	char b[100];
	char c[100];
	char sum[100];

	FILE *in = fopen("adunare.in", "r+");
	fscanf(in,"%s\n%s", a,b);
	fclose(in);

	if(strlen(a) < strlen(b)) {
		strcpy(c, a);
		strcpy(a, b);
		strcpy(b, c);
	}

	int lena = strlen(a);
	int lenb = strlen(b);

	int rest = 0;

	for(int i = 1; i <= lena; i++) {
		int aux = b[lenb-i];
		if(lenb-i<0)
			aux = '0';
		
		int c = a[lena-i]-'0' + aux -'0' + rest;
		sum[i-1] = c % 10 + '0';
		rest = c / 10;
	}

	sum[lena] = rest + '0';
	sum[lena+1]= '\0';
	int slen = strlen(sum);

	FILE *out = fopen("adunare.out", "w+");	
	for(int i = slen-2; i >= 0; i--) {
		fprintf(out,"%c", sum[i]);
	}
	fclose(out);
	return 1;
}