מדריך לטווחים
חלק מהיחידה יסודות במסלול ה-Rust של Coddy. שיעור 65 מתוך 75.
בשיעור הזה נלמד עוד על אופן הפעולה של range.
טווח תחביר בסיסי:
start..end- יוצר טווח מ־start עד end (לא כולל)start..=end- יוצר טווח מ־start עד end (כולל)
..end- יוצר טווח מ-0 ועד end (לא כולל)..=end- יוצר טווח מ-0 ועד end (כולל)
start..- יוצר טווח מ-start ועד אינסוף..- יוצר טווח ממינוס אינסוף ועד פלוס אינסוף
היפוך טווח באמצעות .rev():
(0..5).rev()- 4, 3, 2, 1, 0(0..=5).rev()- 5, 4, 3, 2, 1, 0
דילוגים בצעדים באמצעות .step_by(n):
(0..10).step_by(2)- 0, 2, 4, 6, 8(0..10).rev().step_by(2)- 9, 7, 5, 3, 1
לדוגמה:
// טווח עולה בסיסי
for i in 0..5 { }
// ערכים: 0, 1, 2, 3, 4// טווח כולל
for i in 0..=5 { }
// ערכים: 0, 1, 2, 3, 4, 5// טווח בסדר הפוך
for i in (0..5).rev() { }
// ערכים: 4, 3, 2, 1, 0// התקדמות בצעדים של 2
for i in (0..10).step_by(2) { }
// ערכים: 0, 2, 4, 6, 8// שלבו היפוך וצעד
for i in (0..10).rev().step_by(3) { }
// ערכים: 9, 6, 3, 0אתגר
קלצרו תוכנית שמתחילה בשני מערכים של מספרים ומדפיסה עבור המערך הראשון את כל המספרים בסדר הפוך, בקפיצות של 3 בין מיקומים במערך, ועבור המערך השני היא מדפיסה את כל המספרים שמתחלקים ב-4 בסדר הפוך. הדפיסו בפורמט הבא:
Array 1: [1], [2], [3], ...
Array 2: [1], [2], [3], ...נסו בעצמכם
fn main() {
let numbers1 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26];
let numbers2 = [17, 53, 24, 77, 84, 98, 24, 36, 89, 31, 36];
print!("Array 1: ");
// כתבו כאן את הקוד שלכם
println!();
print!("Array 2: ");
// כתבו כאן את הקוד שלכם
}השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה יסודות
5אופרטורים חלק 2
אופרטורים לוגיים חלק 1אופרטורים לוגיים חלק 2חזרה – לוגיקה פשוטהאופרטורים לוגיים חלק 3תרגלו בעצמכם: קומפיילר Rust אונליין