# Project Euler Problem 8

This is a discussion on Project Euler Problem 8 within the C Programming forums, part of the General Programming Boards category; I'm having a bit of trouble solving this problem. The objective is to find the largest product of five consecutive ...

1. ## Project Euler Problem 8

I'm having a bit of trouble solving this problem. The objective is to find the largest product of five consecutive digits in this 1,000 digit number.
Code:
```#include <stdio.h>

int main(void)
{
char *num = "73167176531330624919225119674426574742355349194934"
"96983520312774506326239578318016984801869478851843"
"85861560789112949495459501737958331952853208805511"
"12540698747158523863050715693290963295227443043557"
"66896648950445244523161731856403098711121722383113"
"62229893423380308135336276614282806444486645238749"
"30358907296290491560440772390713810515859307960866"
"70172427121883998797908792274921901699720888093776"
"65727333001053367881220235421809751254540594752243"
"52584907711670556013604839586446706324415722155397"
"53697817977846174064955149290862569321978468622482"
"83972241375657056057490261407972968652414535100474"
"82166370484403199890008895243450658541227588666881"
"16427171479924442928230863465674813919123162824586"
"17866458359124566529476545682848912883142607690042"
"24219022671055626321111109370544217506941658960408"
"07198403850962455444362981230987879927244284909188"
"84580156166097919133875499200524063689912560717606"
"05886116467109405077541002256983155200055935729725"
"71636269561882670428252483600823257530420752963450";

int i, tmp=1, product = 0, final_product = 0;

for(i = 0; num[i] != NULL; i++)
{
printf("%i\n", num[i] - '0');

tmp *= num[i] - '0';

if((i+1) % 5 == 0)
{
printf("------------------------\n");
product = tmp;

tmp = 1;

if(product > final_product)
final_product = product;
}

}

printf("Largest product ------> %i\n", final_product);

return 0;
}```
The answer should be 40,824 but I'm getting 31,752. Any ideas where I'm going wrong?

2. Your implementation is loosy. Why don't you use strlen()? That way you'll be able to iterate the digits properly.

EDIT: You mean you solved the former 7? Bravo, keep it up!

3. Take the first ten digits: 7316717653
You need to calculate all of these:
Code:
```7*3*1*6*7 = ?
3*1*6*7*1 = ?
1*6*7*1*7 = ?
6*7*1*7*6 = ?
7*1*7*6*5 = ?
1*7*6*5*3 = ?```
But you are only calculating the underlined ones.