Menu
Coddy logo textTech

'every' ile Koşullar

Coddy'nin Dart Journey'sinin Mantık & Akış bölümünün bir parçası. Ders 14 / 65.

any() bir koşulu en az bir öğenin karşılayıp karşılamadığını kontrol ederken, bazen bir listedeki tüm öğelerin belirli bir gereksinimi karşıladığını doğrulamanız gerekir. every() yöntemi, her bir öğeyi koşulunuza göre test ederek ve yalnızca hepsi geçerse true döndürerek bu işlevselliği sağlar.

every() yöntemi, her öğe için true veya false döndüren bir test fonksiyonu alır. Eğer herhangi bir öğe testi geçemezse, every() anında false döndürür. Sadece tüm öğeler testi geçtiğinde true döndürür.

List<int> examScores = [75, 82, 68, 91, 77];

// Tüm öğrencilerin geçip geçmediğini kontrol et (puan > 60)
bool allPassed = examScores.every((score) => score > 60);
print(allPassed);  // true

Bu yöntem, devam etmeden önce tüm öğelerin belirli kriterleri karşıladığından emin olmanız gereken doğrulama senaryoları için özellikle yararlıdır. every() yöntemi, testi geçemeyen bir öğe bulur bulmaz kontrol etmeyi durdurur; bu da evrensel uyumluluğa ihtiyaç duyduğunuz büyük listeler için onu verimli kılar.

challenge icon

Görev

Kolay

Bir partideki tüm ürünlerin gerekli standartları karşıladığını doğrulayarak bir kalite kontrol sistemini yöneten bir program oluşturun. Programınız şunları yapmalıdır:

  1. Fabrika adını temsil eden bir dize girdisi okuyun
  2. Ürün kalite puanlarını temsil eden birden fazla tamsayı girdisi okuyun (girdi, -1 aldığınızda sona erecektir)
  3. Minimum kalite standardı eşiğini temsil eden bir tamsayı girdisi okuyun
  4. Tüm ürün puanlarının minimum eşiğe eşit veya bundan büyük olup olmadığını kontrol etmek için every() yöntemini kullanın
  5. Kalite kontrol sonuçlarını aşağıda gösterilen tam biçimde yazdırın

Örneğin fabrika adı "Electronics Factory", kalite puanları 85, 92, 78, 88, 95 ve minimum eşik 75 ise programınız şunu yazdırmalıdır:

Factory: Electronics Factory
Quality scores: [85, 92, 78, 88, 95]
Minimum standard: 75
Checking if all scores >= 75
All products passed: true
Status: Batch approved for shipment

Fabrika adı "Textile Mill", kalite puanları 68, 82, 74, 91 ve minimum eşik 70 ise programınız şunu yazdırmalıdır:

Factory: Textile Mill
Quality scores: [68, 82, 74, 91]
Minimum standard: 70
Checking if all scores >= 70
All products passed: false
Status: Batch rejected - quality improvement required

Fabrika adı "Food Processing", kalite puanları 95, 98, 92 ve minimum eşik 90 ise programınız şunu yazdırmalıdır:

Factory: Food Processing
Quality scores: [95, 98, 92]
Minimum standard: 90
Checking if all scores >= 90
All products passed: true
Status: Batch approved for shipment

Programınız, tüm kalite puanlarının minimum eşiğe eşit veya bundan büyük olduğunu doğrulamak için every() yöntemini kullanmalıdır. Tüm ürünler standardı karşılıyorsa "Sevkiyat için parti onaylandı", herhangi bir ürün minimum gereksinimi karşılamıyorsa "Parti reddedildi - kalite iyileştirmesi gerekli" mesajını görüntüleyin.

Kendin dene

import 'dart:io';

void main() {
  // Fabrika adını oku
  String? factoryName = stdin.readLineSync();
  
  // -1 ile karşılaşana kadar kalite puanlarını oku
  List<int> qualityScores = [];
  while (true) {
    int score = int.parse(stdin.readLineSync()!);
    if (score == -1) {
      break;
    }
    qualityScores.add(score);
  }
  
  // Minimum eşik değerini oku
  int minThreshold = int.parse(stdin.readLineSync()!);
  
  // TODO: Kodunuzu aşağıya yazın
  // Tüm puanların minimum standardı karşılayıp karşılamadığını kontrol etmek için every() metodunu kullanın
  
  // Sonuçları gerekli formatta yazdırın
  print('Factory: $factoryName');
  print('Quality scores: $qualityScores');
  print('Minimum standard: $minThreshold');
  print('Checking if all scores >= $minThreshold');
  // Tüm ürünlerin geçip geçmediğini ve nihai durumu yazdırın
}
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Mantık & Akış bölümündeki tüm dersler

Kendi başına pratik yap: Online Dart derleyicisi