Menu
Coddy logo textTech

Özet - Bir Eleman Bulma

Coddy'nin Rust Journey'sinin Logic & Flow bölümünün bir parçası — ders 41 / 66.

challenge icon

Görev

Kolay

İki girdi alacaksınız. İlk girdi, virgülle ayrılmış bir sayılar listesidir (örneğin, 10,20,30,40) ve ikinci girdi, aranacak hedef sayıdır. Virgülle ayrılmış sayıları bir vektöre ayrıştırın, ardından hedef sayıyı arayın. Hedef sayının indeksini bulmak için bir Option<usize> döndüren .iter().position() metodunu kullanın. Her iki durumu da match kullanarak ele alın ve uygun mesajı yazdırın.

Gereksinimler:

  • İlk girdiyi (virgülle ayrılmış sayılar) okuyun ve boşlukları temizleyin
  • Girdiyi virgüllere göre bölün ve bir vektör oluşturmak için her parçayı i32 türüne ayrıştırın
  • İkinci girdiyi (hedef sayı) okuyun ve boşlukları temizleyin
  • Hedef sayıyı i32 türüne ayrıştırın
  • Vektörde hedefi aramak için .iter().position(|&x| x == target) kullanın
  • .position() tarafından döndürülen Option değerini işlemek için bir match ifadesi kullanın
  • Some(index) kolunda şunu yazdırın: Found at index [index]
  • None kolunda şunu yazdırın: Not found

Girdi:

  • İlk satır: Virgülle ayrılmış sayılar (örneğin, 10,20,30,40)
  • İkinci satır: Aranacak hedef sayı (örneğin, 30)

Çıktı:

  • Hedef bulunursa: Found at index [index]
  • Hedef bulunamazsa: Not found

Kendin dene

use std::io::{self, BufRead};

fn main() {
    let stdin = io::stdin();
    let mut lines = stdin.lock().lines();
    
    // Virgülle ayrılmış sayıları oku
    let numbers_input = lines.next().unwrap().unwrap().trim().to_string();
    
    // Hedef sayıyı oku
    let target_input = lines.next().unwrap().unwrap().trim().to_string();
    
    // Virgülle ayrılmış sayıları bir vektöre ayrıştır
    let numbers: Vec<i32> = numbers_input
        .split(',')
        .map(|s| s.trim().parse().unwrap())
        .collect();
    
    // Hedef sayıyı ayrıştır
    let target: i32 = target_input.parse().unwrap();
    
    // TODO: Kodunuzu aşağıya yazın
    // Hedefi bulmak için .iter().position() kullanın ve sonucu işlemek için match kullanın
    
}

Logic & Flow bölümündeki tüm dersler