Submission details
Task:ModAdd
Sender:idan
Submission time:2016-09-24 15:33:20 +0300
Language:C++
Status:COMPILE ERROR

Compiler report

input/code.cpp: In function 'int main()':
input/code.cpp:53:21: error: '_strrev' was not declared in this scope
  puts(_strrev(result));
                     ^
input/code.cpp:55:16: error: 'system' was not declared in this scope
  system("Pause");
                ^
input/code.cpp:32:19: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
  scanf("%s", numA);
                   ^
input/code.cpp:33:19: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
  scanf("%s", numB);
                   ^

Code

/*********************************
* Class: MAGSHIMIM C2			 *
* Week 1               			 *
**********************************/

#include <stdio.h>
#include <math.h>
#include <string.h>



char *strrev(char *str){
	char c, *front, *back;

	if (!str || !*str)
		return str;
	for (front = str, back = str + strlen(str) - 1; front < back; front++, back--){
		c = *front; *front = *back; *back = c;
	}
	return str;
}

char numA[1000000] = { 0 };
char numB[1000000] = { 0 };
char result[1000000] = { 0 };

int main(void)
{
	int i = 0, currentAlsd = 0, currentBlsd = 0, currentDigit = 0;


	scanf("%s", numA);
	scanf("%s", numB);

	int aIndex = strlen(numA) - 1;
	int bIndex = strlen(numB) - 1;
	int maxLength = strlen(numA) > strlen(numB) ? strlen(numA) : strlen(numB);

	//printf("MaxLength : %d", maxLength);
	//system("pause");

	for (i = 0; i < maxLength; i++)
	{
		currentAlsd = aIndex < 0 ? 0 : numA[aIndex--] - '0';
		currentBlsd = bIndex < 0 ? 0 : numB[bIndex--] - '0';
		currentDigit = (currentAlsd + currentBlsd) % 10;
		result[i] = currentDigit + '0';
		//puts(result);
		//printf("iteration %d : A lsd: %d B lsd: %d", i, currentAlsd, currentBlsd);

	}

	puts(_strrev(result));

	system("Pause");

}