diff options
| author | Charles <sircharlesaze@gmail.com> | 2020-05-21 12:16:03 +0200 |
|---|---|---|
| committer | Charles <sircharlesaze@gmail.com> | 2020-05-21 12:16:03 +0200 |
| commit | fec9192bf1494a0180ec31388281667c132b7ee6 (patch) | |
| tree | 1533f2081cc6c8919a9030db8cfd056efcc6cbd1 /rust/005-smallest_multiple.rs | |
| parent | ec28f3d2a263440b167b2ae44033f2eae5bab88c (diff) | |
| download | project_euler-fec9192bf1494a0180ec31388281667c132b7ee6.tar.gz project_euler-fec9192bf1494a0180ec31388281667c132b7ee6.tar.bz2 project_euler-fec9192bf1494a0180ec31388281667c132b7ee6.zip | |
problem 4 5 in rust
Diffstat (limited to 'rust/005-smallest_multiple.rs')
| -rw-r--r-- | rust/005-smallest_multiple.rs | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/rust/005-smallest_multiple.rs b/rust/005-smallest_multiple.rs new file mode 100644 index 0000000..ce671f9 --- /dev/null +++ b/rust/005-smallest_multiple.rs @@ -0,0 +1,34 @@ +/* +* Smallest multiple +* Problem 5 +* +* 2520 is the smallest number that can be divided by each of the numbers from 1 to 10 without any remainder. +* What is the smallest positive number that is evenly divisible by all of the numbers from 1 to 20? +*/ + +fn main() { + let mut end = false; + let mut n = 2; + + // note to self: iterator are really slow 11s vs 1s without them. + loop { + + let mut d = 3; + while d <= 20 { + if n % d != 0 { + end = false; + break; + } else { + end = true; + } + d += 1; + } + + if end { + println!("{}", n); + break; + } + + n += 2; + } +} |
