Menu
Coddy logo textTech

סיכום – מסכם ציונים

חלק מהיחידה לוגיקה וזרימת תוכנית במסלול ה-Rust של Coddy. שיעור 66 מתוך 66.

challenge icon

אתגר

קל

תקבל כמה קלטים המייצגים ציוני תלמידים. הקלט הראשון הוא מספר המציין כמה ציונים יגיעו אחריו. לאחר מכן תקבל את אותו מספר של ערכי ציונים (אחד בכל שורה). עבד את הציונים האלה וספק סיכום מקיף.

דרישות:

  • קרא את הקלט הראשון (מספר הציונים), הסר רווחים לבנים ונתח אותו כ-i32
  • צור וקטור ריק לאחסון הציונים
  • השתמש בלולאה כדי לקרוא כל ציון, להסיר רווחים לבנים, לנתח אותו כ-i32 ולהוסיף אותו לווקטור
  • חשב את ממוצע הציונים (סכום כל הציונים חלקי מספרם)
  • מצא את הציון הגבוה ביותר בווקטור
  • מצא את הציון הנמוך ביותר בווקטור
  • ספור כמה ציונים עוברים (70 ומעלה)
  • ספור כמה ציונים נכשלים (מתחת ל-70)
  • הדפס את התוצאות בדיוק בפורמט המוצג למטה

פורמט הפלט:

  • שורה 1: Average: X (כאשר X הוא הממוצע כמספר שלם)
  • שורה 2: Highest: X (כאשר X הוא הציון הגבוה ביותר)
  • שורה 3: Lowest: X (כאשר X הוא הציון הנמוך ביותר)
  • שורה 4: Passing: X (כאשר X הוא מספר הציונים העוברים)
  • שורה 5: Failing: X (כאשר X הוא מספר הציונים הנכשלים)

קלט:

  • שורה ראשונה: מספר הציונים (לדוגמה, 5)
  • השורות הבאות: ערכי ציונים בודדים (לדוגמה, 85, 92, 67, 78, 95)

פלט:

  • חמש שורות המציגות את הממוצע, הציון הגבוה ביותר, הציון הנמוך ביותר, מספר הציונים העוברים ומספר הציונים הנכשלים

נסו בעצמכם

use std::io;

fn main() {
    // קראו את מספר הציונים
    let mut count_input = String::new();
    io::stdin().read_line(&mut count_input).expect("Failed to read line");
    let count: i32 = count_input.trim().parse().expect("Invalid number");
    
    // צרו וקטור לאחסון הציונים
    let mut grades: Vec<i32> = Vec::new();
    
    // קראו כל ציון
    for _ in 0..count {
        let mut grade_input = String::new();
        io::stdin().read_line(&mut grade_input).expect("Failed to read line");
        let grade: i32 = grade_input.trim().parse().expect("Invalid number");
        grades.push(grade);
    }
    
    // TODO: כתבו את הקוד שלכם למטה
    // חשבו את הממוצע, מצאו את הציון הגבוה ביותר ואת הנמוך ביותר, וספרו את הציונים העוברים והנכשלים
    
    
    
    // הציגו את התוצאות בפורמט הנדרש
    // println!("Average: {}", average);
    // println!("Highest: {}", highest);
    // println!("Lowest: {}", lowest);
    // println!("Passing: {}", passing_count);
    // println!("Failing: {}", failing_count);
}

כל השיעורים ביחידה לוגיקה וזרימת תוכנית

תרגלו בעצמכם: קומפיילר Rust אונליין