Özet - Liste Düzenleyici
Coddy'nin Dart Journey'sinin Mantık & Akış bölümünün bir parçası — ders 9 / 65.
Görev
KolayBir sayı listesi üzerinde sırayla birden fazla işlem gerçekleştirerek bir veri işleme hattını yöneten bir program oluşturun. Programınız şunları yapmalıdır:
- Veri kümesi adını temsil eden bir dize girişi okuyun
- Orijinal veri değerlerini temsil eden birden fazla tam sayı girişi okuyun (giriş
-999aldığınızda sona erecektir) - Listenin başına (0. konum)
100değerini ekleyin removeWhere()kullanarak listedeki tüm negatif sayıları kaldırın- Kalan sayıları
sort()kullanarak artan düzende sıralayın isEmptykullanarak son listenin boş olup olmadığını kontrol edin- Veri işleme sonuçlarını aşağıda gösterilen tam formatta yazdırın
Örneğin, veri kümesi adı "Sales Data" ve değerler 45, -12, 78, -5, 23 ise programınız şu çıktıyı vermelidir:
Dataset: Sales Data
Original data: [45, -12, 78, -5, 23]
Step 1: Inserted 100 at beginning
After insertion: [100, 45, -12, 78, -5, 23]
Step 2: Removed negative numbers
After removal: [100, 45, 78, 23]
Step 3: Sorted in ascending order
After sorting: [23, 45, 78, 100]
Final result: List is not empty
Processing complete: 4 values remainingEğer veri kümesi adı "Temperature Readings" ve değerler -10, -5, -20 ise programınız şu çıktıyı vermelidir:
Dataset: Temperature Readings
Original data: [-10, -5, -20]
Step 1: Inserted 100 at beginning
After insertion: [100, -10, -5, -20]
Step 2: Removed negative numbers
After removal: [100]
Step 3: Sorted in ascending order
After sorting: [100]
Final result: List is not empty
Processing complete: 1 values remainingEğer veri kümesi adı "Error Values" ve tek değer -50 ise programınız şu çıktıyı vermelidir:
Dataset: Error Values
Original data: [-50]
Step 1: Inserted 100 at beginning
After insertion: [100, -50]
Step 2: Removed negative numbers
After removal: [100]
Step 3: Sorted in ascending order
After sorting: [100]
Final result: List is not empty
Processing complete: 1 values remainingProgramınız tüm işlemleri belirtilen tam sırayla gerçekleştirmelidir: önce 0. konuma 100 değerini insert() edin, ardından negatif sayıları kaldırmak için removeWhere() kullanın, sonra listeyi sort() edin ve son olarak listenin isEmpty olup olmadığını kontrol edin. Son listede hiç eleman yoksa "List is empty", eleman varsa "List is not empty" görüntüleyin.
Kendin dene
import 'dart:io';
void main() {
// Veri kümesi adını oku
String? datasetName = stdin.readLineSync();
// -999 ile karşılaşana kadar sayıları oku
List<int> originalData = [];
while (true) {
int? number = int.parse(stdin.readLineSync()!);
if (number == -999) {
break;
}
originalData.add(number);
}
// Başlangıç bilgilerini yazdır
print('Dataset: $datasetName');
print('Original data: $originalData');
// TODO: Kodunuzu aşağıya yazın
// 1. Başlangıca (0. pozisyona) 100 ekleyin
// 2. removeWhere() kullanarak tüm negatif sayıları kaldırın
// 3. sort() kullanarak listeyi artan düzende sıralayın
// 4. isEmpty kullanarak listenin boş olup olmadığını kontrol edin
// 5. Sonuçları istenen formatta yazdırın
}Mantık & Akış bölümündeki tüm dersler
1İleri Düzey Liste İşlemleri
Liste Özellikleri: first & lastListe Durumu: isEmpty & isNotEmptyBir Listeyi Tersine ÇevirmeListeye Ekleme: insertListeden Silme: removeWhereListede Bulma: indexOfBir Listeyi SıralamaBir Listeyi KarıştırmaÖzet - Liste Düzenleyici4İleri Seviye Map İşlemleri
Map Üzerinde GezinmeAnahtar ve Değer KontrolüMap Özellikleri: keys & valuesKoşullu Ekleme: putIfAbsentMap'ten Öge Kaldırmaİç İçe Map'lerÖzet - Envanter Güncelleme7İleri Seviye Fonksiyonlar
Anonim FonksiyonlarFonksiyonları Argüman Olarak AktarmaClosure'ları AnlamakÖzyinelemeye GirişÖzyinelemeli Fonksiyon: Geri SayımÖzyinelemeli Fonksiyon: FaktöriyelÖzet - Liste İşleyici10Son Meydan Okumalar
Meydan Okuma: Not SıralayıcıMeydan Okuma: Sesli Harf SayacıMeydan Okuma: FizzBuzz2Fonksiyonel Liste İşlemleri
'map' ile Dönüştürme'where' ile Filtreleme'.toList()' Kullanımı'any' ile Koşul Kontrolü'every' ile Koşullar'firstWhere' ile BulmaÖzet - Veri Filtreleme5Proje: Alışveriş Sepeti Hesaplayıcı
Proje KurulumuSepete Ürün Ekleme3Kümeler
Küme Nedir?Küme OluşturmaKümelere Eleman Ekleme ve ÇıkarmaKüme İçinde Eleman KontrolüListeyi Kümeye DönüştürmeKüme BirleşimiKüme KesişimiKüme FarkıÖzet - Benzersiz Davetli Listesi