Yazdığınız kodu paylaşır mısınız?Tamadır teşekkür ederim tam yapmayı beceremedim ama yinede yardımınız dokunudu teşekkürler
Arkadaşların sayesinde hepsine teşekkür ederim.1 ve 9999 arası sayıları yazıyorda bir kalan kısıım bulduğu sayıların karakökünü yanda çıkarmıyorYazdığınız kodu paylaşır mısınız?
Hocam yarıya kadar kod sonuç verdi bir kalan kısım bulduğu sayının karekökü çıkarması için gerekli olan kodlama.Hocam ama bu şekilde yaparsak tam kareler de doğru oluyor.
Soruda hata var bence birisinde 9801'i 98+0+1 diye ayırmış diğerinde 1296'yı 1+29+6 diye ayırmış birisine göre kodu yazıyorum diğeri çalışmıyor bu sefer kafam karıştı.
Printf("%.F bir S-sayisidir. Karekökü %d\n",i,sqrt(i));
Yapım abim %d yerine %f yazdım oldu.Sana çok teşekkür ediyorum.Eline koluna sağlık kral adammışsın be agaprintf("%.f bir S-sayisidir.Karekökü %d\n",i,sqrt(i));
for a in range(10000):
b=a**(1/2)
c=len(str(a))
f=(a//1000)%10
e=(a//100)%10
d=(a//10)%10
g=a%10
fe=str(a)[0:2]
ed=str(a)[1:3]
edg=str(a)[1:4]
fed=str(a)[0:3]
dg=str(a)[2:4]
if c==2:
if d+g==b:
print(str(a) + " Mükemmel Karekök Sayıdır! Karekök: " +str(int(b)) + " => " + str(d) + " + " + str(g))
elif c==3:
if e+d+g==b:
print(str(a) + " Mükemmel Karekök Sayıdır! Karekök: " +str(int(b)) + " => " + str(e) + " + " + str(d) + " + " + str(g))
elif int(fe)+g==b:
print(str(a) + " Mükemmel Karekök Sayıdır! Karekök: " +str(int(b)) + " => " + str(fe) + " + " + str(g))
elif int(ed)+e==b:
print(str(a) + " Mükemmel Karekök Sayıdır! Karekök: " +str(int(b)) + " => " + str(ed) + " + " + str(e))
elif c==4:
if f+e+d+g==b:
print(str(a) + " Mükemmel Karekök Sayıdır! Karekök: " +str(int(b)) + " => " + str(f) + " + " + str(e) + " + " + str(d) + " + " + str(g))
elif int(fe)+d+g==b:
print(str(a) + " Mükemmel Karekök Sayıdır! Karekök: " +str(int(b)) + " => " + str(fe) + " + " + str(d) + " + " + str(g))
elif int(fed)+g==b:
print(str(a) + " Mükemmel Karekök Sayıdır! Karekök: " +str(int(b)) + " => " + str(fed) + " + " + str(g))
elif int(fe)+int(dg)==b:
print(str(a) + " Mükemmel Karekök Sayıdır! Karekök: " +str(int(b)) + " => " + str(fe) + " + " + str(dg))
elif f+e+int(dg)==b:
print(str(a) + " Mükemmel Karekök Sayıdır! Karekök: " +str(int(b)) + " => " + str(f) + " + " + str(e) + " + " + str(dg))
elif f+int(edg)==b:
print(str(a) + " Mükemmel Karekök Sayıdır! Karekök: " +str(int(b)) + " => " + str(f) + " + " + str(edg))
elif f+int(ed)+g==b:
print(str(a) + " Mükemmel Karekök Sayıdır! Karekök: " +str(int(b)) + " => " + str(f) + " + " + str(ed) + " + " + str(g))
Herkese teşekkür ederim elinize kolunuza sağlıkPython ile yaptım ancak çok fazla kod karmaşası oldu, hangi mantıkla yapmak lazım? Kodları azaltmam lazım. C bilsem aynı kodu çevirir atardım, kusuruma bakmayın.Python:import math asd=0 for i in range(1,10000): a = list(str(i)) for l in range(len(a)): a[l] = int(a[l]) while True: if len(a)==2: if (a[0]+a[1])**2==i: print(str(i) + " Mükemmel Karekök Sayıdır! Karekök: " + str(int(math.sqrt(i)))) asd=1 if len(a)==3: if asd!=1: if (a[0]+a[1]+a[2])**2==i: print(str(i) + " Mükemmel Karekök Sayıdır! Karekök: " + str(int(math.sqrt(i)))) asd=1 elif (a[0]*10+a[1]+a[2])**2==i: print(str(i) + " Mükemmel Karekök Sayıdır! Karekök: " + str(int(math.sqrt(i)))) asd=1 elif (a[0]+a[1]*10+a[2])**2==i: print(str(i) + " Mükemmel Karekök Sayıdır! Karekök: " + str(int(math.sqrt(i)))) asd=1 if len(a)==4: if asd!=1: if (a[0]+a[1]+a[2]+a[3])**2==i: print(str(i) + " Mükemmel Karekök Sayıdır! Karekök: " + str(int(math.sqrt(i)))) elif (a[0]*10+a[1]+a[2]+a[3])**2==i: print(str(i) + " Mükemmel Karekök Sayıdır! Karekök: " + str(int(math.sqrt(i)))) elif (a[0]+a[1]*10+a[2]+a[3])**2==i: print(str(i) + " Mükemmel Karekök Sayıdır! Karekök: " + str(int(math.sqrt(i)))) elif (a[0]+a[1]+a[2]*10+a[3])**2==i: print(str(i) + " Mükemmel Karekök Sayıdır! Karekök: " + str(int(math.sqrt(i)))) elif (a[0]*1000+a[1]*100+a[2]+a[3])**2==i: print(str(i) + " Mükemmel Karekök Sayıdır! Karekök: " + str(int(math.sqrt(i)))) elif (a[0]+a[1]*100+a[2]*10+a[3])**2==i: print(str(i) + " Mükemmel Karekök Sayıdır! Karekök: " + str(int(math.sqrt(i)))) elif (a[0]+a[1]+a[2]*10+a[3])**2==i: print(str(i) + " Mükemmel Karekök Sayıdır! Karekök: " + str(int(math.sqrt(i)))) asd=0 break
Bu sitenin çalışmasını sağlamak için gerekli çerezleri ve deneyiminizi iyileştirmek için isteğe bağlı çerezleri kullanıyoruz.