How to calculate the sum of digits of 2 power 100 in C

1 Answer

0 votes
#include <stdio.h>
#include <math.h>

int sumDigits(char array[]) {
    int sum = 0;
    
    for(int i = 0; array[i]; i++) {
        if (array[i] != '.') {
            sum += (array[i] - '0');
        }
    }  
     
    return sum;
}

int main(void)
{
    int base = 2;
    int exponent = 100;
   
    double power = pow(base, exponent); 
     
    printf("%lf\n", power);

    char array[64] = "";

    snprintf(array, 32, "%.32f", power);

    printf("sum = %d\n", sumDigits(array));
     
    return 0;
}
  
   
   
   
/*
run:

1267650600228229401496703205376.000000
sum = 115

*/

 



answered Nov 10, 2023 by avibootz

Related questions

1 answer 132 views
1 answer 94 views
1 answer 135 views
1 answer 127 views
127 views asked Nov 9, 2023 by avibootz
1 answer 98 views
1 answer 131 views
...