I'm trying to make a function that finds med, avg, mode vs. But at compiling im getting the error 26 | fn avg(list: &[usize]) -> f32 { | --- expected
f32because of return type ... 32 | return avg; | ^^^ expected
f32, found
usize``'. The code:
fn b_sort(list: &mut[usize])
{
for _ in 0..list.len() {
for j in 0..(&list.len()-1) {
if list[j] > list[j+1] {
list.swap( j, j+1 );
}
}
}
}
fn med(list: &[usize]) -> usize {
let len = list.len();
if len % 2 == 0 {
let med1 = list[len/2];
let med2 = list[len/2 - 1];
let med = (med1 + med2) / 2;
return med;
}
else {
let med = list[(len - 1) / 2];
return med;
}
}
fn avg(list: &[usize]) -> f32 {
let mut sum = 0;
for i in list {
sum += *i;
}
let avg = sum / list.len();
return avg;
}
fn main()
{
let mut list = [3,1,18,10,15];
b_sort(&mut list);
println!("Sorted: {:?}", list);
println!("Med: {}", med(&list));
println!("Avg: {:?}", avg(&list));
}
Sorry for poor english.