Control Flow
Level: intro (score: 1)
                🚀 These intro exercises are prep for our
                Rust Intro Cohort Program.
              
            
            🎯 Both Python and Rust support if/elif/else (Python) or if/else if/else (Rust). Both now also have a powerful match expression for pattern matching.
Key differences for Pythonistas:
ifin Rust is an expression: it returns a value.matchlets you handle multiple patterns exhaustively.
✅ Your task:
Implement grade_message(score: i32) -> String:
- If 
score >= 90, return"Excellent". - If 
score >= 75, return"Good". - If 
score >= 50, return"Pass". - Otherwise, return 
"Fail". 
Then use match on the first letter of the result to:
- Return 
"Top"if it starts withE "Decent"ifG"Basic"ifP"None"otherwise
Return the final match result.
💡 Hint:
if/elif/elsereturns the value of the executed branch.matchmust cover all cases (_works as the fallback).
Example:
assert_eq!(grade_message(95), "Top");
assert_eq!(grade_message(78), "Decent");
assert_eq!(grade_message(52), "Basic");
assert_eq!(grade_message(10), "None");
pub fn grade_message(score: i32) -> String {
    // TODO:
    // 1. Use if / else if / else to get "Excellent", "Good", "Pass", or "Fail"
    // 2. Use match on the first letter to return:
    //    "Top", "Decent", "Basic", or "None"
}
#[cfg(test)]
mod tests {
    use super::*;
    #[test]
    fn test_top() {
        assert_eq!(grade_message(95), "Top");
    }
    #[test]
    fn test_decent() {
        assert_eq!(grade_message(78), "Decent");
    }
    #[test]
    fn test_basic() {
        assert_eq!(grade_message(52), "Basic");
    }
    #[test]
    fn test_none() {
        assert_eq!(grade_message(10), "None");
    }
}