Программирование/Примеры программ на языке программирования Rust: различия между версиями

Содержимое удалено Содержимое добавлено
Строка 244:
#[allow(non_camel_case_types)]
type perfnum_numb_type = u32;
fn perfnum(x : perfnum_numb_type)-> Vec<perfnum_numb_type>
{
let mut arr=Vec::new();
Строка 252:
while i0<=x
{
let mut acc : perfnum_numb_type=1;
let mut i1=2;
while i1<i0
Строка 277:
}
return arr;
}
 
fn perfnum1(n : perfnum_numb_type) -> Vec<perfnum_numb_type>
{
let mut arr=Vec::new();
let width={(x).to_string().len()+1};
for item in (1..n).filter(|x| (2..=*x/2).filter(|n| x%n==0).sum::<perfnum_numb_type>()+1==*x)
{
unsafe
{
if let Some(t) = TIME
{
let time=Instant::now().duration_since(t);
arr.push(item);
println!("number: {:<width$} time: {:?}", format!("{},", item), time, width=width);
}
}
}
arr
}
 
Строка 283 ⟶ 302 :
unsafe{TIME=Some(Instant::now());}
/*let arr=*/perfnum(8128);
let time_end=Instant::now();
unsafe
{
if let Some(t) = TIME
{
let time=time_end.duration_since(t);
println!("time: {:?}", time);
}
}
unsafe{TIME=Some(Instant::now());}
/*let arr=*/perfnum1(8128);
let time_end=Instant::now();
unsafe
Строка 293 ⟶ 324 :
}
}
 
</syntaxhighlight>