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},
];


Monday, November 27, 2023

11B Mobil Uyg. Map

 





functions











classlar












Sunday, November 26, 2023

Monday, November 20, 2023

11B MOBİL UYGULAMALAR LİSTELER


void main() {
  // Dizi ne idi
// içinde aynı türde elemanlar barındıran yapılar idi.
// aynı türde değişkenler barındıran değişken türüdür.

// Liste tanımlama, köşeli parantez yazmak yeterli idi

  var liste = []; // 0 elemanlı bir liste tanımlamış olduk
  var doluliste = [1, 5, 7, 3, 8, 2];

  print(liste.length);
  print(doluliste.length);
  print("Başlangıçta dolu liste: $doluliste");
// Eski tip dizilerde dizi boyutu değiştirilemez.
// Listelerde ise eleman sayısı arttırılabilir, azaltılabilir

  doluliste.add(9); // Dizinin sonuna ekleme yapar
  doluliste.add(4);
  print("Ekleme yapıldıktan sonra doluliste: $doluliste");

// remove metodu
  doluliste.add(2); // şu an 2 adet 2 değerine sahip eleman var.
  doluliste.remove(2);
  // remove komutu baştan itibaren ilk bulduğu elemanı siler
  print("remove ile 2 değerini sildik,  $doluliste");

  // removeAt metodu, index numarası verilen elemanı siler
  doluliste.removeAt(2);
  print("removeat ile 2 indexli elemanı sildik, $doluliste");

  // insert, add en sona ekliyor idi, insert nereye ekleyeceğimizi söyleyebiliyoruz.
  doluliste.insert(2, 10);
  print("2 indexine 10 değerini insert ile ekledik, $doluliste");

  // listenin elemanına erişmek için köşeli parantez içinde index numarası yazılır.
  doluliste[3] = 12;
  print(doluliste);

  print("5 indexli elemanın değeri, ${doluliste[5]}");

  // listeyi ters çevirme
  var ters = doluliste
      .reversed; // belirtilen listenin tersini alarak yeni liste döndürür
  print(doluliste);
  print(ters);

  // sıralama
  doluliste.sort(); // orjinal liste sıralanır.
  print(doluliste);
}











 

Sunday, November 19, 2023

Tuesday, November 7, 2023

Mobil Uygulamalar Ara Tatil ödevi

 Dart dilinde liste tanımlama, listedeki bir elemanın değerini okuma, listedeki bir elemanın değerini değiştirme, listeye eleman ekleme, listeden eleman silme, listenin içinde arama yaparak listede olup olmadığını ve listenin kaçıncı eleman olduğunu gösterme konularını içeren bir örnek...


Dart dilinde map şeklinde ifade edilen liste biçimi için araştırma yapınız. 
kendi ifadeleriniz ile map nedir açıklayınız. bir uygulama örneği yapınız.
yaptığınız uygulamanın ne yaptığını açıklayınız.

method ya da function araştırınız. parametresiz, parametreli, 2 tane parametresi olan en az 3 adet function ın kullanıldığı bir örnek program yazınız. methodları programda kullanmalısınız. 

Object Oriented Programming(Nesne tabanlı programlama) nedir, açıklayınız.
Class nedir, kavramsal şekilde öğrendikten sonra kendi ifadeleriniz ile yazınız. 

Person adında bir class tanımlayarak, Ad, Soyad, OkulNo propertylerini içermesini sağlayınız.

oluşturmuş olduğunuz person sınıfından türetilen 5 adet kişiyi barındıran bir person listesi oluşturarak, bu listenin içindeki 3. elemanın  adını ve okul no sunu ekrana yazdıran programı yazınız.


Ödev gönderim Talimatları: 

recepozen54@hotmail.com adresine yollanacaktır.

Konu: 

MU2023 ODEV1 OkulNo Ad Soyad 

şeklinde yazılmalıdır. 

son gönderim tarihi: 19.11.2023 23:59:59 a kadardır

Monday, October 23, 2023

9. Sınıf Programlama Temelleri

 Okulumuzun Youtube Kanalından bu dersin içeriklerini takip edebilirsiniz.

Youtube ta kanala gitmek için TIKLAYINIZ


Akış diagram şekilleri, anlamları ve python karşılıklarını gösteren tablomuz aşağıdadır.







Tuesday, October 17, 2023

11B Mobil Uygulamalar 17.10.2023 Karar verme

 







Switch case kullanımı


import 'dart:io';

void main(List<String> args) {
  // Program çalıştırıldığında aşağıdaki menü görünsün.
  // seçime göre işlemlerin yapılmasını sağlayınız. Not: switch case kullanın

/*
Hesap Makinesi Programı
1. Topla
2. Çıkart
3. Çarp
4. Böl
5. Mod Al
Seçim Yapınız:

*/
  print("""
1. Topla
2. Çıkart
3. Çarp
4. Böl
5. Mod Al
Seçim Yapınız:
""");

  String secim = stdin.readLineSync()!;

  switch (secim) {
    case "1":
      print("Bir  sayı girin: ");
      int a = int.parse(stdin.readLineSync()!);
      print("Bir  sayı girin: ");
      int b = int.parse(stdin.readLineSync()!);

      print("Toplam: ${a + b}");
      break;
    case "2":
      print("Bir  sayı girin: ");
      int a = int.parse(stdin.readLineSync()!);
      print("Bir  sayı girin: ");
      int b = int.parse(stdin.readLineSync()!);

      print("Fark: ${a - b}");
      break;
    case "3":
      print("Bir  sayı girin: ");
      int a = int.parse(stdin.readLineSync()!);
      print("Bir  sayı girin: ");
      int b = int.parse(stdin.readLineSync()!);

      print("Çarpım: ${a * b}");
      break;
    case "4":
      print("Bir  sayı girin: ");
      int a = int.parse(stdin.readLineSync()!);
      print("Bir  sayı girin: ");
      int b = int.parse(stdin.readLineSync()!);

      print("Bölme: ${a / b}");
      break;
    case "5":
      print("Bir  sayı girin: ");
      int a = int.parse(stdin.readLineSync()!);
      print("Bir  sayı girin: ");
      int b = int.parse(stdin.readLineSync()!);

      print("Toplam: ${a % b}");
      break;
    default:
      print("Hatalı giriş");
      break;
  }
}



döngüler







while

do while


do while örnek soru

break


try




 listeler