aboutsummaryrefslogtreecommitdiff
path: root/c
diff options
context:
space:
mode:
authorCharles <sircharlesaze@gmail.com>2019-08-11 18:42:52 +0200
committerCharles <sircharlesaze@gmail.com>2019-08-11 18:42:52 +0200
commit7b624de8e3e3637a07364f992c1d7e4185e4a872 (patch)
treefdb9b0c3f9185b267f9f7bfb9cb4b0e4cdd8cc16 /c
downloadproject_euler-7b624de8e3e3637a07364f992c1d7e4185e4a872.tar.gz
project_euler-7b624de8e3e3637a07364f992c1d7e4185e4a872.tar.bz2
project_euler-7b624de8e3e3637a07364f992c1d7e4185e4a872.zip
initial commit
Diffstat (limited to 'c')
-rw-r--r--c/12-highly_divisible_triangular_number.c35
-rw-r--r--c/5-smallest_multiple.c23
2 files changed, 58 insertions, 0 deletions
diff --git a/c/12-highly_divisible_triangular_number.c b/c/12-highly_divisible_triangular_number.c
new file mode 100644
index 0000000..4ece373
--- /dev/null
+++ b/c/12-highly_divisible_triangular_number.c
@@ -0,0 +1,35 @@
+#include <stdio.h>
+#include <math.h>
+
+
+int triangle_number(int nb)
+{
+ int i, sum = 0;
+ for (i = 0; i < nb + 1; i++)
+ sum += i;
+ return sum;
+}
+
+int count_divisors(int nb)
+{
+ int i, div_nb = 0;
+ for (i = 1; i <= sqrt(nb); i++) {
+ if (nb % i == 0)
+ div_nb += (i != nb / i ? 2 : 1);
+ }
+ return div_nb;
+}
+
+int main(void)
+{
+ int i, t_nb;
+
+ for (i = 0;; i++) {
+ t_nb = triangle_number(i);
+ if (count_divisors(t_nb) + 2 > 500)
+ break;
+ }
+ printf("%d", t_nb);
+
+ return 0;
+}
diff --git a/c/5-smallest_multiple.c b/c/5-smallest_multiple.c
new file mode 100644
index 0000000..4924dd1
--- /dev/null
+++ b/c/5-smallest_multiple.c
@@ -0,0 +1,23 @@
+#include <stdio.h>
+#include <stdbool.h>
+
+int main() {
+ int num = 0, i;
+ bool end = false;
+ while (!end) {
+ num += 2;
+
+ for (i = 1; i <= 20; i++) {
+ if (num % i != 0) {
+ end = false;
+ break;
+ } else {
+ end = true;
+ }
+ }
+ }
+
+ printf("%d", num);
+
+ return 0;
+}