pithyone
Centipat
- Katılım
- 1 Ağustos 2022
- Mesajlar
- 6
Daha fazla
- Cinsiyet
- Erkek
Herkese öncelikle merhaba,
Kod öğrenmeye yeni başladım sayılır. Döngüleri öğrendikten sonra aldığım kursta şöyle bir ödev verildi: Sayının Armstrong sayısı olup olmadığını kontrol etme.
Ben de şu anki bilgilerim ile bir kod üretmeye çalıştım.
Değişik fonksiyonlar ve değişkenler ile tekrardan yazılabilir ama söz dizimi ile ilgili bir saçmalama durumum var mı ya da kod biraz daha sadeleşebilir mi diye sizlerden de görüş almak istedim.
Yazdığım kod ise şu şekilde:
Şimdiden teşekkürler.
Kod öğrenmeye yeni başladım sayılır. Döngüleri öğrendikten sonra aldığım kursta şöyle bir ödev verildi: Sayının Armstrong sayısı olup olmadığını kontrol etme.
Ben de şu anki bilgilerim ile bir kod üretmeye çalıştım.
Değişik fonksiyonlar ve değişkenler ile tekrardan yazılabilir ama söz dizimi ile ilgili bir saçmalama durumum var mı ya da kod biraz daha sadeleşebilir mi diye sizlerden de görüş almak istedim.
Yazdığım kod ise şu şekilde:
Python:
print("""
////////////////////////////////////////////////
Armstrong sayısı mı ? Değil mi ?
////////////////////////////////////////////////
Eğer bir sayı basamaklarındaki sayıların
basamak sayısı kadar kuvvetleri alınır ve
bu sayılar toplandığında bu sayının kendisine
eşit oluyorsa bu sayısa Armstrong sayısı denir.
////////////////////////////////////////////////
Programdan çıkmak için q yazabilirsiniz.
////////////////////////////////////////////////
""")
while True:
a= input("Sayıyı giriniz:")
bas_say = len(a)
if (a=="q" or a=="Q"):
break
else:
b = int(a)
listNumber = list()
for i in range(0,bas_say):
x = b % 10
b = b / 10
x = int(x)
listNumber.append(x)
deger = 0
for s in listNumber:
deger += s ** bas_say
a = int(a)
print("Armstrong sayısı olması için yapılan işlemler sonucu çıkan sayı {} olur".format(deger))
if (a == deger):
print("Girdiğiniz {} sayısı bir Armstrong sayısıdır.".format(a))
else:
print("Girdiğiniz sayı bir Armstrong sayısı değildir.")
Şimdiden teşekkürler.

Son düzenleyen: Moderatör: