Tuesday, December 19, 2023

11B Flutter yeni proje ve kavramları anlama

 Youtube da yeni proje açma videosu mevcut.

alttaki device kısmından windows seçeceğiz. windows üzerinde uygulama geliştireceğiz. 


sürekli üretilen widgetın const yapılması uyarısını kaldırmak için 

aşağıdaki dosyada prefer const ayarını yapabilirsiniz.


Stateless widget ile class olarak nesneleri daraltabiliriz.


HomePage classımızın return kısmına bir scaffold oluşturalım



debug yazısını yok etmek için aşağıdaki yapılır. 



eğer bir widget ı çevreleyen bir yani o widgeta ebeveyn bir widget oluşturmak istersek , ctrl + . bu ekranı getirir.
















Monday, December 18, 2023

9b için

# ve , veya operatörleri

# ve, mantıksal çarpma gibidir.
# veya, mantıksal toplama gibidir.

'''
VE, herhangi biri yanlış ise sonuç yanlıştır.
p | q  | Q
0 | 0  | 0
0 | 1  | 0
1 | 0  | 0
1 | 1  | 1

VEYA, herhangi biri doğru ise sonuç doğrudur.
p | q  | Q
0 | 0  | 0
0 | 1  | 1
1 | 0  | 1
1 | 1  | 1

VE, and
VEYA, or
Koşullar arasına yazıldığında işlem yaparlar
'''



# Klavyeden Cinsiyeti (E-K) ve doğum yılı
# girilen kişinin askere gidip gitmeyeceğini
# ekrana yazan program

cinsiyet = input("Cinsiyeti Giriniz: ")
dy = int(input("Doğum yılınızı giriniz: "))

yas = 2023-dy

if cinsiyet == "E" and yas >=20:
    print("Askere gider")
else:
    print("Askere gitmez")


# Klavyeden 3 adet ürün fiyatı girildiğinde
# ürünlerin toplam fiyatı 200TL düşük ise
# 10% indirim,
# ürünlerin toplam fiyatı 200 den büyük olduğunda
# 20% indirim uygulanıyor.
# indirimli fiyatı ekrana yazan programı yazınız.

u1 = float(input("Ürün fiyatı girin: "))
u2 = float(input("Ürün fiyatı girin: "))
u3 = float(input("Ürün fiyatı girin: "))

toplam = u1+u2+u3

if toplam <200:
    ind = toplam * 10 /100
    print("indirimli fiyat: ", toplam-ind)
else:
    ind = toplam * 20 / 100
    print("indirimli fiyat: ", toplam - ind)



# bir koşul iki değerin birbirine göre durumunu belli bir şarta göre karşılaştır.
# true ya da false verir.

# karşılaştırma
# karşılaştırma ise iki değerin durumlarını ifade eder.
# iki veya daha fazla sonuç olabilir.

#Klavyeden girilen 2 sayıdan büyük
#olanı ekrana yazan,
# eşit olmaları durumunda sayılar eşit
# yazan programı yazınız.

a = int(input("Bir sayı girin: "))
b = int(input("Bir sayı girin : "))

if a>b:
    print(a)
else: # bu kısım a==b , b>a
    if a<b:
        print("b büyüktür")
    else:
        print("sayılar eşit")

#  yukarıdaki yerine elif ile yazılabilir.
# bir karşılaştırmanın sonucunda 2 den faazla durum oluşuyor ise elif kullanılabilir.

if a>b:
    print(a)
elif b>a:
    print(b)
else:
    print("sayılar eşit")


 

Tuesday, December 12, 2023

11B Classlardan devam Map mapten nesneye

 







SINAV NOTLARI LİSTELEME ÖRNEĞİ

// Öğrenci tablomuz ve öğrencilere ait notların olduğu bir tablomuz bulunmakta
// Program çalıştırıldığında Öğrencilerin numaralarını ve yanlarına adsoyadları listeleyiniz.
// ve program hangi öğrencinin notlarını görmek istediğimizi sorsun, okul no istesin
// okul numarası girilen öğrencinin notlarını listeleyen programı yazınız.

import 'dart:io';

import 'NotlarList.dart';
import 'OgrenciList.dart';

void main(List<String> args) {
  // öğrenci listesi sınıf ile üretiliyor
  List<Ogrenci> ogrList = [];
  for (var item in ogrenciler) {
    ogrList.add(Ogrenci.mapToOgrenci(item));
  }

// not listesi üretiliyor
  List<Puan> puanList = [];
  for (var item in notlar) {
    puanList.add(Puan.mapToPuan(item));
  }

// öğrenciler ekranda listeleniyor.
  for (var item in ogrList) {
    print("${item.OkulNo} - ${item.AdSoyad}");
  }

// hangi öğrencinin notlarının listeleneceğini kullanıcıya soruyoruz
  print("Notları görmek istediğiniz öğrencinin Okul Nosunu giriniz: ");
  int okulNo = int.parse(stdin.readLineSync()!);

// girilen okul numarasına göre öğrenci aranıyor
  var ogr = ogrList.where((x) => x.OkulNo == okulNo).firstOrNull;

  if (ogr == null) {
    // öğrenci bulanamadı ise bilgilendiriliyor
    print("Böyle bir öğrenci bulunamadı");
  } else {
    // ogr null değil, yani öğrenci bulunmuş, öğrenci idsine göre notları aranıyor.
    var ogrNotlari = puanList.where((x) => x.OgrID == ogr.ID);

    if (ogrNotlari.length == 0) {
      print("Bu öğrenciye ait not bilgisi mevcut değil");
    } else {
      print("${ogr.AdSoyad} isimli öğrencinin ders notları");
      for (var item in ogrNotlari) {
        print("${item.DersAdi} - ${item.DersNotu}");
      }
    }
  }
}

class Ogrenci {
  int? ID;
  int? OkulNo;
  String? AdSoyad;

  Ogrenci(this.ID, this.OkulNo, this.AdSoyad);
  Ogrenci.mapToOgrenci(Map<String, String> map) {
    this.ID = int.parse(map["ID"].toString());
    this.OkulNo = int.parse(map["OkulNo"].toString());
    this.AdSoyad = map["AdSoyad"];
  }
}

class Puan {
  int? ID;
  int? OgrID;
  String? DersAdi;
  int? DersNotu;

  Puan(this.ID, this.DersAdi, this.DersNotu, this.OgrID);
  Puan.mapToPuan(Map<String, Object> map) {
    this.ID = int.parse(map["ID"].toString());
    this.OgrID = int.parse(map["OgrID"].toString());
    this.DersNotu = int.parse(map["Notu"].toString());
    this.DersAdi = map["DersAdi"].toString();
  }
}



var ogrenciler = [
  {"ID": "1", "OkulNo": "986", "AdSoyad": "Kavram Esgin"},
  {"ID": "2", "OkulNo": "548", "AdSoyad": "Ünan Yabaneri"},
  {"ID": "3", "OkulNo": "481", "AdSoyad": "Simre Ceylan arapgirlioğlu"},
  {"ID": "4", "OkulNo": "998", "AdSoyad": "Ünzil Koban"},
  {"ID": "5", "OkulNo": "527", "AdSoyad": "Yiğithan Dirmen"},
  {"ID": "6", "OkulNo": "923", "AdSoyad": "Kalagay Yoncacı"},
  {"ID": "7", "OkulNo": "424", "AdSoyad": "Ayke Özer"},
  {"ID": "8", "OkulNo": "133", "AdSoyad": "Ürünay Bütün"},
  {"ID": "9", "OkulNo": "754", "AdSoyad": "Hürsev Uçar"},
  {"ID": "10", "OkulNo": "907", "AdSoyad": "Gülgen Şiray aslan"},
];


var notlar = [
  {"ID": "1", "DersAdi": "Matematik", "Notu": 45, "OgrID": 1},
  {"ID": "2", "DersAdi": "Türkçe", "Notu": 100, "OgrID": 1},
  {"ID": "3", "DersAdi": "Kimya", "Notu": 67, "OgrID": 1},
  {"ID": "4", "DersAdi": "Biyoloji", "Notu": 43, "OgrID": 1},
  {"ID": "5", "DersAdi": "Coğrafya", "Notu": 98, "OgrID": 1},
  {"ID": "6", "DersAdi": "Matematik", "Notu": 13, "OgrID": 2},
  {"ID": "7", "DersAdi": "Biyoloji", "Notu": 87, "OgrID": 2},
  {"ID": "8", "DersAdi": "Matematik", "Notu": 43, "OgrID": 3},
  {"ID": "9", "DersAdi": "Kimya", "Notu": 56, "OgrID": 3},
  {"ID": "10", "DersAdi": "Coğrafya", "Notu": 12, "OgrID": 3},
  {"ID": "11", "DersAdi": "Türkçe", "Notu": 76, "OgrID": 4},
  {"ID": "12", "DersAdi": "Biyoloji", "Notu": 62, "OgrID": 4},
  {"ID": "13", "DersAdi": "Coğrafya", "Notu": 78, "OgrID": 2},
  {"ID": "14", "DersAdi": "Tarih", "Notu": 99, "OgrID": 1},
];