Algo-I

Dönem projesi

Dönem Projesi: Portfolyo

Bu dönem her biriniz GitHub'da tek bir depo açacak ve o depoda küçük bir konsol uygulaması büyütecek. Konunuz ve sizi aynı konudaki arkadaşlarınızdan ayıran kural öğrenci numaranıza göre dağıtıldı; aşağıdaki kutuya numaranızı yazdığınızda ikisini de görürsünüz. Uygulama ilk haftalarda yalnızca bir soru sorup bir karar veren birkaç satırdan ibaret olacak, sonra menü döngüsü, girdi doğrulama, diziler ve metotlar eklenecek ve dönem sonunda çekirdek algoritması Python ve C'ye çevrilmiş halde teslim edilecek. Dersi alttan alan arkadaşlar da projeyi yapar; numaranız tabloda var.

Kilometre taşları

Dört teslim, hepsi Cuma 23.59

Her kilometre taşında Classroom 50 o saatte deponuzda ne varsa onu alır; ayrıca bir şey göndermeniz gerekmez. Yani teslim etmek demek, o Cuma akşamına kadar push etmiş olmak demektir.

  1. Cuma 6 Kasım

    23.59

    Depo, konu ve ilk karar: seçim yapıları

    Depo açılmış, README'de konunuz ve ayırt edici kuralınız yazılı. Uygulama Scanner ile girdi alıyor, en az bir if/else ile karar veriyor ve ayırt edici kural en basit haliyle kodda. Vizedeki 10 puanlık soru bu sürümden gelir.

  2. Cuma 27 Kasım

    23.59

    Döngülü sürüm: gözcü değerle biten menü

    Ana akış gözcü değerle (ör. 0 veya 'q') biten bir menü döngüsünde çalışıyor; yanlış girdiyi doğru girdiye kadar soran bir girdi doğrulama döngüsü var.

  3. Cuma 11 Aralık

    23.59

    Metotlu ve dizili sürüm

    Kod metotlara bölünmüş: dizi alıp tek değer döndüren bir metot ve girdi doğrulayan bir metot var; veriler dizide tutuluyor.

  4. Cuma 25 Aralık

    23.59

    Son teslim ve üç dil

    README tam, AI-BEYANI.md dolu, çalışan son sürüm. Çekirdek algoritma yapay zeka yardımıyla Python ve C'ye çevrilmiş, üç dil arasındaki farklar bir paragrafta anlatılmış. Finaldeki 15 puanlık soru bu sürümden gelir.

Konunuzu bulun

Öğrenci numaranızı yazın

Dağıtımın bir sırrı yok: konu, numaranızın 20'ye bölümünden kalana göre, ayırt edici kural ise son hanenize göre belirlendi. Bu yüzden aynı konuyu alan arkadaşlarınız bile farklı bir kuralla çalışacak.

Numaranızı yazmaya başlayın; eşleşen satır aşağıda görünür.

Tam liste

Atama tablosu

252 öğrenci: A şubesi 119, B şubesi 133; 105 arkadaş dersi alttan alıyor ve projeye dahil.

NoŞubeKonuKural
200541051alttan A K12 Bisiklet Kiralama 2 Zaman kuralı
220541023alttan A K04 Kampüs Ring Otobüsü 4 Günlük limit
220541040alttan B K01 Kantin Sipariş 1 Öğrenci indirimi
220541042alttan B K03 Yurt Çamaşırhane Sırası 3 Kritik uyarı
220541124alttan B K05 Spor Salonu Üyeliği 5 Sadakat puanı
220541612alttan B K13 Etkinlik Bileti 3 Kritik uyarı
225541086alttan B K07 Burs Hesaplama 7 Kapasite
230541025alttan B K06 Etüt Odası Rezervasyonu 6 Ceza
230541031alttan B K12 Bisiklet Kiralama 2 Zaman kuralı
230541078alttan B K19 Kampüs Kayıp Eşya 9 Yaş kuralı
230541089alttan A K10 Kafeterya Menüsü 10 Kara liste
230541109alttan B K10 Kafeterya Menüsü 10 Kara liste
235541051alttan A K12 Bisiklet Kiralama 2 Zaman kuralı
235541058alttan B K19 Kampüs Kayıp Eşya 9 Yaş kuralı
235541091alttan A K12 Bisiklet Kiralama 2 Zaman kuralı
235541097alttan A K18 Yemekhane Kart Bakiyesi 8 Kampanya
235542011alttan A K12 Bisiklet Kiralama 2 Zaman kuralı
240541022alttan B K03 Yurt Çamaşırhane Sırası 3 Kritik uyarı
240541033alttan A K14 Laboratuvar Malzeme Stoku 4 Günlük limit
240541034alttan B K15 Kulüp Üyeliği 5 Sadakat puanı
240541038alttan B K19 Kampüs Kayıp Eşya 9 Yaş kuralı
240541039 A K20 Revir Randevusu 10 Kara liste
240541048alttan B K09 Ders Programı Çakışması 9 Yaş kuralı
240541051alttan B K12 Bisiklet Kiralama 2 Zaman kuralı
240541075alttan A K16 Kampüs Otoparkı 6 Ceza
240541081alttan A K02 Kütüphane Ödünç 2 Zaman kuralı
240541083alttan A K04 Kampüs Ring Otobüsü 4 Günlük limit
240541094alttan A K15 Kulüp Üyeliği 5 Sadakat puanı
240541098alttan B K19 Kampüs Kayıp Eşya 9 Yaş kuralı
240541106alttan B K07 Burs Hesaplama 7 Kapasite
240541117alttan A K18 Yemekhane Kart Bakiyesi 8 Kampanya
240541119alttan A K20 Revir Randevusu 10 Kara liste
240541120alttan B K01 Kantin Sipariş 1 Öğrenci indirimi
240541121alttan A K02 Kütüphane Ödünç 2 Zaman kuralı
240541125alttan A K06 Etüt Odası Rezervasyonu 6 Ceza
240541142alttan B K03 Yurt Çamaşırhane Sırası 3 Kritik uyarı
240541166alttan B K07 Burs Hesaplama 7 Kapasite
240541605alttan A K06 Etüt Odası Rezervasyonu 6 Ceza
240541607alttan A K08 Not Ortalaması 8 Kampanya
240541608alttan B K09 Ders Programı Çakışması 9 Yaş kuralı
240541611alttan A K12 Bisiklet Kiralama 2 Zaman kuralı
240541612alttan B K13 Etkinlik Bileti 3 Kritik uyarı
240542002alttan B K03 Yurt Çamaşırhane Sırası 3 Kritik uyarı
240542006alttan B K07 Burs Hesaplama 7 Kapasite
240542007alttan A K08 Not Ortalaması 8 Kampanya
240542011alttan A K12 Bisiklet Kiralama 2 Zaman kuralı
240542019alttan A K20 Revir Randevusu 10 Kara liste
245541013alttan A K14 Laboratuvar Malzeme Stoku 4 Günlük limit
250541002alttan B K03 Yurt Çamaşırhane Sırası 3 Kritik uyarı
250541006alttan B K07 Burs Hesaplama 7 Kapasite
250541008alttan B K09 Ders Programı Çakışması 9 Yaş kuralı
250541011alttan A K12 Bisiklet Kiralama 2 Zaman kuralı
250541013alttan A K14 Laboratuvar Malzeme Stoku 4 Günlük limit
250541019alttan A K20 Revir Randevusu 10 Kara liste
250541021alttan A K02 Kütüphane Ödünç 2 Zaman kuralı
250541023alttan A K04 Kampüs Ring Otobüsü 4 Günlük limit
250541024alttan B K05 Spor Salonu Üyeliği 5 Sadakat puanı
250541025alttan A K06 Etüt Odası Rezervasyonu 6 Ceza
250541026alttan B K07 Burs Hesaplama 7 Kapasite
250541028alttan B K09 Ders Programı Çakışması 9 Yaş kuralı
250541032alttan B K13 Etkinlik Bileti 3 Kritik uyarı
250541035alttan B K16 Kampüs Otoparkı 6 Ceza
250541036alttan B K17 Fotokopi Merkezi 7 Kapasite
250541038alttan B K19 Kampüs Kayıp Eşya 9 Yaş kuralı
250541040alttan B K01 Kantin Sipariş 1 Öğrenci indirimi
250541041alttan B K02 Kütüphane Ödünç 2 Zaman kuralı
250541049alttan A K10 Kafeterya Menüsü 10 Kara liste
250541050alttan B K11 Kitap Takası 1 Öğrenci indirimi
250541052alttan B K13 Etkinlik Bileti 3 Kritik uyarı
250541059alttan A K20 Revir Randevusu 10 Kara liste
250541060alttan B K01 Kantin Sipariş 1 Öğrenci indirimi
250541064alttan B K05 Spor Salonu Üyeliği 5 Sadakat puanı
250541068alttan B K09 Ders Programı Çakışması 9 Yaş kuralı
250541070alttan B K11 Kitap Takası 1 Öğrenci indirimi
250541072alttan B K13 Etkinlik Bileti 3 Kritik uyarı
250541074alttan B K15 Kulüp Üyeliği 5 Sadakat puanı
250541076alttan B K17 Fotokopi Merkezi 7 Kapasite
250541079alttan A K20 Revir Randevusu 10 Kara liste
250541080alttan A K01 Kantin Sipariş 1 Öğrenci indirimi
250541082alttan B K03 Yurt Çamaşırhane Sırası 3 Kritik uyarı
250541086alttan A K07 Burs Hesaplama 7 Kapasite
250541089alttan B K10 Kafeterya Menüsü 10 Kara liste
250541090 B K11 Kitap Takası 1 Öğrenci indirimi
250541092alttan A K13 Etkinlik Bileti 3 Kritik uyarı
250541093alttan A K14 Laboratuvar Malzeme Stoku 4 Günlük limit
250541094alttan B K15 Kulüp Üyeliği 5 Sadakat puanı
250541098alttan B K19 Kampüs Kayıp Eşya 9 Yaş kuralı
250541103alttan A K04 Kampüs Ring Otobüsü 4 Günlük limit
250541105alttan A K06 Etüt Odası Rezervasyonu 6 Ceza
250541108alttan A K09 Ders Programı Çakışması 9 Yaş kuralı
250541111alttan A K12 Bisiklet Kiralama 2 Zaman kuralı
250541124alttan B K05 Spor Salonu Üyeliği 5 Sadakat puanı
250541126alttan B K07 Burs Hesaplama 7 Kapasite
250541131alttan A K12 Bisiklet Kiralama 2 Zaman kuralı
250541602 B K03 Yurt Çamaşırhane Sırası 3 Kritik uyarı
250541605alttan A K06 Etüt Odası Rezervasyonu 6 Ceza
250541606 B K07 Burs Hesaplama 7 Kapasite
250541608alttan B K09 Ders Programı Çakışması 9 Yaş kuralı
250541613 A K14 Laboratuvar Malzeme Stoku 4 Günlük limit
250541615alttan A K16 Kampüs Otoparkı 6 Ceza
250541618alttan B K19 Kampüs Kayıp Eşya 9 Yaş kuralı
250541620 B K01 Kantin Sipariş 1 Öğrenci indirimi
250541621alttan A K02 Kütüphane Ödünç 2 Zaman kuralı
250541622 B K03 Yurt Çamaşırhane Sırası 3 Kritik uyarı
250541623alttan A K04 Kampüs Ring Otobüsü 4 Günlük limit
250541624 B K05 Spor Salonu Üyeliği 5 Sadakat puanı
250541626 B K07 Burs Hesaplama 7 Kapasite
250541628 B K09 Ders Programı Çakışması 9 Yaş kuralı
250541629 B K10 Kafeterya Menüsü 10 Kara liste
250541632 B K13 Etkinlik Bileti 3 Kritik uyarı
250542001alttan A K02 Kütüphane Ödünç 2 Zaman kuralı
250542002alttan B K03 Yurt Çamaşırhane Sırası 3 Kritik uyarı
250542005alttan A K06 Etüt Odası Rezervasyonu 6 Ceza
250542008alttan B K09 Ders Programı Çakışması 9 Yaş kuralı
250542015 B K16 Kampüs Otoparkı 6 Ceza
250542020alttan B K01 Kantin Sipariş 1 Öğrenci indirimi
250542022alttan B K03 Yurt Çamaşırhane Sırası 3 Kritik uyarı
250542025alttan A K06 Etüt Odası Rezervasyonu 6 Ceza
260541001 A K02 Kütüphane Ödünç 2 Zaman kuralı
260541002 B K03 Yurt Çamaşırhane Sırası 3 Kritik uyarı
260541003 A K04 Kampüs Ring Otobüsü 4 Günlük limit
260541004 B K05 Spor Salonu Üyeliği 5 Sadakat puanı
260541005 A K06 Etüt Odası Rezervasyonu 6 Ceza
260541006 B K07 Burs Hesaplama 7 Kapasite
260541007 A K08 Not Ortalaması 8 Kampanya
260541008 B K09 Ders Programı Çakışması 9 Yaş kuralı
260541009 A K10 Kafeterya Menüsü 10 Kara liste
260541010 B K11 Kitap Takası 1 Öğrenci indirimi
260541011 A K12 Bisiklet Kiralama 2 Zaman kuralı
260541012 B K13 Etkinlik Bileti 3 Kritik uyarı
260541013 A K14 Laboratuvar Malzeme Stoku 4 Günlük limit
260541014 B K15 Kulüp Üyeliği 5 Sadakat puanı
260541015 A K16 Kampüs Otoparkı 6 Ceza
260541016 B K17 Fotokopi Merkezi 7 Kapasite
260541018 B K19 Kampüs Kayıp Eşya 9 Yaş kuralı
260541019 A K20 Revir Randevusu 10 Kara liste
260541020 B K01 Kantin Sipariş 1 Öğrenci indirimi
260541021 A K02 Kütüphane Ödünç 2 Zaman kuralı
260541022 B K03 Yurt Çamaşırhane Sırası 3 Kritik uyarı
260541023 B K04 Kampüs Ring Otobüsü 4 Günlük limit
260541025 A K06 Etüt Odası Rezervasyonu 6 Ceza
260541026 B K07 Burs Hesaplama 7 Kapasite
260541027 A K08 Not Ortalaması 8 Kampanya
260541028 B K09 Ders Programı Çakışması 9 Yaş kuralı
260541029 A K10 Kafeterya Menüsü 10 Kara liste
260541030 B K11 Kitap Takası 1 Öğrenci indirimi
260541031 A K12 Bisiklet Kiralama 2 Zaman kuralı
260541032 B K13 Etkinlik Bileti 3 Kritik uyarı
260541033 A K14 Laboratuvar Malzeme Stoku 4 Günlük limit
260541034 B K15 Kulüp Üyeliği 5 Sadakat puanı
260541035 A K16 Kampüs Otoparkı 6 Ceza
260541036 B K17 Fotokopi Merkezi 7 Kapasite
260541037 A K18 Yemekhane Kart Bakiyesi 8 Kampanya
260541038 B K19 Kampüs Kayıp Eşya 9 Yaş kuralı
260541039 A K20 Revir Randevusu 10 Kara liste
260541040 B K01 Kantin Sipariş 1 Öğrenci indirimi
260541041 A K02 Kütüphane Ödünç 2 Zaman kuralı
260541042 B K03 Yurt Çamaşırhane Sırası 3 Kritik uyarı
260541043 A K04 Kampüs Ring Otobüsü 4 Günlük limit
260541044 B K05 Spor Salonu Üyeliği 5 Sadakat puanı
260541045 A K06 Etüt Odası Rezervasyonu 6 Ceza
260541046 B K07 Burs Hesaplama 7 Kapasite
260541047 B K08 Not Ortalaması 8 Kampanya
260541048 B K09 Ders Programı Çakışması 9 Yaş kuralı
260541049 A K10 Kafeterya Menüsü 10 Kara liste
260541050 B K11 Kitap Takası 1 Öğrenci indirimi
260541051 A K12 Bisiklet Kiralama 2 Zaman kuralı
260541052 B K13 Etkinlik Bileti 3 Kritik uyarı
260541053 A K14 Laboratuvar Malzeme Stoku 4 Günlük limit
260541054 B K15 Kulüp Üyeliği 5 Sadakat puanı
260541055 A K16 Kampüs Otoparkı 6 Ceza
260541056 B K17 Fotokopi Merkezi 7 Kapasite
260541057 A K18 Yemekhane Kart Bakiyesi 8 Kampanya
260541058 B K19 Kampüs Kayıp Eşya 9 Yaş kuralı
260541059 A K20 Revir Randevusu 10 Kara liste
260541060 B K01 Kantin Sipariş 1 Öğrenci indirimi
260541061 A K02 Kütüphane Ödünç 2 Zaman kuralı
260541062 B K03 Yurt Çamaşırhane Sırası 3 Kritik uyarı
260541063 A K04 Kampüs Ring Otobüsü 4 Günlük limit
260541064 B K05 Spor Salonu Üyeliği 5 Sadakat puanı
260541065 A K06 Etüt Odası Rezervasyonu 6 Ceza
260541066 B K07 Burs Hesaplama 7 Kapasite
260541067 A K08 Not Ortalaması 8 Kampanya
260541068 B K09 Ders Programı Çakışması 9 Yaş kuralı
260541069 A K10 Kafeterya Menüsü 10 Kara liste
260541070 B K11 Kitap Takası 1 Öğrenci indirimi
260541071 A K12 Bisiklet Kiralama 2 Zaman kuralı
260541072 B K13 Etkinlik Bileti 3 Kritik uyarı
260541073 A K14 Laboratuvar Malzeme Stoku 4 Günlük limit
260541074 B K15 Kulüp Üyeliği 5 Sadakat puanı
260541075 A K16 Kampüs Otoparkı 6 Ceza
260541076 B K17 Fotokopi Merkezi 7 Kapasite
260541077 A K18 Yemekhane Kart Bakiyesi 8 Kampanya
260541078 B K19 Kampüs Kayıp Eşya 9 Yaş kuralı
260541079 A K20 Revir Randevusu 10 Kara liste
260541080 B K01 Kantin Sipariş 1 Öğrenci indirimi
260541081 A K02 Kütüphane Ödünç 2 Zaman kuralı
260541082 B K03 Yurt Çamaşırhane Sırası 3 Kritik uyarı
260541083 A K04 Kampüs Ring Otobüsü 4 Günlük limit
260541084 B K05 Spor Salonu Üyeliği 5 Sadakat puanı
260541085 A K06 Etüt Odası Rezervasyonu 6 Ceza
260541086 B K07 Burs Hesaplama 7 Kapasite
260541087 A K08 Not Ortalaması 8 Kampanya
260541088 B K09 Ders Programı Çakışması 9 Yaş kuralı
260541089 A K10 Kafeterya Menüsü 10 Kara liste
260541090 B K11 Kitap Takası 1 Öğrenci indirimi
260541092 B K13 Etkinlik Bileti 3 Kritik uyarı
260541093 A K14 Laboratuvar Malzeme Stoku 4 Günlük limit
260541094 B K15 Kulüp Üyeliği 5 Sadakat puanı
260541095 A K16 Kampüs Otoparkı 6 Ceza
260541096 B K17 Fotokopi Merkezi 7 Kapasite
260541098 B K19 Kampüs Kayıp Eşya 9 Yaş kuralı
260541099 A K20 Revir Randevusu 10 Kara liste
260541100 B K01 Kantin Sipariş 1 Öğrenci indirimi
260541101 A K02 Kütüphane Ödünç 2 Zaman kuralı
260541103 A K04 Kampüs Ring Otobüsü 4 Günlük limit
260541105 A K06 Etüt Odası Rezervasyonu 6 Ceza
260541109 A K10 Kafeterya Menüsü 10 Kara liste
260541115 A K16 Kampüs Otoparkı 6 Ceza
260541132 B K13 Etkinlik Bileti 3 Kritik uyarı
260541306 A K07 Burs Hesaplama 7 Kapasite
260541307 A K08 Not Ortalaması 8 Kampanya
260541324 A K05 Spor Salonu Üyeliği 5 Sadakat puanı
260541325 A K06 Etüt Odası Rezervasyonu 6 Ceza
260542001 A K02 Kütüphane Ödünç 2 Zaman kuralı
260542002 B K03 Yurt Çamaşırhane Sırası 3 Kritik uyarı
260542003 A K04 Kampüs Ring Otobüsü 4 Günlük limit
260542004 B K05 Spor Salonu Üyeliği 5 Sadakat puanı
260542005 A K06 Etüt Odası Rezervasyonu 6 Ceza
260542006 B K07 Burs Hesaplama 7 Kapasite
260542007 A K08 Not Ortalaması 8 Kampanya
260542008 B K09 Ders Programı Çakışması 9 Yaş kuralı
260542009 A K10 Kafeterya Menüsü 10 Kara liste
260542010 B K11 Kitap Takası 1 Öğrenci indirimi
260542012 B K13 Etkinlik Bileti 3 Kritik uyarı
260542013 A K14 Laboratuvar Malzeme Stoku 4 Günlük limit
260542014 B K15 Kulüp Üyeliği 5 Sadakat puanı
260542015 A K16 Kampüs Otoparkı 6 Ceza
260542016 B K17 Fotokopi Merkezi 7 Kapasite
260542017 A K18 Yemekhane Kart Bakiyesi 8 Kampanya
260542018 B K19 Kampüs Kayıp Eşya 9 Yaş kuralı
260542019 A K20 Revir Randevusu 10 Kara liste
260542020 B K01 Kantin Sipariş 1 Öğrenci indirimi
260542022 B K03 Yurt Çamaşırhane Sırası 3 Kritik uyarı
260542023 A K04 Kampüs Ring Otobüsü 4 Günlük limit
260542024 B K05 Spor Salonu Üyeliği 5 Sadakat puanı
260542030 B K11 Kitap Takası 1 Öğrenci indirimi
260542031 A K12 Bisiklet Kiralama 2 Zaman kuralı
265541006 A K07 Burs Hesaplama 7 Kapasite
265541021 A K02 Kütüphane Ödünç 2 Zaman kuralı
265541024 A K05 Spor Salonu Üyeliği 5 Sadakat puanı
265541025 A K06 Etüt Odası Rezervasyonu 6 Ceza

Konular

Yirmi konu, hepsi kampüsten

Konuların hepsi her gün karşılaştığınız küçük sistemler; her birinde bir liste, bir seçim, bir sayaç ve bir ücret ya da sıra hesabı var. Dönem ilerledikçe liste diziye, seçim menüye, hesap metoda dönüşecek.

  • K01

    Kantin Sipariş

    Ürün listesi, sepet, stok kontrolü ve toplam tutar.

  • K02

    Kütüphane Ödünç

    Kitap listesi, ödünç alma, iade ve gecikme cezası.

  • K03

    Yurt Çamaşırhane Sırası

    Makine sayısı, sıra alma, süre ve bekleyen listesi.

  • K04

    Kampüs Ring Otobüsü

    Duraklar, sefer saatleri, kalan koltuk ve bilet.

  • K05

    Spor Salonu Üyeliği

    Üyelik türleri, giriş kaydı, aylık kullanım sayacı.

  • K06

    Etüt Odası Rezervasyonu

    Oda listesi, saat aralığı, çakışma kontrolü.

  • K07

    Burs Hesaplama

    Gelir, not ortalaması ve kriterlere göre burs kararı ve tutarı.

  • K08

    Not Ortalaması

    Ders notları, kredi, harf notu ve dönem ortalaması.

  • K09

    Ders Programı Çakışması

    Ders saatleri, çakışma bulma, boş saat önerisi.

  • K10

    Kafeterya Menüsü

    Günlük menü, kalori, bütçeye göre seçim.

  • K11

    Kitap Takası

    İlan listesi, eşleştirme, takas geçmişi.

  • K12

    Bisiklet Kiralama

    İstasyon stoku, süreye göre ücret, iade.

  • K13

    Etkinlik Bileti

    Etkinlik listesi, kontenjan, öğrenci indirimi, bilet numarası.

  • K14

    Laboratuvar Malzeme Stoku

    Malzeme listesi, ödünç verme, kritik stok uyarısı.

  • K15

    Kulüp Üyeliği

    Kulüp listesi, üye kaydı, aidat ve etkinlik katılımı.

  • K16

    Kampüs Otoparkı

    Park alanı kapasitesi, giriş çıkış, süreye göre ücret.

  • K17

    Fotokopi Merkezi

    Sayfa sayısı, renkli siyah beyaz, öğrenci kartı bakiyesi.

  • K18

    Yemekhane Kart Bakiyesi

    Yükleme, harcama, günlük limit ve ekstre.

  • K19

    Kampüs Kayıp Eşya

    Eşya kaydı, eşleştirme, teslim.

  • K20

    Revir Randevusu

    Doktor listesi, saat seçimi, sıra numarası ve iptal.

Ayırt edici kurallar

On kural, numaranızın son hanesi artı bir

Ayırt edici kural, uygulamanızın içinde gerçekten çalışan bir koşuldur: KT1'de tek bir if olarak başlar, KT3'te kendi metodunu kazanır. Aynı konuyu alan iki arkadaşı birbirinden ayıran şey budur.

  1. 1

    Öğrenci indirimi: kullanıcı öğrenci ise tutar yüzde 20 düşer.

  2. 2

    Zaman kuralı: belirli saat aralığında farklı fiyat ya da farklı kural uygulanır.

  3. 3

    Kritik uyarı: bir sayaç eşiğin altına inince uyarı mesajı verilir.

  4. 4

    Günlük limit: bir kullanıcı günde en fazla N işlem yapabilir.

  5. 5

    Sadakat puanı: her işlemde puan birikir, puanla ödeme yapılabilir.

  6. 6

    Ceza: süre aşılınca gecikme bedeli hesaplanır.

  7. 7

    Kapasite: dolu olunca bekleme listesine alınır.

  8. 8

    Kampanya: belirli bir adedin üstünde indirim uygulanır.

  9. 9

    Yaş kuralı: yaşa göre farklı fiyat ya da izin.

  10. 10

    Kara liste: üç ihlalden sonra kullanıcı engellenir.

Ortak sözleşme

Her uygulamada bulunması gereken dört şey

Konular farklı, ama her uygulama aynı iskeleti taşır; sınav soruları da bu iskeletten sorulur. KT4'e geldiğinizde deponuzda şunların dördü de çalışır halde olmalı:

  • Dizi alıp tek değer döndüren bir metot

    Örneğin fiyat dizisinin toplamı, en büyük stok, ortalama puan. KT3 ile zorunlu.

  • Girdi doğrulayan bir metot

    Kullanıcı geçerli bir değer girene kadar yeniden soran metot. Döngüsü KT2'de, metot hali KT3'te.

  • Gözcü değerle biten bir döngü

    Ana menü 0 ya da q girilene kadar döner. KT2 ile zorunlu.

  • Çalışan ayırt edici kural

    Tablodaki kuralınız uygulamanın içinde gerçekten karar veriyor. KT1'den itibaren.

  • Ana sınıf Uygulama, menüde 0 çıkış

    Programınız javac Uygulama.java ve java Uygulama ile çalışır; ilk soruya 0 girildiğinde hiçbir şey yapmadan düzgün biter. Otomatik kontrol her kilometre taşında programa yalnızca 0 verip hatasız bitmesini bekler; sonsuz döngü ve çöken program bu testte yakalanır.

  • Örnek projeyi izleyin

    Kampüs Kırtasiyesi, derste birlikte büyüttüğümüz havuz dışı örnek. Her kilometre taşında onun nasıl büyüdüğünü görür, aynı deseni kendi konunuza uygularsınız. Deposu herkese açık.

Örnek proje

Kampüs Kırtasiyesi, havuzda olmayan örnek konu. KT1 sürümü hazır: üç ürün, bir seçim, adet, toplu alım indirimi ve 0 ile çıkış. Gelecek hafta switch ile menüye, sonra döngüye dönüşecek; her adımı derste birlikte yazacağız.

Örnek depoyu aç ↗

Portfolyo kuralları

  • Tek depo, tek uygulama; her kilometre taşı aynı deponun yeni sürümüdür (etiket veya klasör).
  • Ana sınıfın adı her zaman Uygulama kalır ve menüde 0 her zaman çıkıştır; otomatik kontrol programa yalnızca 0 verip hatasız bitmesini bekler.
  • Konu ve ayırt edici kural öğrenci numaranıza göre verilmiştir (/proje sayfasındaki tablo); konu değiştirilmez, ayırt edici kural uygulamanın içinde çalışır halde bulunur.
  • Ortak sözleşme: dizi alıp tek değer döndüren bir metot, girdi doğrulayan bir metot, gözcü değerle biten bir döngü ve çalışan ayırt edici kural zorunludur.
  • Her teslimde README.md ve AI-BEYANI.md bulunur (şablon: /rehber/ai-beyani); otomatik kontrol yalnızca iskelete bakar: derleniyor mu, bu iki dosya var mı.
  • Kod yapay zeka ile yazılabilir (yeşil bölge) ama her satırını anlatabilmelisiniz; sınavda o kodu kağıda yazmanız istenir.
  • Kilometre taşı teslimleri Cuma 23.59'da Classroom 50'nin o anda depoda ne varsa onu alması ile yapılır (KT1 6 Kasım, KT2 27 Kasım, KT3 11 Aralık, KT4 25 Aralık); ek bir işlem gerekmez, geç teslimde o kilometre taşına bağlı sınav sorusu için ek süre verilmez.
  • Lab görevleri ve portfolyo, Classroom 50 üzerinden verilen bağlantılarla açılan depolarda yürütülür; depo adı değiştirilmez.
  • Kopya bulunan iki depo için de kilometre taşı geçersiz sayılır.

Classroom 50

Nasıl teslim edilir?

Lablardan alışık olduğunuz yol. Tek fark, portfolyonun tek bir ödev olması: deponuzu bir kez açarsınız ve dönem boyunca aynı depoya push edersiniz.

  1. 1

    Kabul bağlantısına tıklayın

    GitHub hesabınızla Classroom 50 kabul bağlantısına ↗ gidin ve ödevi kabul edin. algo1-portfolyo-KULLANICIADI adlı deponuz kendiliğinden oluşur; içinde README ve AI-BEYANI.md şablonları hazırdır. Depo adını değiştirmeyin.

  2. 2

    README'yi doldurun

    Şablondaki başlıkların altına konunuzu (kod ve ad), ayırt edici kuralınızı ve uygulamanın ne yaptığını birkaç cümleyle yazın. Bu ilk commit'iniz olsun; kod daha sonra gelir.

  3. 3

    Kodu yazın ve push edin

    Uygulamanızı Codespaces'te ya da kendi bilgisayarınızda yazın, çalıştığını görünce push edin. Her push'ta otomatik kontrol çalışır ve sonucu deponuzun Releases sayfasında görürsünüz; kontrol yalnızca iskelete bakar: derleniyor mu, README ve AI-BEYANI.md var mı.

  4. 4

    Kilometre taşı tarihlerinde bir şey yapmanız gerekmez

    Cuma 6 Kasım, 27 Kasım ve 11 Aralık Cuma 23.59'da Classroom 50 deponuzun o anki halini "toplar"; o anda depoda ne varsa o KT sürümüdür. Son teslim Cuma 25 Aralık Cuma 23.59. Yardım için Classroom 50 rehberi ve GitHub ve Codespaces rehberi.

Değerlendirme

Not nereden gelir?

Otomatik kontrol

Yalnızca iskelete bakar: kod derleniyor mu, README ve AI-BEYANI.md yerinde mi. Uygulamanızın doğruluğunu bir robot değil, siz ve lab sorumlu hocanız konuşur.

30 saniyelik ritüel

Her kilometre taşında lab sorumlu hocanız (Arş. Gör. Ömer Miraç Kökçam) uygulamanızı açtırır ve 30 saniyede anlattırır: ne yapıyor, kural nerede, döngü nerede bitiyor. Sunum yok, slayt yok; sadece kodunuzun başında konuşmak.

Vize ve final

Vizede 10 puanlık soru KT1 sürümünüzden ("ilk sürümündeki seçim yapısını yaz"), finalde 15 puanlık soru KT4 sürümünüzden ("dizi alan metodunu yaz ve şu girdiyle izle") gelir. Portfolyosunu teslim etmeyen bu soruları yapamaz.

Ağırlıklar ve sınav biçimi için Ders Hakkında · Değerlendirme.

Yapay zeka

Yeşil bölge, ama beyanla

Portfolyo yeşil bölgedir: yapay zekaya soru sorabilir, kod yazdırabilir, hata ayıklatabilirsiniz; meslekte de böyle çalışacaksınız. Karşılığında iki şey istiyoruz. Birincisi, her teslimde AI-BEYANI.md dolu olsun: hangi araç, ne için, hangi kısmı kendiniz yazdınız, yapay zekanın hangi hatasını yakaladınız (şablon: AI beyanı rehberi). İkincisi, anlatamadığınız kod sizin değildir: lab sorumlu hocanız 30 saniyede sorduğunda cevap veremediğiniz satır, sınav kağıdında da yazılamaz. Vize ve final kırmızı bölge olduğu için portfolyonuzdan gelen soruyu o gün yalnızca kendi aklınızla yazacaksınız.

Sık sorulanlar

Aklınıza gelecek beş soru

Konumu değiştirebilir miyim?

Hayır. Konular öğrenci numarasına göre dağıtıldı ve yirmi konunun hepsi aynı büyüklükte: her biri bir liste, bir seçim, bir sayaç ve bir kural taşıyor. Konu size küçük ya da sıkıcı geliyorsa ayırt edici kuralınızı ve menünüzü zenginleştirin; değerlendirme konunun parlaklığına değil, sözleşmedeki yapıların çalışıp çalışmadığına ve sizin anlatabilmenize bakar.

Dersi alttan alıyorum, projeyi yapacak mıyım?

Evet. Dersi alttan alan arkadaşlar da projeyi yapar ve numaranız tabloda "Alttan" olarak var. Vize ve finaldeki portfolyo soruları herkese aynı şekilde sorulur; portfolyosu olmayan o soruları yapamaz.

Grup olarak yapabilir miyiz?

Hayır, proje bireyseldir: tek öğrenci, tek depo, tek uygulama. Birbirinize yardım etmeniz serbest ve güzel, ama her depo kendi sahibinin anlatabildiği koddan oluşmalı.

Bir kilometre taşını kaçırırsam ne olur?

Classroom 50 o tarihte Cuma 23.59'da deponuzda ne varsa onu alır; depo boşsa o kilometre taşı boş sayılır ve ona bağlı sınav sorusu için ek süre verilmez. Ama proje bitmez: bir sonraki kilometre taşına kadar eksiğinizi kapatıp yola devam edersiniz. Erken push etmek, son gece push etmekten her zaman güvenlidir.

Aynı konu bir arkadaşımda da var; kodlarımız benzerse sorun olur mu?

Aynı konuyu on iki kişi aldı, bu yüzden menüleriniz birbirine benzeyecek; sorun bu değil. Ayırt edici kuralınız farklı, değişken adlarınız, metot bölüşümünüz ve README'niz sizin. Satır satır aynı iki depo bulunursa ikisi için de o kilometre taşı geçersiz sayılır; ayrıca lab sorumlu hocanız her kilometre taşında 30 saniyede uygulamanızı anlattırır, anlatamadığınız kod sizin değildir.

Cevabını bulamadığınız soru için lab saatinde lab sorumlu hocanıza sorun ya da iletişim kanallarını kullanın.