solutions: 1-3

This commit is contained in:
Muhammad Nauman Raza 2024-11-19 20:47:13 +00:00
commit e250be74f0
Signed by: devraza
GPG key ID: 91EAD6081011574B
3 changed files with 46 additions and 0 deletions

16
even_fibonacci_numbers.rs Normal file
View file

@ -0,0 +1,16 @@
fn main() {
let mut sequence: Vec<i32> = vec![1, 2];
while sequence[sequence.len()-1] <= 4000000 {
let mut last = sequence[sequence.len()-1];
let mut secondlast = sequence[sequence.len()-2];
(secondlast, last) = (last, secondlast+last);
sequence.push(last);
}
for i in sequence.clone() {
if i % 2 != 0 || i > 4000000 {
sequence.remove(sequence.iter().position(|x| *x == i).expect("Item not found"));
}
}
let sum: i32 = sequence.iter().sum();
println!("{}", sum);
}

18
largest_prime_factor.rs Normal file
View file

@ -0,0 +1,18 @@
fn main() {
let mut num: u64 = 600851475143;
let mut factors: Vec<u64> = vec![];
let mut i: u64 = 2;
while i.pow(2) <= num {
if num % i == 0 {
factors.push(i);
num = (num as f64 / i as f64).floor() as u64;
} else {
i += 1;
}
}
if num != 1 {
factors.push(num);
}
println!("{:?}", factors);
}

12
multiples_of_3_or_5.rs Normal file
View file

@ -0,0 +1,12 @@
fn main() {
let mut multiples: Vec<i32> = vec![];
for num in 0..1000 {
if num % 3 == 0 {
multiples.push(num);
} else if num % 5 == 0 {
multiples.push(num);
}
}
let sum: i32 = multiples.iter().sum();
println!("{}", sum);
}