Я должен сделать код для школы, который считает сумму цифр.Так как он должен работать с большими числами (80 000 цифр +), мне пришлось сначала считать массив, так как было невозможно поместить это большое число даже в long long int.У меня вопрос, почему этот код не работает?(работает с меньшими числами, например: 10 ^ 100), но когда я пробую действительно большие числа (10 ^ 10000), это не работает должным образом.Кто-нибудь может мне помочь, сказав, как или помочь мне исправить это?Спасибо
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
char pole [100000];
int c = 0;
int sum = 0;
int x = 0;
int t;
printf("Nacitaj cislo!\n");
scanf("%s", pole);
printf("Zadal si: %s\n", pole);
while (pole[c] != '\0') {
t = pole[c] - '0';
sum = sum + t;
c++;
}
while(1){
while(sum != 0){
x = x + sum % 10;
sum = sum/10;
}
if(x > 10){
sum = x;
}
else{
break;
}
}
printf("%d\n", x);
return 0;
}