Menu
CoddyTech

פעולות נפוצות על מערכים

חלק מהיחידה יסודות במסלול ה-Rust של Coddy. שיעור 68 מתוך 75.

הנה כמה פעולות נפוצות על מערכים:

  • מצאו את הסכום של כל האיברים במערך:
let numbers = [1, 2, 3, 4, 5];
let mut sum = 0;
for number in &numbers {
    sum += number;
}
println!("Sum: {}", sum);
  • מצאו את הממוצע של האיברים במערך:
let numbers = [1, 2, 3, 4, 5];
let mut sum = 0;
for number in &numbers {
    sum += number;
}
let average = sum as f64 / numbers.len() as f64;
println!("Average: {}", average);
  • מציאת האיבר הגדול ביותר במערך:
let numbers = [1, 5, 2, 9, 3];
let mut max = numbers[0];
for &number in &numbers[1..] {
    if number > max {
        max = number;
    }
}
println!("Max: {}", max);
  • מצאו את איבר המינימום במערך:
let numbers = [1, 5, 2, 9, 3];
let mut min = numbers[0];
for &number in &numbers[1..] {
    if number < min {
        min = number;
    }
}
println!("Min: {}", min);
challenge icon

אתגר

קל

צרו פונקציה בשם calculate_stats שמקבלת כקלט מערך של מספרים שלמים באורך 8 ומבצעת את הפעולות הבאות:

  1. מחשבת את סכום כל האיברים במערך.
  2. מחשבת את הממוצע של האיברים במערך.
  3. מוצאת את האיבר הגדול ביותר במערך.
  4. מוצאת את האיבר הקטן ביותר במערך.

הפונקציה צריכה להחזיר מערך של ערכי f64 המכיל את הסכום, הממוצע, הערך המרבי והערך המזערי, לפי הסדר הזה.

נסו בעצמכם

use std::io;
use std::convert::TryInto;

fn calculate_stats(arr: [i32; 8]) -> [f64; 4] {
    // כתבו כאן את הקוד שלכם
    
    
}

fn main() {
    let mut input_str_arr = String::new();
    io::stdin().read_line(&mut input_str_arr).unwrap();
    let numbers: [i32; 8] = input_str_arr.split(',').map(|s| s.parse::<i32>().unwrap()).collect::<Vec<i32>>().try_into().unwrap();
    let stats = calculate_stats(numbers);
    println!("Sum: {}", stats[0]);
    println!("Average: {}", stats[1]);
    println!("Maximum: {}", stats[2]);
    println!("Minimum: {}", stats[3]);
}
quiz iconבחנו את עצמכם

השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.

כל השיעורים ביחידה יסודות

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