Friday, November 29, 2024

Mobil Hafta 08 class

// METODLAR, Method, function

// çağrılmadığı sürece çalışmayan kod bloğudur.
// sürekli tekrar tekrar uzun kod yazmamak için
// düzen için
// metodlara istediğimiz adı verebiliriz.
// bir blokta aynı isimde bir metod olamaz (c# da böyle değil)

// tanımlanması
// DönüşTipi MetodAdı(){  
// }
import 'dart:math';

// void, boş, hiç anlamına geliyor,
// dönüştipi olarak yazarsak hiçbirşey döndürmez denir

void MerhabaYaz(){
  print("Merhaba");
}

// Parametre ile devam edelim.
// Parametre, metodun çağrılırken içerisine veri göndermemizi sağlar
void EkranaYaz(String yazi){
  print(yazi);
}

// Birden fazla parametre olabilir,
// parametreleri , ile ayırırız
void ToplamiYaz(int a, int b){
  int toplam = a + b;
  print("Toplam = $toplam");
}

// ToplamHesapla adında bir metod istese idik
// ne yapacaktı, toplamı hesaplayıp, sonucu çağrıldığı yere döndürmesi lazım
// dönüştipi void değilse, mutlaka return olmalıdır.
int ToplamHesapla(int a, int b){
  int toplam = a+b;
  return toplam; // geri döndür, değeri
  // Not: return görüldüğünde metoddan çıkılır.
}



void main(){
  MerhabaYaz(); // çağırmak için adını yazmak yeterlidir,
  // aslında zaten metod kullanmıştık
  // print("Ekrana bir şey yazdık."); // mesela bu voiddi, işi yapar çağrıldığoı yere döner
  // int sayi = Random().nextInt(10);  // bu ise çağrıldığı yere bir sayı döndürüyor.
  EkranaYaz("Recep ÖZEN");
  ToplamiYaz(5, 6);
  int sonuc = ToplamHesapla(5,6);
  print(sonuc);
}


// ZarAt adında bir metod tanımlayın.
// ve metodu kullanarak ürettiğiniz sayıyı ekrana yazın

import 'dart:math';

import 'p1101.dart';

int ZarAt(){
  int zar = Random().nextInt(6)+1;
  return zar;
}

void main(List<String> args) {
  print(zarAt());

  int sayi = zarAt();
  print(sayi);

}


// Zorunlu olmayan parametreler
// metoda bir parametre yazdığımızda, çağırırken mecburi parametre de yazılmalı

import 'dart:io';
import 'dart:math';

// void EkranaYaz(String yazi){
//   stdout.write(yazi);
// }
// // yukarıdaki metod, ekrana yazar alta geçmez


// void EkranaYaz(String yazi, bool yenisatir){
//   stdout.write(yazi);
//   if(yenisatir){
//     stdout.write("\n");
//   }
// }

// void main(List<String> args) {
//   EkranaYaz("Recep",false);
//   EkranaYaz("ÖZEN",false);
// }

// ************************************************
// zorunlu olmayan parametreler küme bloğu içerisinde tanımlanır
// öncelikle yazılması gerekenler, zorunlu olanlardır,
// yani küme bloğundaki parametreler, en sonda kullanılır.
// küme bloğunda tanımlanan parametrelerin, varsayılan değeri olmalıdır.
// void EkranaYaz(String yazi, {bool yenisatir=true}){
//   stdout.write(yazi);
//   if(yenisatir){
//     stdout.write("\n");
//   }
// }

// void main(List<String> args) {
//   EkranaYaz("Recep",yenisatir: false);
//   EkranaYaz("ÖZEN");
// }

// ***************************************************

// kendisine gönderilen listeyi küçükten büyüğe veya
// büyükten küçüğe sıralanmış olarak ekrana yazan metodu tanımlayınız.
// parametre olarak liste gönderilecek, aynı zamanda yon adında bir zorunlu olmayan
// parametre de küçükten büyüğe mi büyükten küçüğe mi sıralanacağını belirtsin
// varsayılan olarak küçükten büyüğe sıralama yapılacaktır.

void Sirala(List<int> a, {bool yon = true}){
  List<int> yeni = a.toList();
  yeni.sort();
  if(yon) print(yeni);
  else print(yeni.reversed);
}

void Metod(int a, int b, int c){

}

void main(List<String> args) {
  List<int> liste = [3,56,7,23,8,1,9];
  Sirala(liste,yon: false);

  Sirala(liste);
  print(liste);

}



// KisiYarat adında gönderilen bilgiler ile kişi oluşturan
// metod yazıp, kişi yaratın
// Adı, Soyadı, TCNo, doğumyılı, Cinsiyet, Telefon, Email

// kişi yaratıldığını simüle etmek için bilgileri ekrana yazsın

// aşağıdaki yazımda bu bilgiler parametre olarak kesinlikle girilmeli, yoksa metodu çağıramayız
// void KisiYarat(String Ad, String Soyad, String TCNO, int dy, String Cinsiyet, String Telefon, String Email){

// }

// Cinsiyet, Telefon ve email bilgisi zorunlu olmasın.
void KisiYarat(String Ad, String Soyad, String TCNO, int dy, {String? Cinsiyet, String? Telefon, String? Email}){
  print("Ad: $Ad");
  print("Soyad: $Soyad");
  print("TCNo: $TCNO");
  print("Doğum Yılı: $dy");
  if(Cinsiyet!=null) print("Cinsiyet: $Cinsiyet");
 if(Telefon!=null) print("Telefon: $Telefon");
  if(Email!=null) print("Email: $Email");
}


void main(List<String> args) {
  KisiYarat("Recep", "ÖZEN", "52753025212", 1980);

  KisiYarat("Recep", "ÖZEN", "52753025212", 1980, Cinsiyet: "Erkek",Email: "recepozen54@gmail.com");
}



// KisiYarat metodu olsun yine, ad soyad cinsiyet ve medenihali göndereceğiz.

// void KisiYarat(String ad, String soyad, String cinsiyet, String medeniHali) {

// }


// enumaration, numaralandırma
enum Cinsiyet{
  Erkek,
  Kadin
}

enum MedeniHal{
  Bekar,
  Evli,
  Dul,
  AyriYasiyor,
  Bosanmis
}

void KisiYarat(String ad, String soyad, Cinsiyet cinsiyet, MedeniHal medeniHali) {
print(ad);
print(soyad);

if(cinsiyet==Cinsiyet.Erkek) print("ERKEK");
if(cinsiyet==Cinsiyet.Kadin) print("KADIN");

switch (medeniHali) {
  case MedeniHal.AyriYasiyor:
    print("Ayrı Yaşıyor");
    break;
    case MedeniHal.Evli:
    print("evli");
    break;
    case MedeniHal.Bekar:
    print("Bekar");
    break;
    case MedeniHal.Dul:
    print("Dul");
    break;
    case MedeniHal.Bosanmis:
    print("Boşanmış");
    break;
  default:
}
}


void main(List<String> args) {

  KisiYarat("Recep", "ÖZEN", Cinsiyet.Erkek,MedeniHal.Evli);
  KisiYarat("Yağmur", "Tatlısu", Cinsiyet.Kadin, MedeniHal.Bekar);

}


void main(List<String> args) {
  // constant - Sabit
  const pi = 3.14;

  // const ile tanımlanan değişken sadece bir defa atanabilir.
  // const a; bu hata verir
  // const ile tanımlanan sabit değişken, tanımlandığı anda değer ataması yapılmalıdır.

  final pi2 = 3.14;
  //pi2 = 4; // burada hata alınır
  // const ve final ikisi de sabit değişkenlerdir.

  // const atanırken değer tanımlanmalı idi
  // final ise tanımlandığı anda değer ataması yapılmak zorunda değildir
  // ataması yapıldıktan sonra bir daha atama yapılamaz, değeri değiştirilemez
  final pi3;
  pi3=3.14; // atama sonra da yapılabilir.
  // pi3=3; // burada hata alırız


  // final veya const ile tanımlanan değişkenler, var gibi davranır.
  // yani ilk atamadaki değerin türünü alır.
}




// Class nedir? Sınıftır.
// sınıf nedir? kültürel anlamda sormuyoruz, programlamada

// Class yapıdır, Class fıtrattır, Class plandır
// planların özellikleri vardır
// örneğin bina planının kat adedi, daire adedi, rengi, vb
// insan fıtratının, cinsiyeti, kangrubu, kanrengi, tenrengi vb.

// Nesne yönelimli programlama, Nesne tabanlı programlama
// her nesnenin bir fıtratı vardır, planı vardır,
// yani özelliklerini ve yeteneklerini belirten unsurları vardır.

// bir class nasıl tanımlanır

// class ClassAdi{

// }

// kedi fıtratı yazıyoruz.
class Kedi{
  // Özellikleri (Property), değişkenler olarak ifade edebiliriz.
  // String Renk; // Bu şekilde yazdığımızda hata alırız.
  // sebebi diyor ki nesne türetilir ise bu plandan, yani gerçek bir kedi
  // üretilirse rengi yok. yani varsayılan rengi yok diyor.
  // ya bir kedi üretildiğinde varsayılan rengi olmalı
  // String Renk = "Sarı";

  // ya bir kedi üretildiğinde varsayılan olarak null olsun
  // String? Renk; // tabii ki kullanacağımız zaman null ise ne yapacağını söylememiz lazım.

  // late String Renk; // bu ifade sonra anlamında kullanılabilir
  // diyoruz ki programa, bu Renk değeri null olmayacak, ama ben değeri
  // daha sonra atacağım, hata olabileceğinin farkındayım.

  // değişkenlere classlarda Field adı da verilir.
  String? renk;
  int? yas;
  int? patiSayisi;
  String? gozrengi;
  bool? tuylu;

  // Yetenekleri (Method), metodlar olarak ifade edebiliriz.

  void Miyav() {
    print("Miyav miyav");
  }

  void Yuru(){
    print("Yurudum, $yas yaşındayım, yoruldum");
  }
}


void main(List<String> args) {
  // Bir kedi yaratalım
  // kedi sınıfından bir nesne üreteceğiz.
  Kedi k1 = new Kedi();
  k1.gozrengi = "Ela";
  k1.patiSayisi = 5;
  k1.tuylu = false;
  k1.renk = "Turuncu";
  k1.yas = 5;

  k1.Miyav();
  k1.Yuru();

  var k2 = new Kedi();
  k2.yas = 10;

  k1.Yuru();
  k2.Yuru();
}



// Kişinin bilgilerini tutan Person adında bir sınıf tanımlayın

// Ad, Soyad, Maas bilgilerini tutsun


// Klavyeden bu gerekli bilgileri giriş alan
// kişi oluşturarak sonra bu kişiyi ekrana yazan programı yazınız.

import 'dart:io';

class Person{
  String? ad;
  String? soyad;
  double? maas;
}

void main(List<String> args) {
  stdout.write("Ad giriniz: ");
  String ad = stdin.readLineSync()!;

  stdout.write("Ad giriniz: ");
  String soyad = stdin.readLineSync()!;
 
  stdout.write("Ad giriniz: ");
  double maas = double.parse(stdin.readLineSync()!);

  Person kisi = new Person();
  kisi.ad =ad;
  kisi.soyad=soyad;
  kisi.maas = maas;
 
  print("Kişi Adı: ${kisi.ad}");
  print("Kişi soyadı: ${kisi.soyad}");
  print("Kişi maası: ${kisi.maas}");


  Person kisi2 = Person(); // new yazılmasa da yazılmış gibi nesne türetilir.
  // ClassAdı() yaptığımızda new ClassAdı() yapmış oluruz.
 
  stdout.write("Ad giriniz: ");
  kisi2.ad = stdin.readLineSync()!;

  stdout.write("Ad giriniz: ");
  kisi2.soyad = stdin.readLineSync()!;
 
  stdout.write("Ad giriniz: ");
  kisi2.maas = double.parse(stdin.readLineSync()!);

 
  print("Kişi Adı: ${kisi2.ad}");
  print("Kişi soyadı: ${kisi2.soyad}");
  print("Kişi maası: ${kisi2.maas}");
}

















 

Monday, November 25, 2024

Mobil Hafta 07

// METODLAR, Method, function

// çağrılmadığı sürece çalışmayan kod bloğudur.
// sürekli tekrar tekrar uzun kod yazmamak için
// düzen için
// metodlara istediğimiz adı verebiliriz.
// bir blokta aynı isimde bir metod olabilir (c# da böyle değil)

// tanımlanması
// DönüşTipi MetodAdı(){  
// }

// void, boş, hiç anlamına geliyor,
// dönüştipi olarak yazarsak hiçbirşey döndürmez denir

import 'dart:math';

void MerhabaYaz(){
  print("Merhaba");
}

// Parametre ile devam edelim.
// Parametre, metodun çağrılırken içerisine veri göndermemizi sağlar
void EkranaYaz(String yazi){
  print(yazi);
}

// Birden fazla parametre olabilir,
// parametreleri , ile ayırırız
void ToplamiYaz(int a, int b){
  int toplam = a + b;
  print("Toplam = $toplam");
}

// ToplamHesapla adında bir metod istese idik
// ne yapacaktı, toplamı hesaplayıp, sonucu çağrıldığı yere döndürmesi lazım
// dönüştipi void değilse, mutlaka return olmalıdır.
int ToplamHesapla(int a, int b){
  int toplam = a+b;
  return toplam; // geri döndür, değeri
  // Not: return görüldüğünde metoddan çıkılır.
}



void main(){
  MerhabaYaz(); // çağırmak için adını yazmak yeterlidir,
  // aslında zaten metod kullanmıştık
  // print("Ekrana bir şey yazdık."); // mesela bu voiddi, işi yapar çağrıldığoı yere döner
  // int sayi = Random().nextInt(10);  // bu ise çağrıldığı yere bir sayı döndürüyor.
  EkranaYaz("Recep ÖZEN");
  ToplamiYaz(5, 6);
  int sonuc = ToplamHesapla(5,6);
  print(sonuc);

} 

// ZarAt adında bir metod tanımlayın.
// ve metodu kullanarak ürettiğiniz sayıyı ekrana yazın

import 'dart:math';

import 'p1101.dart';

int ZarAt(){
  int zar = Random().nextInt(6)+1;
  return zar;
}

void main(List<String> args) {
  print(zarAt());

  int sayi = zarAt();
  print(sayi);

}


// Zorunlu olmayan parametreler
// metoda bir parametre yazdığımızda, çağırırken mecburi parametre de yazılmalı

import 'dart:io';

// void EkranaYaz(String yazi){
//   stdout.write(yazi);
// }
// // yukarıdaki metod, ekrana yazar alta geçmez


// void EkranaYaz(String yazi, bool yenisatir){
//   stdout.write(yazi);
//   if(yenisatir){
//     stdout.write("\n");
//   }
// }

// void main(List<String> args) {
//   EkranaYaz("Recep",false);
//   EkranaYaz("ÖZEN",false);
// }

// ************************************************
// zorunlu olmayan parametreler küme bloğu içerisinde tanımlanır
// öncelikle yazılması gerekenler, zorunlu olanlardır,
// yani küme bloğundaki parametreler, en sonda kullanılır.
// küme bloğunda tanımlanan parametrelerin, varsayılan değeri olmalıdır.
// void EkranaYaz(String yazi, {bool yenisatir=true}){
//   stdout.write(yazi);
//   if(yenisatir){
//     stdout.write("\n");
//   }
// }

// void main(List<String> args) {
//   EkranaYaz("Recep",yenisatir: false);
//   EkranaYaz("ÖZEN");
// }

// ***************************************************

// kendisine gönderilen listeyi küçükten büyüğe veya
// büyükten küçüğe sıralanmış olarak ekrana yazan metodu tanımlayınız.
// parametre olarak liste gönderilecek, aynı zamanda yon adında bir zorunlu olmayan
// parametre de küçükten büyüğe mi büyükten küçüğe mi sıralanacağını belirtsin
// varsayılan olarak küçükten büyüğe sıralama yapılacaktır.

void Sirala(List<int> a, {bool yon = true}){
  List<int> yeni = a.toList();
  yeni.sort();
  if(yon) print(yeni);
  else print(yeni.reversed);
}

void main(List<String> args) {
  List<int> liste = [3,56,7,23,8,1,9];
  Sirala(liste,yon: false);
  print(liste);
}




Monday, November 18, 2024

Mobil 06.5 Listeler

// Ö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.

import 'dart:io';
import 'dart:math';

void main(List<String> args) {
  List<int> sayilar = [];

  for (var i = 0; i < 5; i++) {
    sayilar.add(Random().nextInt(10)+1);
  }
  print(sayilar);

  stdout.write("aramak istediğiniz sayıyı girin: ");
  int sayi = int.parse(stdin.readLineSync()!);

  if(sayilar.indexOf(sayi) != -1){
    print("Listede var");
  }
  else{
    print("Listede yok");
  }


}


// çalıştırıldığında birbirinden farklı 3 zar atarak
// gelen zarları ekrana yazan program

import 'dart:math';

void main(List<String> args) {
  List<int> zarlar = [];

  while(zarlar.length != 3){
    int zar = Random().nextInt(6)+1;
    if(zarlar.indexOf(zar) == -1) zarlar.add(zar);
  }

  print(zarlar);
}



 // Çalıştırıldığında sayısal loto kuponu oluşturan program

// sayısal loto kuponunda 1-49 arasında 6 adet sayı oluyordu
// ancak, aynı sayı tekrar gelmemeli, yani birbirinden farklı olmalılar
// küçükten büyüğe sıralı olarak yanyana yazdıralım, aralarına - koyalım

import 'dart:io';
import 'dart:math';

void main(List<String> args) {
  List<int> kolon = [];

  while(kolon.length != 6){
    int sayi = Random().nextInt(49)+1;
    if(kolon.indexOf(sayi) == -1) kolon.add(sayi);
  }

  kolon.sort();
  for (var i = 0; i < kolon.length; i++) {
    stdout.write(kolon[i]);
    if(i!= kolon.length-1) stdout.write(" - ");
  }
}






11B odev01

 // 11B ÖDEV

// ödev recepozen54@hotmail.com adresine yollanacak
// Konu aşağıdaki gibi olmalı
// MU2025 11B Odev01 OkulNo Ad Soyad
// MU2025 11B Odev01 136 Recep ÖZEN

// Ödev son teslim Tarihi: 19.11.2024 23:59:59


// Ayşe ile Ahmet, akıllarında rastgele olarak
// 5 er tane 1-50 arasında rastgele sayı tutuyorlar

// daha sonra birbirlerine bu sayıları söylüyorlar
// en sonunda ikisininde ortak tuttuğu sayıları tespit ediyorlar

// ayşe ile Ahmet için sayılar üretip bu sayıları yazan
// ve tuttukları sayılardan ortak olanları ekrana yazan programı yazınız.

Mobil Hafta 06 - Listeler

// 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.









Tuesday, November 5, 2024

Mobil Hafta 05



import 'dart:io';
import 'dart:math';

void main(List<String> args) {
  // Sayı tutan bir listeye ihtiyacımız var
  List<int> liste = [];

  // 6 kere sayı üretilecek
  for (var i = 0; i < 6; i++) {
   
  // her üretildiğinde listeye eklenecek
    liste.add(Random().nextInt(49)+1);
  }
  // liste ekrana yazılacak
  print(liste);

  // for (var i = 0; i < liste.length; i++) {
  //   for (var j = i; j < liste.length; j++) {
  //     if(liste[i]>liste[j]){
  //       int gecici = liste[i];
  //       liste[i] = liste[j];
  //       liste[j] = gecici;
  //     }
  //   }
  // }
  List<int> yedek = liste.toList();

  liste.sort(); // listeyi sıralar
  //print(liste.reversed); // listenin tersini döndürür
  print(liste);
  print(yedek);

  for (var i = 0; i < liste.length; i++) {
    stdout.write(liste[i].toString().padLeft(2,"0"));
    if(i!=liste.length-1) stdout.write("-");
  }

// listenin her bir elemanı için döner
// her dönüşte belirtilen değişken sıradaki değeri alır.
// sadece okunabilir özelliktedir.
  for (var element in liste) {
    print(element);
    element = 6; // foreach mantığında elemanlar readonly gibidir, okunabilir ama değiştirilemez.

  }
  print(liste);
}




// 9,7,2,6,4,5 değerlerini tutan bir liste hazırlayın.
// bu listeyi küçükten büyüğe sıralayın
// tüm elemanları yanyana aralarında boşluk olacak şekilde yazın

import 'dart:io';

void main(List<String> args) {
  List<int> dizi = [9,7,2,6,4,5];

  dizi.sort();

  for (var element in dizi) {
    stdout.write("$element ");
  }
}


// Klavyeden girilen yılın 365 gün mü,
// 366 gün mü çektiğini ekrana yazdıran programı yazınız

import 'dart:io';

void main(List<String> args) {
  stdout.write("Bir sayı girin: ");
  int yil = int.parse(stdin.readLineSync()!);

  if (yil % 4 == 0) {
    print("366 gün");
  }
  else{
    print("365 gün");
  }
}


import 'dart:io';

void main(List<String> args) {
  // çalıştırıldığında aşağıdaki çıktıyı veren programı yazınız.
  /*

   * * * * *
     * * * *
       * * *
         * *  
           *
 
   */



  for (var i = 0; i < 5; i++) {
     for (var j = 0; j < i; j++) {
      stdout.write(" ");
    }
    for (var j = 0; j < 5-i; j++) {
      stdout.write("*");
    }
    stdout.writeln("");
  }
}


import 'dart:io';

void main(List<String> args) {
  // çalıştırıldığında aşağıdaki çıktıyı veren programı yazınız.
  /*


   *
   * *
   * * *
   * * * *
   * * * * *
   * * * * *
     * * * *
       * * *
         * *  
           *
 
   */

  for (var i = 0; i < 5; i++) {
    for (var j = 0; j < i+1; j++) {
      stdout.write("*");
    }
    stdout.writeln("");
  }

  for (var i = 0; i < 5; i++) {
    for (var j = 0; j < 5-i; j++) {
      stdout.write("*");
    }
    stdout.writeln("");
  }
}

 

Monday, November 4, 2024

Mobil Hafta 04

// Rastgele üretilen 10 sayıdan çift olanların
// toplamını ekrana yazan program

import 'dart:math';

void main(List<String> args) {
  int toplam = 0;
  for (var i = 0; i < 10; i++) {
    int sayi = Random().nextInt(100);
    if (sayi % 2 == 0) {
      toplam += sayi;
    }
  }

  print(toplam);
}


// Diziler, Listeler
// dizi nedir, liste nedir
// birden fazla unsuru barındırabilen yapılardır

// programlamada değişken tutan değişken olarak ifade edebiliriz.

void main(List<String> args) {
  int a = 7;

  // eğer birden fazla değerim var ise bunları nasıl tutarım
  List<int> liste = []; // [] bu işaret liste demektir.
  // liste oluşturulurken, List<tür> listeadi = [] şeklinde tanımlanır.
  // listenin elemanları olduğuna göre eleman sayısı da vardır.
  // liste.length bize uzunluğunu verecektir.
  print(liste.length);

  liste = [5,8,3,8,1];
  print(liste.length);

  // listenin elemanına nasıl erişilir
  // listeadı[indexno] ile elemana erişiriz.
  liste[3] = 4;
  print(liste);

  print(liste[2]);

  // listeye eleman ekleme
  liste.add(8);
  print(liste.length);

}


// liste adında sayı tutacak bir liste oluşturunuz.
// başlangıçta 6,3,9,2 değerlerini tutsun
// listenin eleman sayısını yazdırın
// listenin 3. elemanının değerini 5
// listenin 1. elemanının değerini 8 yapın
// listeyi tekrar ekrana yazdırın
// listenin tüm elemanlarını 0 yapın
// listeyi ekrana yazdırın.

//   List<int> liste = [];

void main(List<String> args) {
  List<int> liste = [6,3,9,2];
   print(liste.length);
   liste[2] = 5;
   liste[0] = 8;
   print(liste);

  // liste[0] = 0;
  // liste[1] = 0;
  // liste[2] = 0;
  // liste[3] = 0;

  for (var i = 0; i < liste.length; i++) {
    liste[i] =0;
  }
  print(liste);
}


// Haftanın günlerini tutan bir liste yapınız
// klavyeden 1-7 arasında bir sayı girildiğinde
// o günü ekrana yazan programı liste ile yapınız.

import 'dart:io';

void main() {
  List<String> gunler = ['Pazartesi', 'Salı', 'Çarşamba', 'Perşembe', 'Cuma', 'Cumartesi', 'Pazar'];

  int sayi;
  do {
    stdout.write("Bir sayı girin [1-7]: ");
    sayi = int.parse(stdin.readLineSync()!);
  } while (!(sayi >=1 && sayi<=7));

  print(gunler[sayi-1]);
}




// Klavyeden girilen rakamın okunuşunu ekrana yazan program

import 'dart:io';

void main(List<String> args) {
  List<String> okunus = ['Sıfır', 'Bir', 'İki', 'Üç', 'Dört', 'Beş', 'Altı', 'Yedi', 'Sekiz', 'Dokuz'];

    stdout.write("Bir sayı girin [1-7]: ");
    int sayi = int.parse(stdin.readLineSync()!);

    print("okunuşu: ${okunus[sayi]}");
}


// küçükten büyüğe sıralama

void main(List<String> args) {
  List<int> dizi = [3,7,5,2,4];
    // sıralaman önce orjinal halini saklayalım


  dizi.sort(); // diziyi küçükten büyüğe sıralar
 
  print(dizi.reversed); // dizinin ters halini döndürür
  print(dizi);




  // for (var i = 0; i < dizi.length; i++) {
  //   for (var j = i; j < dizi.length; j++) {
  //     if (dizi[i]>dizi[j]) {
  //       int gecici = dizi[i];
  //       dizi[i] = dizi[j];
  //       dizi[j] = gecici;
  //     }
  //   }
  // }



}