deleted
Megapat
- Katılım
- 28 Kasım 2014
- Mesajlar
- 3.543
- Çözümler
- 59
Programimin mukemmel sayilari bulan kisminda bir mantik hatasi var, fazladan bir tane mukemmel sayi buluyor. Dil Python.
Menzil olarak 100 verince 3 cikti vermesi gerekirken 4 tane veriyor.
Python:
def tambolen():
menzil = input('Bir menzil giriniz: ')
menzil = int(menzil)
tambolenleri = [] #tam bolen listesi.
tambolenleri_top = 0.
muk = [] #Mukemmel sayi listesi.
for herbir_sayi in range(1, menzil+1): #Menzildeki her bir sayiyi ele al.
for her_bolen in range(1,herbir_sayi): #Ele alinan sayiya kadar.
if herbir_sayi % her_bolen == 0: #tam boleni kontrol et.
tambolenleri.append(her_bolen) #tam bolense listeye ekle.
for top in tambolenleri: #Tam bolen listesindeki elemanlari al.
tambolenleri_top += top #Hepsini topla.
if tambolenleri_top == herbir_sayi:
muk.append(herbir_sayi) #Toplam sayiya esitse mukemmel listesine ekle.
tambolenleri_top = 0 #Yeni bir sayi icin tam bolenlerin toplamini temizle.
tambolenleri.clear() #Yeni bir sayi icin tam bolenlerin listesini temizle.
print(muk)
tambolen()
Menzil olarak 100 verince 3 cikti vermesi gerekirken 4 tane veriyor.