Задача: вывести счетчик с ведущими нулями, пример 0001, 0002 и т.д.
Задача не сложная, но не стандартная и предполагает несколько вариантов реализации. Мой вариант реализован на том, что мы считаем длину стандартного int счетчика и в зависимости от нее добавляем перед ним нужно количество нулей, которые у нас являются уже строкой.
fn main(){
(1..1002).for_each(|n| {
let _str: String = n.to_string();
let lenght = _str.len();
let mut _zero = String::from("000");
if lenght == 2{
_zero = String::from("00");
}
else if lenght == 3{
_zero = String::from("0");
}
else if lenght == 4{
_zero = String::from("");
}
println!("{}{}",_zero, n);
});
}
Реализация этого же через match:
fn main(){
(1..1002).for_each(|n| {
let _str: String = n.to_string();
let lenght = _str.len();
match lenght {
2 => {println!("00{}", n);}
3 => {println!("0{}", n);}
4 => {println!("{}", n);}
_ => {println!("000{}", n);}
}
});
}