Skip to main content
Brave Programmer Logo

BraveProgrammer

BraveProgrammer

HomeProjectsBlogsCoursesLessonsAbout

Site footer

BraveProgrammer

Free coding courses, practical tutorials, and real projects from BraveProgrammer. Learn web development with React, Next.js, and TypeScript.

Navigation

  • Home
  • Projects
  • Blogs
  • Courses

Resources

  • About
  • Lessons

© 2026 BraveProgrammer. All rights reserved.

  1. Courses
  2. /
  3. Rust Fundamentals

Lesson 7 of 50 · rust

Control Flow

Duration: 15 minutes

Control Flow\n\nControl flow statements direct the execution path of your program based on conditions.\n\n## If Expressions\n\nRust's if is an expression, not just a statement:\n\nrust\nlet number = 6;\nif number % 2 == 0 {\n println!(\"Even\");\n} else if number % 3 == 0 {\n println!(\"Divisible by 3\");\n} else {\n println!(\"Odd\");\n}\n\n\nIf expressions return values:\n\nrust\nlet condition = true;\nlet value = if condition { 5 } else { 6 };\nprintln!(\"Value: {}\", value); // 5\n\n\nArms must return the same type.\n\n## Loops\n\n### Infinite Loop\n\nrust\nlet mut count = 0;\nloop {\n count += 1;\n println!(\"Count: {}\", count);\n if count == 5 {\n break;\n }\n}\n\n\n### While Loop\n\nrust\nlet mut count = 0;\nwhile count < 5 {\n println!(\"Count: {}\", count);\n count += 1;\n}\n\n\n### For Loop\n\nIterates over ranges and collections:\n\nrust\n// Range loop\nfor i in 0..5 {\n println!(\"i = {}\", i); // 0 to 4\n}\n\n// Inclusive range\nfor i in 0..=5 {\n println!(\"i = {}\", i); // 0 to 5\n}\n\n// Over collections\nlet numbers = [1, 2, 3];\nfor num in numbers {\n println!(\"Number: {}\", num);\n}\n\n\n## Loop Labels\n\nBreak or continue outer loops:\n\nrust\n'outer: loop {\n for i in 0..10 {\n if i == 5 {\n break 'outer; // Break outer loop\n }\n }\n}\n\n\n## Break with Values\n\nLoops can return values:\n\nrust\nlet mut count = 0;\nlet result = loop {\n count += 1;\n if count == 10 {\n break count * 2; // Return 20\n }\n};\nprintln!(\"Result: {}\", result);\n\n\n## Practical Example\n\nrust\nfn main() {\n // Find first even number\n let numbers = [1, 3, 5, 6, 7, 8];\n for num in numbers {\n if num % 2 == 0 {\n println!(\"First even: {}\", num);\n break;\n }\n }\n \n // Validate input\n let mut attempts = 0;\n while attempts < 3 {\n println!(\"Try again\");\n attempts += 1;\n }\n \n // Grade calculator\n let score = 85;\n let grade = if score >= 90 {\n 'A'\n } else if score >= 80 {\n 'B'\n } else if score >= 70 {\n 'C'\n } else {\n 'F'\n };\n println!(\"Grade: {}\", grade);\n}\n

Previous: Basic Data TypesNext: Functions