1fad3a1d3Sopenharmony_ciuse trace_var::trace_var; 2fad3a1d3Sopenharmony_ci 3fad3a1d3Sopenharmony_cifn main() { 4fad3a1d3Sopenharmony_ci println!("{}", factorial(8)); 5fad3a1d3Sopenharmony_ci} 6fad3a1d3Sopenharmony_ci 7fad3a1d3Sopenharmony_ci#[trace_var(p, n)] 8fad3a1d3Sopenharmony_cifn factorial(mut n: u64) -> u64 { 9fad3a1d3Sopenharmony_ci let mut p = 1; 10fad3a1d3Sopenharmony_ci while n > 1 { 11fad3a1d3Sopenharmony_ci p *= n; 12fad3a1d3Sopenharmony_ci n -= 1; 13fad3a1d3Sopenharmony_ci } 14fad3a1d3Sopenharmony_ci p 15fad3a1d3Sopenharmony_ci} 16