diff options
-rwxr-xr-x | problem1/a.out | bin | 0 -> 13584 bytes | |||
-rw-r--r-- | problem1/problem1.c | 14 | ||||
-rwxr-xr-x | problem2/a.out | bin | 0 -> 13536 bytes | |||
-rw-r--r-- | problem2/problem2.c | 20 | ||||
-rwxr-xr-x | problem3/a.out | bin | 0 -> 13704 bytes | |||
-rw-r--r-- | problem3/problem3.c | 25 |
6 files changed, 59 insertions, 0 deletions
diff --git a/problem1/a.out b/problem1/a.out Binary files differnew file mode 100755 index 0000000..8d5fd6e --- /dev/null +++ b/problem1/a.out diff --git a/problem1/problem1.c b/problem1/problem1.c new file mode 100644 index 0000000..a2aad3d --- /dev/null +++ b/problem1/problem1.c @@ -0,0 +1,14 @@ +/* + If we list all the natural numbers below 10 that are multiples of 3 or 5, we get 3, 5, 6 and 9. The sum of these multiples is 23. Find the sum of all the multiples of 3 or 5 below 1000. */ + +#include <stdio.h> + +int main() { + unsigned int sum; + for (int i = 1; i < 1000; i++) { + if (i % 3 == 0 || i % 5 == 0) { + sum += i; + } + } + printf("%u\n", sum); +} diff --git a/problem2/a.out b/problem2/a.out Binary files differnew file mode 100755 index 0000000..dff8845 --- /dev/null +++ b/problem2/a.out diff --git a/problem2/problem2.c b/problem2/problem2.c new file mode 100644 index 0000000..1fa0997 --- /dev/null +++ b/problem2/problem2.c @@ -0,0 +1,20 @@ +/* + Each new term in the Fibonacci sequence is generated by adding the previous two terms. By starting with 1 and 2, the first 10 terms will be: 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, ... By considering the terms in the Fibonacci sequence whose values do not exceed four million, find the sum of the even-valued terms. +*/ + +#include <stdio.h> + +int main() { + unsigned int l = 1; + unsigned int h = 2; + unsigned long int sum = 0; + while (h < 40000000) { + if (h % 2 == 0) { + sum += h; + } + unsigned int t = h; + h += l; + l = t; + } + printf("%ul\n", sum); +} diff --git a/problem3/a.out b/problem3/a.out Binary files differnew file mode 100755 index 0000000..9269f34 --- /dev/null +++ b/problem3/a.out diff --git a/problem3/problem3.c b/problem3/problem3.c new file mode 100644 index 0000000..9b9756c --- /dev/null +++ b/problem3/problem3.c @@ -0,0 +1,25 @@ +/* + The prime factors of 13195 are 5, 7, 13 and 29. What is the largest prime factor of the number 600851475143 ? +*/ + +#include <stdio.h> + +char is_prime(unsigned long long int n) { + for (unsigned long long int i = 2; i < n; i++) { + if (n % i == 0) { + return 0; + } + } + return 1; +} + +int main() { + unsigned long long int c = 600851475143; + for (unsigned long long int i = c / 2; i--; i >= 0) { + printf("%llu\n", i); + if (is_prime(i)) { + printf("%llu\n", i); + break; + } + } +} |