تمرين: فيبوناتشي
تبدأ متتالية فيبوناتشي بـ [0,1]. بالنسبة لـ n>1، يتم حساب العدد فيبوناتشي الـ n عن طريق الاستدعاء الذاتي كمجموع للعدد فيبوناتشي الـ n-1 والعدد فيبوناتشي الـ n-2.
اكتب دالة fib(n) التي تحسب العدد فيبوناتشي الـ n. متى ستسبب هذه الدالة (panic)؟
fn fib(n: u32) -> u32 {
if n < 2 {
// الحالة الأساسية.
todo!("نفذ هذا")
} else {
// الحالة العودية (recursive case).
todo!("نفذ هذا")
}
}
fn main() {
let n = 20;
println!("fib({n}) = {}", fib(n));
}