8) Berilgan son armstrong soni ekanligini aniqlovchi dasturni
funksiya yordamida tuzing. (armstrong bu n xonali sonning
har bir raqamlarining n-darajasining yig’indisi o’ziga teng
bo’lgan son n=153, 153=13 +53+33 ).
def armstrong_soni(son):
raqamlar = [int(x) for x in str(son)]
daraja = len(raqamlar)
armstrong_summa = sum([x ** daraja for x in raqamlar])
if armstrong_summa == son:
return True
else:
return False
son = int(input("Iltimos, sonni kiriting: "))
if armstrong_soni(son):
print(f"{son} soni Armstrong soni.")
else:
print(f"{son} soni Armstrong soni emas.")
16) Lambda yordamida berilgan ro’yxatdagi butun sonlarni
juft va toq sonlarini aniqlovchi dasturni funksiya yordamida tuzing.
def juft_toq_aniqlovchi():
sonlar = input("Sonlarni kiritngan so'zlarni vergul bilan ajrating: ").split(",")
sonlar = [int(son) for son in sonlar]
juft_sonlar = list(filter(lambda x: x % 2 == 0, sonlar))
toq_sonlar = list(filter(lambda x: x % 2 != 0, sonlar))
return juft_sonlar, toq_sonlar
juft_sonlar, toq_sonlar = juft_toq_aniqlovchi()
print("Juft sonlar:", juft_sonlar)
print("Toq sonlar:", toq_sonlar)
17) n gacha bo’lgan Fibonachchi sonlarni yaratuvchi
dasturni f-ya yordamida tuzing
def fibonachi(n):
a,b=0,1
while a
print(a)
a,b=b,a+b
fibonachi(10)
4) Matndagi eng uzun simmetrik so’zni chiqaradigan so’zni
Chiqaring,f-ya yordamida.
def uzun_simmetrik_soz(matn):
eng_uzun_soz = ''
uzunlik = 0
for soz in matn.split():
if len(soz) > uzunlik and soz == soz[::-1]:
eng_uzun_soz = soz
uzunlik = len(soz)
return eng_uzun_soz
matn = input("Iltimos, matnni kiriting: ")
eng_uzun_soz = uzun_simmetrik_soz(matn)
if eng_uzun_soz:
print(f"Eng uzun simmetrik soz: {eng_uzun_soz}")
else:
print("Matnda simmetrik soz topilmadi.")
23)Berilgan satriy turdagi ketma-ketlikni sonli turga o’tkazing,agar
sonli turga o’tmasa,xatolik haqida xabar bering
n=input()
try:
n=int(n)
print(n)
except:
print("bu matnni integer holatga õtkarib bõlmaydi")
else:
print("bu matnni integer holatga õtkarib bõladi")
Do'stlaringiz bilan baham: |