// DİZİLER, LİSTELER
// listeler, birden fazla değer tutmam gerekiyor ise liste kullanabiliriz
// Listenin içindeki türler aynı olur.
// List<tür> değişkenadı;
// List<String> liste; // liste tanımlandı ama bir listeyi işaret etmiyor. yani null
// List<String> liste = []; boş bir liste ile eşitlendi, artık bir listeyi işaret ediyor.
// List<String> liste = ["İfade1", "ifade2", "ifade3"]; // başlangıçtada değerlere sahip bir liste tanımlanabilir.
void main(List<String> args) {
List<int> liste = [];
// liste.length -> listenin uzunluğunu yani eleman sayısını verir.
print(liste.length);
// bir listeye eleman ekleme
liste.add(17);
liste.add(5);
print(liste.length);
// listenin elemanlarına index no ile erişilir. index no 0 dan başlar
// yani ilk eleman 0. eleman olacaktır, son eleman ise length-1 olacaktır.
// 5 elemanlı bir listenin son elemanına erişmek için 4 değeri kullanılır.
// Bir listenin elemanına eriştiğimizde aslında değişkene erişmiş oluruz, hem okuyabilir, hem de yazabiliriz.
print(liste[1]);
liste[0] = 8;
print(liste);
print(liste.reversed); // listenin tersini döndürür, listeyi değiştirmez, yani bu sadece değer döndürür.
liste.clear(); // listeyi temizler, yani tüm elemanları siler
liste = [8,5,7,5,6,4];
liste.remove(5); // en baştan itibaren belirtilen değeri listede arar, ilk bulduğunu siler, hepsini değil
print(liste);
liste.removeAt(3); // belirtilen indexteki değeri siler, dizinin son indexinden büyük bir değer girilir ise hata alınır.
print(liste);
}
// 3 yazılı 2 sözlü notu tutan notlar adında bir liste oluşturun.
// bu listeye, 0 - 100 arasında rastgele 5 değer atayın.
// Klavyeden kaçıncı notun silineceğini sorarak istenen notu silin
// notları ve notların ortalamasını aşağıdaki gibi ekrana yazdırın
// 45 - 65 - 43 - 76 = 78 (ort)
import 'dart:io';
import 'dart:math';
void main(List<String> args) {
List<int> notlar = [];
for (var i = 0; i < 5; i++) {
notlar.add(Random().nextInt(101)); // rastgele sayı üretip listeye ekliyoruz
}
print(notlar);
stdout.write("Kaçıncı notu sileceksiniz [1-5]:");
int index = int.parse(stdin.readLineSync()!) - 1; // adamın girdiği sırayı index olarak ele alıyoruz
notlar.removeAt(index);
int toplam=0;
for (var i = 0; i < notlar.length; i++) {
stdout.write(notlar[i]); // değeri yaz
toplam += notlar[i]; // değeri toplama ekle
if(i!=notlar.length-1) stdout.write(" - "); // son eleman değilse - koy
}
double ort = toplam / notlar.length;
print(" = $ort");
}
// String ifadeler normalde Char dizisi gibi davranırlar(liste gibi)
// ancak dart dilinde karaktere ulaştığınızda da türü string tir.
import 'dart:io';
void main(List<String> args) {
// String yazi = "Recep ÖZEN";
// print(yazi[3]);
//yazi[3] = "a"; // burada hata alırız, bu kullanım sadece okumadır, atama yapılamaz.
// Klavyeden girilen yazının harflerini ekrana alt alta yazan programı yazınız.
stdout.write("Bir yazı girin: ");
String yazi = stdin.readLineSync()!;
for (var i = 0; i < yazi.length; i++) {
print(yazi[i]);
}
}
// listelerdeki indexOf
// indexOf ile bir listede değer aranır,
// değer en baştan itibaren aranır, ilk bulduğunumn indexini döndürür
// eğer yok ise, yani listede bu değer yok ise -1 döndürür.
void main(List<String> args) {
List<int> liste = [4,5,7,2,8,6,1,9,2,9,3,1,4];
int sonuc = liste.indexOf(6); // 5 döndürür
print(sonuc);
sonuc = liste.indexOf(0);
print(sonuc);
}
// ÖDEV = rastgele 1-10 arasında 5 adet sayı üretin,
// bunları ekrana yazdırın, klavyeden girilen sayı bu listede var ise
// girdiğiniz sayı listede var diyen, yok ise listede yok diyen programı yazın.
No comments:
Post a Comment