הגדרת הפרויקט
חלק מהיחידה לוגיקה וזרימת תוכנית במסלול ה-Rust של Coddy. שיעור 15 מתוך 66.
אתגר
קלתקבלו קלט יחיד: רשימה של תיאורי משימות המופרדים בפסיקים. צרו וקטור ריק שניתן לשינוי כדי לאחסן את המשימות, פצלו את הקלט לפי פסיקים, הוסיפו כל משימה לווקטור והדפיסו את המספר הכולל של המשימות ואחריו כל משימה בשורה נפרדת.
דרישות:
- קראו את הקלט שמכיל תיאורי משימות המופרדים בפסיקים (למשל,
Buy groceries,Call dentist,Finish homework) - צרו וקטור ריק שניתן לשינוי מהסוג
Vec<String> - פצלו את מחרוזת הקלט לפי פסיקים כדי לקבל משימות נפרדות
- השתמשו ב-
.push()כדי להוסיף כל משימה לווקטור - הדפיסו את המספר הכולל של המשימות בפורמט:
Total tasks: X - הדפיסו כל משימה בשורה נפרדת בפורמט:
Task: [task description]
קלט:
- שורה יחידה שמכילה תיאורי משימות המופרדים בפסיקים (למשל,
Buy groceries,Call dentist,Finish homework)
פלט:
- השורה הראשונה:
Total tasks: Xכאשר X הוא מספר המשימות - השורות שאחריה: כל משימה מודפסת בתור
Task: [task description]
נסו בעצמכם
use std::io;
fn main() {
// קראו את הקלט
let mut input = String::new();
io::stdin().read_line(&mut input).expect("Failed to read line");
let input = input.trim();
// TODO: כתבו את הקוד שלכם למטה
// צרו וקטור ריק שניתן לשינוי
// פצלו את הקלט לפי פסיקים
// הוסיפו כל משימה לווקטור באמצעות .push()
// הדפיסו את מספר המשימות הכולל
// הדפיסו כל משימה
}כל השיעורים ביחידה לוגיקה וזרימת תוכנית
1זרימת בקרה מתקדמת
ביטוי 'match'התאמה למספר ערכיםהתאמה לטווחיםביטוי 'if let'לולאות כביטוייםסיכום – מנתח פקודות פשוט4קיבוץ נתונים באמצעות מבנים
מהו מבנה?סקירה כללית על מבניםגישה לשדות במבנהמבנים הניתנים לשינוימבנים כפרמטרים של פונקציהמבני טופלסיכום – יצירת מבנה ספר7טיפול בשגיאות באמצעות 'Result'
מהו 'Result'?שימוש ב-'match' עם 'Result'is_ok() ו-is_err()קיצורי דרך: unwrap ו-expectאופרטור סימן השאלה '?'המרת מחרוזות למספריםסיכום - פונקציית חילוק בטוחה10Closures ופונקציות אנונימיות
מהו Closure?הגדרת Closure פשוטClosures עם פרמטריםלכידת הסביבהסיכום – Closure פשוט לחיבור2מבוא לווקטורים
מהו וקטור?יצירת וקטורהוספת איברים באמצעות pushגישה לאיברי וקטורמעבר על וקטורמעבר ניתן לשינויהסרת איבריםסיכום – מעקב בסיסי אחר ניקוד5זוגות מפתח-ערך באמצעות מפות גיבוב
מהי מפת גיבוב?יצירת מפת גיבובהוספת זוגות מפתח-ערךגישה לערכיםמעבר על מפת גיבובעדכון ערךהסרת זוגסיכום – מונה מיליםתרגלו בעצמכם: קומפיילר Rust אונליין