Menu
Coddy logo textTech

Özet - Dikdörtgen Eylemleri

Coddy'nin Rust Journey'sinin Nesne Yönelimli Programlama bölümünün bir parçası. Ders 7 / 61.

challenge icon

Görev

Kolay

İki alana sahip bir Rectangle yapısı oluşturun: width (u32) ve height (u32).

Aşağıdakileri içeren bir Rectangle uygulama bloğu ekleyin:

  • new: width: u32 ve height: u32 alan, yeni bir Rectangle döndüren ilişkili bir işlev
  • area: &self alan ve alanı u32 olarak döndüren işlev
  • scale: &mut self ve bir factor: u32 alan, hem width hem de height değerlerini faktörle çarpan işlev

Üç girdi alacaksınız:

  • İlk satır: genişlik (u32)
  • İkinci satır: yükseklik (u32)
  • Üçüncü satır: ölçek faktörü (u32)

Sağlanan boyutlarla Rectangle::new kullanarak değiştirilebilir bir Rectangle oluşturun. Başlangıç alanını yazdırın, ardından dikdörtgeni verilen faktöre göre ölçeklendirin ve yeni alanı yazdırın.

Beklenen çıktı biçimi:

{initial_area}
{scaled_area}

Kendin dene

use std::io;

// TODO: Rectangle struct'ını burada tanımla


// TODO: Rectangle için implementation bloğunu ekle:
// - new: width ve height alan, Rectangle döndüren associated function
// - area: &self alan, u32 döndüren method
// - scale: &mut self ve factor alan, width ve height'ı çarpan method


fn main() {
    let mut input = String::new();
    
    // Genişliği oku
    io::stdin().read_line(&mut input).expect("Failed to read line");
    let width: u32 = input.trim().parse().expect("Invalid number");
    
    input.clear();
    
    // Yüksekliği oku
    io::stdin().read_line(&mut input).expect("Failed to read line");
    let height: u32 = input.trim().parse().expect("Invalid number");
    
    input.clear();
    
    // Ölçek faktörünü oku
    io::stdin().read_line(&mut input).expect("Failed to read line");
    let factor: u32 = input.trim().parse().expect("Invalid number");
    
    // TODO: Rectangle::new kullanarak mutable bir Rectangle oluştur
    
    // TODO: Başlangıç alanını yazdır
    
    // TODO: Dikdörtgeni factor ile ölçekle
    
    // TODO: Yeni alanı yazdır
}

Nesne Yönelimli Programlama bölümündeki tüm dersler

Kendi başına pratik yap: Online Rust derleyicisi