Python - Öğrenci Fakülte Yerleşim Yazılımı


Yapım:          Bahadır Süzen (Cesur)
Yapım Tarihi:   13.08.2018 18:00
Yazılım Dili:     Python

  • Yazılım Tanımı: 12 Öğrenciye rastgele 0-100 puan arası puan veriyor, Tıp/Hukuk/Mühendislik olmak üzere 3 fakültemiz var. 
  • Fakülte puanları sırasıyla 80 puan,60 puan, 40 puan.
  • Öğrencilerin aldığı puanlar ile sırasıyla fakültelere yerleştiriliyor. 
  • Yerleşimlerde her fakültenin max. kontenjanı 3 öğrenci ile sınırlı.
  • 40 puanın altında kalan çğrenci var ise yerleşimi yapılmıyor.
  • 95, 94, 93, 92 puan alan 4 öğrenci var ise ilk 3'ü Tıp fakültesine, Sonuıncu 92 puan alan öğrenci ise Puanı Mühendisliğin çok daha üstünde olmasına rağmen kontenjan dolduğu için Hukuk fakültesine yerleştiriliyor.
  • Her yerleştirilen öğrencide 1 kontenjan fakülteye ekleniyor.
#!/usr/bin/python
from random import randrange, uniform
to = 0   #Fakültenin döngüsü için başlangıç değeri
tot = 0  #Öğrencilerin döngüsü için başlangıç değeri
unv = ["Tıp", "Hukuk", "Mühendislik"]   #3 Fakültenin sırası ile isimleri
fakulte = [80, 60, 40]                  #3 Fakültenin sırası ile puanları
kont = [0,0,0]                          #Her fakültenin ilk kontenjanları
ogrenci = [uniform(0, 100),uniform(0, 100),uniform(0, 100),uniform(0, 100),uniform(0, 100),uniform(0, 100),uniform(0, 100),uniform(0, 100),uniform(0, 100),uniform(0, 100),uniform(0, 100),uniform(0, 100),uniform(0, 100)]
#12 Öğrencinin sırası ile rastgele puanları
while to < 3:
    no1 = to+1
    #print(str(no1) + ". Fakülte taranıyor. Puanı:"+str(fakulte[to]))
    while tot < 12:
        no2 = tot+1
        #print("......" + str(no2) + ". Öğrenci taranıyor. Puanı:"+repr(ogrenci[tot]))
        y = fakulte[to]  #İlk başta dönen fakülte
        x = ogrenci[tot] #Fakülte içerisinde dönen anlık öğrenciler
        if x > y:        #Öğrenci puanı fakülteden yüksek ise
            ogr = tot+1  #Anlık öğrenci numarası
            if kont[to] < 3:
                print( str(ogr)+". Öğrenci, "+repr(ogrenci[tot])+" puan ile, "+str(unv[to])+" Fakültesini kazandı.")
                ogrenci[tot] = 0 #Öğrencinin puanını 0'la ki tekra r fakülteye atamaya çalışmasın
                kont[to] += 1   #Fakülte kontenjanına +1 ekle
            else:
                new = to+1      #Birsonraki fakülte
                print( str(ogr)+". Öğrenci, "+repr(ogrenci[tot])+" puan ile, "+str(unv[new])+" Fakültesini kazandı.")
                ogrenci[tot] = 0 #Öğrencinin puanını 0'la ki tekrar fakülteye atamaya çalışmasın
                kont[new] += 1  #Yeni fakülte kontenjanına +1 ekle
        tot=tot+1               #12 Öğrenci için döngüde sırayla +1 ekle
    to += 1                     #3 Fakülte için döngüde sırayla +1 ekle
    tot = 0



Ziyaretçi, yorum yapılsın mı?
İsim:*
E-Mail:


[not-allow-comm]
[/not-allow-comm]

Dikkat!

Aşağıdaki bağlantıdaki makaleye göz atın.

Site Kuralları ve Engellenme Sonrası
İstatistik
File engine/modules/zpstats.php not found.
Sıkça Sorulan Sorular
Video Trafiği
Etiketlere göre ara