Compare commits
1 Commits
master
...
problem-40
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
abaaf8757f |
20
problem-40.c
20
problem-40.c
@@ -9,19 +9,8 @@
|
|||||||
int split_digits(int* digits, int num)
|
int split_digits(int* digits, int num)
|
||||||
{
|
{
|
||||||
int len = 0;
|
int len = 0;
|
||||||
|
|
||||||
free(digits);
|
|
||||||
digits = malloc(1 * sizeof(int));
|
|
||||||
|
|
||||||
while (num > 0) {
|
while (num > 0) {
|
||||||
len++;
|
len++;
|
||||||
|
|
||||||
digits = (int*)realloc(digits, len * sizeof(int));
|
|
||||||
if (digits == NULL) {
|
|
||||||
printf("A memory error occurred.\n");
|
|
||||||
exit(1);
|
|
||||||
}
|
|
||||||
|
|
||||||
digits[len-1] = num % 10;
|
digits[len-1] = num % 10;
|
||||||
num /= 10;
|
num /= 10;
|
||||||
}
|
}
|
||||||
@@ -32,17 +21,11 @@ int split_digits(int* digits, int num)
|
|||||||
|
|
||||||
int main(int argc, char** argv)
|
int main(int argc, char** argv)
|
||||||
{
|
{
|
||||||
int* digits;
|
int digits[7] = {0};
|
||||||
int len;
|
int len;
|
||||||
int digit = 0, i = 0;
|
int digit = 0, i = 0;
|
||||||
int prod = 1, num = 1;
|
int prod = 1, num = 1;
|
||||||
|
|
||||||
digits = malloc(1 * sizeof(int));
|
|
||||||
if (digits == NULL) {
|
|
||||||
printf("A memory error occurred.\n");
|
|
||||||
exit(1);
|
|
||||||
}
|
|
||||||
|
|
||||||
len = split_digits(digits, num);
|
len = split_digits(digits, num);
|
||||||
|
|
||||||
while (digit < MAX_NUM) {
|
while (digit < MAX_NUM) {
|
||||||
@@ -62,6 +45,5 @@ int main(int argc, char** argv)
|
|||||||
}
|
}
|
||||||
|
|
||||||
printf("The solution is %d\n", prod);
|
printf("The solution is %d\n", prod);
|
||||||
free(digits);
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user