Rust Program: Print Fibonacci Sequence up to Specified Terms
Write a Rust program that defines a function to print the Fibonacci sequence up to a specified number of terms.
Sample Solution:
Rust Code:
// Define a function named 'print_fibonacci_sequence' that takes a number 'n' as input and prints the Fibonacci sequence up to 'n' terms
fn print_fibonacci_sequence(n: usize) {
let mut fib = (0, 1); // Initialize a tuple to store the Fibonacci sequence (F(n-1), F(n))
println!("Fibonacci sequence up to {} terms:", n);
if n >= 1 {
println!("{}", fib.0); // Print the first Fibonacci number (0)
}
if n >= 2 {
println!("{}", fib.1); // Print the second Fibonacci number (1)
}
for _ in 3..=n {
let next_fib = fib.0 + fib.1; // Calculate the next Fibonacci number
println!("{}", next_fib); // Print the next Fibonacci number
fib = (fib.1, next_fib); // Update the tuple to store the next Fibonacci number
}
}
fn main() {
let num_terms = 10; // Define the number of terms in the Fibonacci sequence
// Call the 'print_fibonacci_sequence' function with the specified number of terms
print_fibonacci_sequence(num_terms);
}
Output:
Fibonacci sequence up to 10 terms: 0 1 1 2 3 5 8 13 21 34
Explanation:
Here's a brief explanation of the above Rust code:
- fn print_fibonacci_sequence(n: usize) { ... }: This is a function named "print_fibonacci_sequence()" that takes a number 'n' as input (of type 'usize', an unsigned integer) and prints the Fibonacci sequence up to 'n' terms.
- Inside the function:
- We initialize a tuple 'fib' to store the Fibonacci sequence, starting with the initial values (0, 1).
- We print the message indicating the number of terms.
- We handle the base cases (first two Fibonacci numbers) separately:
- If 'n' is greater than or equal to 1, we print the first Fibonacci number (0).
- If 'n' is greater than or equal to 2, we print the second Fibonacci number (1).
- We then iterate from the 3rd term to the nth term, calculating and printing each Fibonacci number in the sequence.
- In the main function,
- We define the number of terms in the Fibonacci sequence ('num_terms').
- We call the "print_fibonacci_sequence()" function with the specified number of terms.
Rust Code Editor:
Previous: Rust Function: Celsius to Fahrenheit conversion.
Next: Rust Function: Find Sum of array elements.
What is the difficulty level of this exercise?
Test your Programming skills with w3resource's quiz.
- Weekly Trends and Language Statistics
- Weekly Trends and Language Statistics