hocam sayenizde 5 günde mükemmel bir hızda python öğrendim çok iyi anlatıyorsunuz ve çok hızlı çözüm buluyorsunuz çok zekice işler yapıyorsunuz bazen şaşırıyorum yazılım bilginizden çok da anlatma yeteneğiniz var size teşekkür ediyorum. ve birde hocam index diye bi değişken oluşturmamıza gerek varmıydı direk [-1] [-2] yapsak da sondan başlıyordu zaten denedim hata da vermedi ama amacınız bize istediğimiz index deki sayıya bir döngüdeyken ulaşabilmeyi öğretmek miydi
5 gündür 8. ve 9. bölümlerde takıldım ilerleyemiyorum algoritmasını kafamda kuramıyorum bir türlü, hani kodu siz yazınca anlıyorum bu sefer benzer şey kendim yazıyım diyorum olmuyor kafam almıyor🥲
bir yıl olmuş ama tekrar başlamayı düşünürsen anlamadığın yerleri bu yorumun altına yazabilirsin sen anlayana kadar kolay bir şekilde anlatmaya çalışırım
Hocam çok temiz bir anlatımınız var. 2. soruda ki kendi çözümüm ; liste = [] for i in range(100,1000): a = i %10 b = (i//10) % 10 c = (i//100) if (a*a*a)+(b*b*b)+(c*c*c) ==i: liste.append(i) print(liste)
for number in range (100,1000): strnumber=str(number) if int(strnumber[0])**3 + int(strnumber[1])**3 + int(strnumber[2])**3==number: bu tarz bir çözüm buldum, tabi bütün kod bu değil liste vs. ekleyip if bloğunu da tamamlıyorum ama mantığı bu şekilde
2. örnekte soruyu yanlış anlayıp RAKAMLARININ TOPLAMININ KÜPÜNE eşittir şeklinde çözüm buldum, yaklaşlık 1 saatimi harcadım. valla gene de kendimle gurur duydum. teşekkürler hocam herşey için. x = [] y = 0 for i in range (100,1000): t = 0 for z in str(i): t +=int(z) if t**3 == i: x.append(i) print(x)
@@GardenyaAnemon 47 videoluk bu seriyi bitirmek için acele etmeyin zira python ya da herhangi bir dili bu kadar kısa zamanda öğrenemezsiniz gerekirse arkadaşın yaptığı gibi günlerinizi haftalarınızı bir videodaki örnekleri anlayıp çözebilmek için uğraşın bir an önce seriyi bitireyim öğreneyim demeyin daha yolun başı pes etmemelisiniz
İkinci soru için alternatif ve biraz daha kısa bir çözüm : liste = [] for i in range(100,1000): s = str(i) if (100*int(s[0]))+(10*int(s[1]))+int(s[2]) == (int(s[0])**3)+(int(s[1])**3)+(int(s[2])**3): liste.append(s) print(liste) print(len(liste))
liste=[1,1,2] başlangıç = 1 ikinciterim = 2 toplam = 3 #5 while True: toplam = başlangıç +ikinciterim başlangıç=ikinciterim ikinciterim=toplam liste.append(toplam) if len(liste) == 100: break print(liste) ilk yüz fibonacci dizisi
liste=[1,1,2] başlangıç = 1 ikinciterim = 2 toplam = 3 liste2=[] while True: toplam = başlangıç +ikinciterim başlangıç=ikinciterim ikinciterim=toplam liste.append(toplam) a=True for fibonacci in liste: strfibonacci=str(fibonacci) if len(strfibonacci)==100: liste2.append(fibonacci) a =False break if a == False: break print(liste2) ilk 100 basamaklı fibonacci dizisi
son problemde listeye fibonacci_list.append(1) yazısını 2 kere aynı olacak şekilde yazmamız gerekirken, 1 diğerine 2 yazmamızın sebebi hata mıdır? ben ikisini aynı olacak şekilde yazdığımda sayının indexi 4781 olarak sonuç veriyor. Bildiğim kadarıyla fibonacci listesine ilk olarak 2 tane 1 eklememiz gerekli.
Abi soruyu çözerken sadece ilk 100 ü bulmaya çalıştığı için(1000'i buldu ama olsundu) terimin indexi önemli değildi.(sonda göstermek için yazdı sadece) bi şey değiştirmiyor yani 1 2 başlatırsan index+1 yazarsın gene aynı cevabı verir.
Hocam en sonki orneginizde bos listeden sonra ilk iki sayi olarak iki tane 1 eklenmesi gerekmiyor muydu? fibonacci nin ilk iki terimi 1 ve 1 olmali. siz yanlislikla ikinci bir yerine 2 yazdiniz
2. soru için bence en kolay çözüm : liste= list() for i in range(100,1000): a=str(i)[0] b=str(i)[1] c=str(i)[2] if int(a)**3 + int(b)**3 + int(c)**3 == i: liste.append(i) print(liste)
Hocam Koç ünv okuyorum bu dersi 3. alışım. Bu kadar temiz berrak anlatılmıyor bize. Gerçekten örnekleri o kadar iyi açıklıyorsunuz ki çok çok teşekkür ederim 🎉🎉🎉
@@Mirac_ZORLU aynı başlıkları işliyorlar ancak dersler saçma slaytlardan ve hocanın slayta bakarak yazdığı bir ders
Год назад
Kesinlikle katılıyorum. Benim ikinci hocam. Diğeri sanki bilgileri kendisine saklamak istiyormuş gibi davranıyordu. Bir de bunun için ücret ödemiştim. Yuh diyorum. Hocama ben de minnettarım.
100 basamaklı ilk fibonacci sayısı sorusu için alternatif çözüm: a = 1 b = 1 liste = [] while True: c = a + b a = b b = c if len(str(c)) == 100: liste.append(c) print(liste) break
bu da benim çözümüm, kolay gelsin. aslında 2 den fazla böleni varsa asal sayı değildir. def find_prime_number_fn(number, strt_l="3", end_l="7"): lst = [] for num in range(2, number + 1): count = 0 for num_temp in range(1, num + 1): if num % num_temp == 0: count += 1 if count >= 3: break if count == 2: if str(num).startswith(strt_l) and str(num).endswith(end_l): lst.append(num) return lst rusalt = find_prime_number_fn(10000) print(len(rusalt), rusalt)
Fibonacci örneğini o kadar karmaşık anlattınız ki bildiğimi unuttum. Bazen videolarda sona geldikçe bizim sıfırdan başladığımızı unutup kendinizi kaptırdığınızı fark ettim :) videoların başlarında tane tane anlaşılır anlatırken sonraki örneklerde yazıp yazıp geçiyorsunuz.
Kanka baştan dinleyebilirsin her soru çözümünü hoca anlatılması gerektiği gibi anlatıyor. Zaten yaptığı her şeyi önceki videolarda aşırı ayrıntılı anlattı
@@husetan8162 # 9. video Genel Tekrar ve Alıştırmalar -------------------------------------------------------------- # ilk 10000 asal sayının kaç tanesi 3 ile başlar 7 ile biter Not: ilk önce boş bir liste oluşturulur bu listeyi asal sayıları ekleyeceğiz. Eleman sayısı 10000 olduğunda duracağız. Listenin başına dönüp bu sefer bu sayıların 3 ile başlayıp 7 ile bitenlerini kontrol edeceğiz. Bu koşula uyan sayıları da başka bir listeye ekleyeceğiz. Not2: eğer bir sayının kareköküne kadar olan bir sayıya kadar bir böleni yoksa asaldır. prime_list = list() prime_list.append(2) sayi = 3 while True: prime = True for i in range(2,int(sayi ** 0.5) + 1): if sayi %i == 0: prime= False break if prime: prime_list.append(sayi) if len(prime_list) == 10000: break sayi += 1 liste2 = [] for prime in prime_list: strprime = str(prime) if strprime.startswith("3") and strprime.endswith("7"): liste2.append(prime) print(liste2) print(len(liste2)) -------------------------------------------------------------- # üç basamaklı sayıların kaç tanesi rakamlarının küplerinin toplamına eşittir. liste = [] for sayi in range(100,1000): toplam = 0 gecici_sayi = sayi while gecici_sayi!= 0: basamak = gecici_sayi % 10 toplam += basamak ** 3 gecici_sayi //= 10 if toplam == sayi: liste.append(sayi) print(liste) -------------------------------------------------------------- # fibonacci sayı dizisi ilk iki terimi 1 olan ve sonraki her terimi kendisinden önceki İki terimin toplamı olan bir sayı dizisidir. ilk 100 fibonacci sayısını ekrana yazdırın. # 2 adet çözümü var. while ve for döngüsü kullanılarak çözülebilir. # while döngüsü ile fib_list = [] fib_list.append(1) fib_list.append(1) index = 2 while True: fib_list.append(fib_list[index - 2] + fib_list[index - 1]) index += 1 if len(fib_list) == 100: break print(fib_list) # for döngüsü ile fib_list = [] fib_list.append(1) fib_list.append(1) for i in range(2,100): fib_list.append(fib_list[i - 2] + fib_list[i - 1]) print(fib_list) -------------------------------------------------------------- # 100 basamaklı ilk fibonacci sayısını ekrana yazdırın fib_list = list() fib_list.append(1) fib_list.append(2) index = 2 while True: fib_list.append(fib_list[index - 2] + fib_list[index - 1]) terim = fib_list[index - 2] + fib_list[index - 1] index += 1 if len(str(terim)) == 100: print(terim) print(index) break # 1344719667586153181419716641724567886890850696275767987106294472017884974410332069524504824747437757 # 475. sırada ------------------------------------------------------------- 9. video bitti umarım işinize yarar
indexe değer verip uğraşmaktansa direkt "-1", "-2" yazıp listenin son elemanlarını almak çok daha az karmaşık geliyor. Şöyle bırakıyım: fibolist = [] fibolist.append(1) fibolist.append(1) for i in range(2,100): fibolist.append(fibolist[-1] + fibolist[-2]) print(fibolist) veya while ile fibolist = [] fibolist.append(1) fibolist.append(1) while len(fibolist) != 100: fibolist.append(fibolist[-1] + fibolist[-2]) print(fibolist)
buda benim çözümüm hocam. x = [] for i in range(100,1000): t =0 for z in str(i): t+= int(z)**3 if t == i: x.append(t) print(x)
Год назад+3
Hocam derselerinizi ısrarla takip ediyorum fakat tek bir kafa karışıklığım var. Biz hep matematik üzerinden ilerliyoruz. Bu temel prosedür mü yoksa sizin seçiminiz mi bu yönde?
Matematiksel işlemler daha çok beceri istiyor o yüzden yani hoca aslında matematiksel işlemleri yaparken normalde öğreteceğinden daha fazla şey öğretiyor
birinci ve ikinci indexle iş yoktu gerekmiyordu amaç 1000 basamaklı veya 100 basamaklı sayıyı yazdırabilmekti ama sondaki indexi print ile yazdırdığı yerde evet 1 eksiğini gösterir ama amacımız o indexin kaç satır olduğunu bulmak da değildi
2. liste=[] for eded in range(100,1000): a=eded//100 c=eded%10 b=(eded//10)%10 if eded ==pow(a,3)+pow(b,3)+pow(c,3): liste.append(eded) print(liste) print(len(liste))
acaba söyle bir fibonacci list yapsak daha basit olmazmiydi? a = 1 b = 1 fibonacci =[a,b] for i in range(1,100): a,b=b, a+b fibonacci.append(b) print(fibonacci)
a ve b'yi güncelledikten sonra, b'yi ekliyorsunuz. Ancak ilk başta listeye [1, 1] eklediğiniz için, döngüde b değeri iki kez ekleniyor. Bu da Fibonacci dizisinin yanlış hesaplanmasına neden olur.
# fibonacci sayı dizisi örneği liste= [1,1] while True: for t in range(1,101): if (t - 1)< t < 2*t: sayi = liste[-1] + liste[-2] liste.append(sayi) if len(liste)==100: break break print(liste) buda benim çözümüm.
Ben 2. problemi şöyle çözdüm: list1 = list() for i in range(100, 1000): i = str(i) x = int(i[0]) y = int(i[1]) z = int(i[2]) i = int(i) if i == x ** 3 + y ** 3 + z ** 3: list1.append(i) print(list1)
2.soru için benim çözümüm: liste = [] for i in range(100, 1000): rakamlar_listesi = [] for x in str(i): kup = int(x) ** 3 rakamlar_listesi.append(kup) if sum(rakamlar_listesi) == i: liste.append(i) print(liste)
3. soru için benim çözümüm: x = [] x.append(1) x.append(1) while True: x.append(x[-2]+x[-1]) if len(x) == 100: break print(x) 4. soru için benim çözümüm: x = [] x.append(1) x.append(1) while True: x.append(x[-2]+x[-1]) if len(str(x[-1])) == 100: break print(x[-1]) print(len(str(x[-1])))
Hocam 3 basamaklı sayıların rakamlarını hesaplayan bir program yazmaya çalıştım fakat olmadı. Rica etsem nerede hata yaptığımı açıklayabilir misiniz? aralik=range(100,1000) liste=list() sayi1=0 sayi2=0 sayi3=0 sayi4=0 toplam1=0 toplam2=0 for z in aralik: while z!=0: sayi1+=z%10 sayi2+=z//10 sayi3+=sayi2%10 sayi4+=sayi2//10 toplam1+=sayi1**3+sayi3**3+sayi4**3 if toplam1==z: liste.append(z) if z == 1000-1: break print(liste) Yürüttükten sonra kendiliğinden kısır döngüye girdi
aralik=range(100,1000) liste=list() sayi1=0 sayi2=0 sayi3=0 sayi4=0 toplam1=0 toplam2=0 for z in aralik: while z!=0: sayi1=z%10 sayi2=z//10 sayi3=sayi2%10 sayi4=sayi2//10 toplam1=sayi1**3+sayi3**3+sayi4**3 print(z,sayi1,sayi3,sayi4) if toplam1==z and not z in liste: liste.append(z) if z == 1000-1: break z += 1 print(liste) Anladığım kadarıyla rakamlarının küpleri toplamına eşit olan üç basamaklı sayıları bulmak istiyorsunuz. Kodunuzu yukarıdaki şekilde düzenledim. Önceki halinde siz sayi1 += z%10 demişsiniz. sayi1 in birler basamağı olması gerekirken döngünün bir sonraki adımında üzerine başka bir sayı ekliyorsunuz. aynısı diğerleri için de geçerli. Yukarıdaki haliyle çalışıyor. Kolay gelsin
Sonda bulduğumuz fibonacci sayısı 4780. değil de 4782. olmayacak mı? Çünkü iki tane de başta vardı listede, indexe göre yaptık ama index 2 den başlıyor.
2. soru için bu şekilde bir çözüm buldum n = 0 toplam = 0 sayi = 100 while sayi < 1000 : sayi_str = str(sayi) for rakam in sayi_str : toplam = toplam + (int(rakam))**3 if toplam == sayi : n +=1 print(sayi) toplam = 0 sayi+=1
Sezai Çoksu hiç öyle düşünmeyin, izlediğiniz her şeyden az da olsa bir şeyler kapıyorsunuzdur bence. Biraz üzerine düşerseniz kesinlikle başarabilirsiniz.
Son soru: #100 basamakli ilk fibonacci dizisini ekrana yazdirma sayi1=1 sayi2=1 while True: fibonacci=sayi1+sayi2 sayi1=sayi2 sayi2=fibonacci if len(str(fibonacci))==100: break print(f"100 basamakli ilk fibonacci sayisi: {fibonacci}")
Çıkan sonuçlara "prime= True" ve "prime = False" olarak iki farklı değer vermiş olduk. Burda "prime" kelimesinin bir önemi yok onun yerine "a" falan da yazabilirdin. Sadece kelime anlamı "Asal" olduğu için onu yazmış. İlk başta tüm sayılara "prime= True" değerini atadık. Sonrasında asal olmayanları bulup onlara "prime= False" atadık. Ve sadece asal sayılar "prime= True" olarak kaldı. Sonra "if prime : " diyerek asal olanları yani "prime= True" olanları prime_list'e yolladık. Ve asal sayıları bir listeye toplamış olduk. Not: "if prime : " ve "if prime == True : " aynı şey sadece kısaltası.
hocam 2ci problemi ben bu sekilde yazdim: ededler = list() for i in range(101,1000): if (i%10)**3 + ((i//10)%10)**3 + (i//100)**3 == i: ededler.append(i) print(ededler) ve calisdi)
hocanın dalgınlığına denk gelen bir durum o :) hatta 100 basamaklı ilk fibo sayısını buldururken sehven 1000. sayıyı yazdırdı.. neticede hoca da bir insan :))
Benim 3 basamaklı sayıların değerlerinin küplerinin toplamına eşit olanlarını bulmaya yönelik çözümüm: uc_basamaklilar = [x for x in range(100, 1000)] for i in uc_basamaklilar: i = str(i).split() for j in i: k = str(j) a = int(k[0]) ** 3 + int(k[1]) ** 3 + int(k[2]) ** 3 b = int(j) if a == b: print(a, b)
Merhaba 100 den 999 a kadar integer sayıları split fonksiyonuyla stringlerden oluşan llistelere çevirdim. Sonra döngüde K değişkenine atadığım her bir elemanın 0 ,1 ve 2. indexlerindeki elemanları integera çevirip toplamlarını aldırdım. Bu toplamı atadığım a değişkenini, döngüden string gelen j elemanlarını integera çevirip atadığım b değişkenine eşit olup olmadığını kontrol ettirdim. Eğer eşitlerse bu sayıları yanyana yazdırdım. Kulağı tersten değil uzaydan gösterdim yani :)
istenilen_küme=list() toplam=0 for i in range(i,1000): birler=sayi%100 onlar=(sayi%10)/10 yüzler=sayi/10 toplam=(birler**3)+(onlar**3)+(yüzler**3) if toplam==i: istenilen_küme.append(i) break print(istenilen_küme) print(len(istenilen_küme)) neden çalışmadı bu kod acabaa ??
o sayının kareköküne kadar olan sayıları deniyoruz. mesela i=34 oldu, 34'ün asal olup olmadığını anlamak için 1'den 34'e kadar olan asal sayılara bölünüyor mu diye kontrol etmene gerek yok onun yerine kök 34 yaklaşık 6dır, 6 ya kadar olan asallara bölünüyor mu bakman yeterli. (sadece asal olanlara bakarız çünkü tüm tam sayılar asalların çarpımı biçiminde yazılır, asallara bölünmeyen onların birbirleriyle çarpılmış hallerine zaten bölünmez. örnek 2 ve 7'ye bölünmeyen sayı 14'e zaten bölünmez 14'ü kontrol etmek gereksiz.) burası biraz matematik bilgisi istiyor tam anlamadığını düşünüyorsan "bir sayının asal olduğunu nasıl anlarız" diye google da aratabilirsin eminim daha iyi açıklayan ders videoları çıkar.
hocam bebim bu konuda merakım olduğu için 12 yaşında öğrenmaye başladım ama ben bu matematik problemlerini bilmiyorum(kodu yazabiliyorum normalde ama matematiğini bilmiyorum) bu yüzden ilk örneği yaptım ama diğer iki örneği yapmadım
hocam iyi günler öncelikle anlatımınız için teşekkürler. İlk sorunuzun çözümünde bir hata var, ben farklı bir yolla çözdüm sonuçu 37 buldum. Sonra sizin kodları yazdığımda 10.000 nin üstündeki sayılarında listeye eklendiğini fark ettim.
merhaba derslerinizi bayadır takip ediyorum mükemmel anlatımınız var tebrik ederim e postanızı atarmısnız size sormam gereken şeyler var ders hakkında ama benimle ilgili teşekkürler..
Hocam 26. dakikada print(index) yazınca çıkması gereken sonuçtan 2 eksik çıkıyor. İlk 100 basamaklı bir sayı için değil de ilk 3 basamaklı bir sayı için denediğimde '12' olması gerekirken '10' cevabını alıyorum. Sanırım ilk hata yukarıda fibonacci_list.append(1) fibonacci_list.append(2) yazıldığı için oldu. Burayı ilk başta yazdığımız gibi fibonacci_list.append(1) fibonacci_list.append(1) böyle yazınca '12' olması gereken sonuç '11' oluyor. Devamını çözemedim. Bir bakar mısınız?
Merhabalar dikkatli izlediğiniz için teşekkür ederim. Tabi ki fibonacci dizisini 1-1 olarak başlatmalıydım. Listelerde indexler 0 ile başladığı için 12. sırada bulunan144 sayısının indexi 11 yazılıyor. Eğer kaçıncı sırada olduğunu bulmak istiyorsak ekrana index +1 sayısını yazdırabilirsiniz. Herhalde sanırım bu videoyu çekerken biraz yorulmuşum. Kolay gelsin :)
ilk soruda derleyicinin uzun sürede vereceğini unutup boş cevap alınca yaklaşık yarım saat arka planda 2. bir ekranda kodla uğraştım sonra ilk sekmeye gelince bir baktım ki göndermiş cevabı ufak çaplı bi şok yaşadım : D
Arkadaşlar ilk soruda şu ikinci break While döngüsünden çıkmamıza mı yarıyor orayı anlayamadım da açıklayabilecek olan var mı? prime_list=list() prime_list.append(2) sayi=3 while True: prime=True for i in range(2,int(sayi**0.5)+1): if sayi%i==0: prime=False break if prime==True: prime_list.append(sayi) if len(prime_list)==100: break sayi+=1 print(prime_list)
Her iki break de if döngülerinden çıkmaya yarıyor. While döngüsünden çıkmak için olsaydı while' ın içinde bulunan for ya da if döngüsüyle falan aynı blokta yazılırdı.
arkadaşlar asal sayılar için şöyle bir kod yazdım bunuda inceleyebilirsiniz isterseniz. a = int(input("Bir sayı giriniz")) for i in range(2,a): for b in range(2,i): if i % b != 0: continue else: break else: i = str(i) if i[0]=="3" and i[-1] == "7": print(i)
**Son soruda yanlışlık yapıldı hocam.(100 yazılacağına 100 yazılmış.) Naçizane benim yaptığım kod da aşağıda. a = 1 b = 1 c = 2 liste = [] while True: a = b b = c c = a + b if len(str(c)) == 1000: liste.append(c) break print(liste)
#3 basamaklı sayıların kaç tanesi rakamlarının küpleri toplamına eşittir. Agalar=list() for i in range(100,1000): Olanlar= list() silgi = str(i) for kalemkutu in silgi: kalemtıras = int(kalemkutu) kalemtıras **= 3 tarak = kalemtıras Olanlar.append(tarak) if sum(Olanlar) == i: # sum min max listede kullanılır salak. integerde genelde tek terim oluyor kimleri toplucan. Agalar.append(i) print(Agalar) print(len(Agalar)) ben böyle hazırladım nasıl olmuş
hocam sayenizde 5 günde mükemmel bir hızda python öğrendim çok iyi anlatıyorsunuz ve çok hızlı çözüm buluyorsunuz çok zekice işler yapıyorsunuz bazen şaşırıyorum yazılım bilginizden çok da anlatma yeteneğiniz var size teşekkür ediyorum. ve birde hocam index diye bi değişken oluşturmamıza gerek varmıydı direk [-1] [-2] yapsak da sondan başlıyordu zaten denedim hata da vermedi ama amacınız bize istediğimiz index deki sayıya bir döngüdeyken ulaşabilmeyi öğretmek miydi
9:40 karekökünden yukarı bir böleni varsa aşağı bir böleni de var demektir. Şimdiye kadar fark etmediyim basit, ama çok faydalı bir detay verdiniz
5 gündür 8. ve 9. bölümlerde takıldım ilerleyemiyorum algoritmasını kafamda kuramıyorum bir türlü, hani kodu siz yazınca anlıyorum bu sefer benzer şey kendim yazıyım diyorum olmuyor kafam almıyor🥲
bir yıl olmuş ama tekrar başlamayı düşünürsen anlamadığın yerleri bu yorumun altına yazabilirsin sen anlayana kadar kolay bir şekilde anlatmaya çalışırım
Ya gerçekten aynı durumdayım çok umutsuzluğa düştüm ve şimdi python sınavına gidiyorum :(((
yazdıkça olucak bende yazarak elim alışıyor
@@edauzun7879 halendaha pythonla uğraşıyorsan takıldığın yerlerde yardımcı olabilirim
@@edauzun7879 geçtin mi ?
Hocam çok temiz bir anlatımınız var. 2. soruda ki kendi çözümüm ;
liste = []
for i in range(100,1000):
a = i %10
b = (i//10) % 10
c = (i//100)
if (a*a*a)+(b*b*b)+(c*c*c) ==i:
liste.append(i)
print(liste)
bakış açını beğendim.
Onun yerine sayıyı string cast etsek bir for ile elamanlari dolaşarak tekrar int casting yapsak çok mu fazla sistemi yorar
for number in range (100,1000):
strnumber=str(number)
if int(strnumber[0])**3 + int(strnumber[1])**3 + int(strnumber[2])**3==number:
bu tarz bir çözüm buldum, tabi bütün kod bu değil liste vs. ekleyip if bloğunu da tamamlıyorum ama mantığı bu şekilde
@@tourneon69 Çok mantıklı ve basit elinize sağlık
Hocam siz çok zekisiniz yani ikinci örnekde böyle bir şeyi kırk kere düşünsem yapamazdım. Umarım bende sizin gibi çözümler üretebilecek duruma gelirim
naptın
2. örnekte soruyu yanlış anlayıp RAKAMLARININ TOPLAMININ KÜPÜNE eşittir şeklinde çözüm buldum, yaklaşlık 1 saatimi harcadım. valla gene de kendimle gurur duydum. teşekkürler hocam herşey için.
x = []
y = 0
for i in range (100,1000):
t = 0
for z in str(i):
t +=int(z)
if t**3 == i:
x.append(i)
print(x)
3 gündür bu videodayım her örneği didik didik ederek farklı versiyolarını da kendim yaparak öğrendim.Teşekkürler hocam.
Ben galiba pes edicem anlamıyorum
@@GardenyaAnemon 47 videoluk bu seriyi bitirmek için acele etmeyin zira python ya da herhangi bir dili bu kadar kısa zamanda öğrenemezsiniz gerekirse arkadaşın yaptığı gibi günlerinizi haftalarınızı bir videodaki örnekleri anlayıp çözebilmek için uğraşın bir an önce seriyi bitireyim öğreneyim demeyin daha yolun başı pes etmemelisiniz
Sizinde öğretmenler gününüz kutlu olsun Hocam
dogru
hocam çok güzel anlatıyorsun da ilk defa görünce insan sudan çıkmış balığa dönüyor yapamıyoruz ama olsun hallederiz :D
evet
kutlu olsun
2 yıl önce yazmışsınız bu yorumu, şu an ne durumdasınız merak ettim.
Sizde 1 ay önce yazmişsiniz bu yorumu nasilsiniz merak ettim
@@mahmut_knttl gelişme var hocam devamlı pratik yapmak çok önemli..
@@mahmut_knttl sizde 3 hafta önce yazmışsınız yorumu ne yaptınız merak ettim
İkinci soru için alternatif ve biraz daha kısa bir çözüm :
liste = []
for i in range(100,1000):
s = str(i)
if (100*int(s[0]))+(10*int(s[1]))+int(s[2]) == (int(s[0])**3)+(int(s[1])**3)+(int(s[2])**3):
liste.append(s)
print(liste)
print(len(liste))
4. satır direkt bu şekilde de yapılabilir.
if int(s)==int(s[0])**3+int(s[1])**3+int(s[2])**3:
liste=[1,1,2]
başlangıç = 1
ikinciterim = 2
toplam = 3 #5
while True:
toplam = başlangıç +ikinciterim
başlangıç=ikinciterim
ikinciterim=toplam
liste.append(toplam)
if len(liste) == 100:
break
print(liste)
ilk yüz fibonacci dizisi
liste=[1,1,2]
başlangıç = 1
ikinciterim = 2
toplam = 3
liste2=[]
while True:
toplam = başlangıç +ikinciterim
başlangıç=ikinciterim
ikinciterim=toplam
liste.append(toplam)
a=True
for fibonacci in liste:
strfibonacci=str(fibonacci)
if len(strfibonacci)==100:
liste2.append(fibonacci)
a =False
break
if a == False:
break
print(liste2)
ilk 100 basamaklı fibonacci dizisi
İlk soru için alternatif bir çözüm yaptım ikinci kısım aynı olsa da ilk kısım biraz farklı
liste = []
for sayi in range(2,100000):
for i in range(2,int(sayi**0.5)+1):
if sayi % i == 0:
break
else:
liste.append(sayi)
if len(liste) == 10000:
break
liste2 = []
for a in liste:
strasal = str(a)
if strasal.startswith("3") and strasal.endswith("7"):
liste2.append(a)
print(liste2)
print(len(liste2))
böyle bir anlatım tarzı yok yeni başlayan adama birden şıcrama yapmışsın
hocam izlerken çok keyif aldım. emeğinize sağlık
son problemde listeye fibonacci_list.append(1) yazısını 2 kere aynı olacak şekilde yazmamız gerekirken, 1 diğerine 2 yazmamızın sebebi hata mıdır? ben ikisini aynı olacak şekilde yazdığımda sayının indexi 4781 olarak sonuç veriyor. Bildiğim kadarıyla fibonacci listesine ilk olarak 2 tane 1 eklememiz gerekli.
Abi soruyu çözerken sadece ilk 100 ü bulmaya çalıştığı için(1000'i buldu ama olsundu) terimin indexi önemli değildi.(sonda göstermek için yazdı sadece) bi şey değiştirmiyor yani 1 2 başlatırsan index+1 yazarsın gene aynı cevabı verir.
Hocam en sonki orneginizde bos listeden sonra ilk iki sayi olarak iki tane 1 eklenmesi gerekmiyor muydu? fibonacci nin ilk iki terimi 1 ve 1 olmali. siz yanlislikla ikinci bir yerine 2 yazdiniz
2. soru için bence en kolay çözüm :
liste= list()
for i in range(100,1000):
a=str(i)[0]
b=str(i)[1]
c=str(i)[2]
if int(a)**3 + int(b)**3 + int(c)**3 == i:
liste.append(i)
print(liste)
2. soru için bir çözüm daha:
listem = list()
for x in range (100,1000):
string_x = str(x)
basamak1 = string_x[0]
basamak2 = string_x[1]
basamak3 = string_x[2]
if int(basamak1)**3 + int(basamak2)**3 + int(basamak3)**3 == x:
listem.append(x)
print(listem)
Hocam Koç ünv okuyorum bu dersi 3. alışım. Bu kadar temiz berrak anlatılmıyor bize. Gerçekten örnekleri o kadar iyi açıklıyorsunuz ki çok çok teşekkür ederim 🎉🎉🎉
SELAM merak ettim neleri işlediniz şu ana kadar
@@Mirac_ZORLU aynı başlıkları işliyorlar ancak dersler saçma slaytlardan ve hocanın slayta bakarak yazdığı bir ders
Kesinlikle katılıyorum. Benim ikinci hocam. Diğeri sanki bilgileri kendisine saklamak istiyormuş gibi davranıyordu. Bir de bunun için ücret ödemiştim. Yuh diyorum. Hocama ben de minnettarım.
Hocam sizin dediğiniz gibi soruları önce kendim yapmaya çalışıyorum ama hiçbir soruyu istendiği gibi kodlayamıyorum.
Elinize sağlık hocam çok yararlı oluyor
100 basamaklı ilk fibonacci sayısı sorusu için alternatif çözüm:
a = 1
b = 1
liste = []
while True:
c = a + b
a = b
b = c
if len(str(c)) == 100:
liste.append(c)
print(liste)
break
Hocam hiçbir şey anlamıyorum yaa ama yine de sonuna kadar gidicem bakalım 🥲
hayır başa geri dön sözel yerleri iyice ezberlersen sayısal yerlerde de sıkınto yaşamazsın ilerlersen de hiç bir şey anlamazsın
Allah razı olsun
3. soru için bulduğum en kolay çözüm:
liste= [1,1]
for i in range(1,100):
b = liste[-1]
c= liste[-2]
d= int(b) + int(c)
liste.append(d)
print(liste)
bu da benim çözümüm, kolay gelsin. aslında 2 den fazla böleni varsa asal sayı değildir.
def find_prime_number_fn(number, strt_l="3", end_l="7"):
lst = []
for num in range(2, number + 1):
count = 0
for num_temp in range(1, num + 1):
if num % num_temp == 0:
count += 1
if count >= 3:
break
if count == 2:
if str(num).startswith(strt_l) and str(num).endswith(end_l):
lst.append(num)
return lst
rusalt = find_prime_number_fn(10000)
print(len(rusalt), rusalt)
Siz yapınca çok mantıklı geliyor ama ben kendi kendime bunları nasıl düşüneceğim imkansız geliyor ya :(
videoları dinlerken anlıyorum ama soruyu kendim çözmeye çalışınca bir şey yapamıyorum
aynen :D
ha bire deneme yapacaksın yazdığın kodlara kendinden bir şeyler katmaya çalış sonucu göreceksin
fibonacci_list = [1, 1]
while True:
sayi = fibonacci_list[-1]
sayi2 = fibonacci_list[-2]
sayi3 = sayi2 + sayi
fibonacci_list.append(sayi3)
if len(str(fibonacci_list[-1])) == 100:
break
print(fibonacci_list[-1])
Hocam 1.problemde direk range(2,8) yapsak çalışırdı kareköke ihtiyaç yoktu
abi ben 10.000 için denedim bilgisayarım çöktü sağolasın
benimki de hala devam ediyor ailecek bekliyoruz
@@ayiboğannisa sdhnvcbsdfghgsfd
@@ayiboğannisa proglamlamanın hangi aşamasındasınız
Fibonacci örneğini o kadar karmaşık anlattınız ki bildiğimi unuttum. Bazen videolarda sona geldikçe bizim sıfırdan başladığımızı unutup kendinizi kaptırdığınızı fark ettim :) videoların başlarında tane tane anlaşılır anlatırken sonraki örneklerde yazıp yazıp geçiyorsunuz.
Benim beynim yandi birakacam böyle giderse 8ve9.videolari anlamadım
Kanka baştan dinleyebilirsin her soru çözümünü hoca anlatılması gerektiği gibi anlatıyor. Zaten yaptığı her şeyi önceki videolarda aşırı ayrıntılı anlattı
@@husetan8162 # 9. video Genel Tekrar ve Alıştırmalar
--------------------------------------------------------------
# ilk 10000 asal sayının kaç tanesi 3 ile başlar 7 ile biter
Not: ilk önce boş bir liste oluşturulur bu listeyi asal sayıları ekleyeceğiz.
Eleman sayısı 10000 olduğunda duracağız.
Listenin başına dönüp bu sefer bu sayıların 3 ile başlayıp 7 ile bitenlerini kontrol edeceğiz.
Bu koşula uyan sayıları da başka bir listeye ekleyeceğiz.
Not2: eğer bir sayının kareköküne kadar olan bir sayıya kadar bir böleni yoksa asaldır.
prime_list = list()
prime_list.append(2)
sayi = 3
while True:
prime = True
for i in range(2,int(sayi ** 0.5) + 1):
if sayi %i == 0:
prime= False
break
if prime:
prime_list.append(sayi)
if len(prime_list) == 10000:
break
sayi += 1
liste2 = []
for prime in prime_list:
strprime = str(prime)
if strprime.startswith("3") and strprime.endswith("7"):
liste2.append(prime)
print(liste2)
print(len(liste2))
--------------------------------------------------------------
# üç basamaklı sayıların kaç tanesi rakamlarının küplerinin toplamına eşittir.
liste = []
for sayi in range(100,1000):
toplam = 0
gecici_sayi = sayi
while gecici_sayi!= 0:
basamak = gecici_sayi % 10
toplam += basamak ** 3
gecici_sayi //= 10
if toplam == sayi:
liste.append(sayi)
print(liste)
--------------------------------------------------------------
# fibonacci sayı dizisi ilk iki terimi 1 olan ve sonraki her terimi kendisinden önceki İki terimin toplamı olan bir sayı dizisidir.
ilk 100 fibonacci sayısını ekrana yazdırın.
# 2 adet çözümü var. while ve for döngüsü kullanılarak çözülebilir.
# while döngüsü ile
fib_list = []
fib_list.append(1)
fib_list.append(1)
index = 2
while True:
fib_list.append(fib_list[index - 2] + fib_list[index - 1])
index += 1
if len(fib_list) == 100:
break
print(fib_list)
# for döngüsü ile
fib_list = []
fib_list.append(1)
fib_list.append(1)
for i in range(2,100):
fib_list.append(fib_list[i - 2] + fib_list[i - 1])
print(fib_list)
--------------------------------------------------------------
# 100 basamaklı ilk fibonacci sayısını ekrana yazdırın
fib_list = list()
fib_list.append(1)
fib_list.append(2)
index = 2
while True:
fib_list.append(fib_list[index - 2] + fib_list[index - 1])
terim = fib_list[index - 2] + fib_list[index - 1]
index += 1
if len(str(terim)) == 100:
print(terim)
print(index)
break
# 1344719667586153181419716641724567886890850696275767987106294472017884974410332069524504824747437757
# 475. sırada
-------------------------------------------------------------
9. video bitti
umarım işinize yarar
indexe değer verip uğraşmaktansa direkt "-1", "-2" yazıp listenin son elemanlarını almak çok daha az karmaşık geliyor. Şöyle bırakıyım:
fibolist = []
fibolist.append(1)
fibolist.append(1)
for i in range(2,100):
fibolist.append(fibolist[-1] + fibolist[-2])
print(fibolist)
veya while ile
fibolist = []
fibolist.append(1)
fibolist.append(1)
while len(fibolist) != 100:
fibolist.append(fibolist[-1] + fibolist[-2])
print(fibolist)
@@msayilmaz adamsin eyw
buda benim çözümüm hocam.
x = []
for i in range(100,1000):
t =0
for z in str(i):
t+= int(z)**3
if t == i:
x.append(t)
print(x)
Hocam derselerinizi ısrarla takip ediyorum fakat tek bir kafa karışıklığım var. Biz hep matematik üzerinden ilerliyoruz. Bu temel prosedür mü yoksa sizin seçiminiz mi bu yönde?
Matematiksel işlemler daha çok beceri istiyor o yüzden yani hoca aslında matematiksel işlemleri yaparken normalde öğreteceğinden daha fazla şey öğretiyor
hocam 24.14 de yanlış eklemişsiniz fibonacci _list append(2) yazmışsınız. 1 olacaktı o
birinci ve ikinci indexle iş yoktu gerekmiyordu amaç 1000 basamaklı veya 100 basamaklı sayıyı yazdırabilmekti ama sondaki indexi print ile yazdırdığı yerde evet 1 eksiğini gösterir ama amacımız o indexin kaç satır olduğunu bulmak da değildi
yada sadece önceden bulduğumuz asal sayılara bölebiliriz 10:30
2.
liste=[]
for eded in range(100,1000):
a=eded//100
c=eded%10
b=(eded//10)%10
if eded ==pow(a,3)+pow(b,3)+pow(c,3):
liste.append(eded)
print(liste)
print(len(liste))
acaba söyle bir fibonacci list yapsak daha basit olmazmiydi?
a = 1
b = 1
fibonacci =[a,b]
for i in range(1,100):
a,b=b, a+b
fibonacci.append(b)
print(fibonacci)
def fibonacci():
a, b = 1, 1
while True:
yield a
a, b = b, a + b
a ve b'yi güncelledikten sonra, b'yi ekliyorsunuz.
Ancak ilk başta listeye [1, 1] eklediğiniz için, döngüde b değeri iki kez ekleniyor.
Bu da Fibonacci dizisinin yanlış hesaplanmasına neden olur.
# fibonacci sayı dizisi örneği
liste= [1,1]
while True:
for t in range(1,101):
if (t - 1)< t < 2*t:
sayi = liste[-1] + liste[-2]
liste.append(sayi)
if len(liste)==100:
break
break
print(liste)
buda benim çözümüm.
Emeğinize sağlık, çok güzel anlatım.
Ben 2. problemi şöyle çözdüm:
list1 = list()
for i in range(100, 1000):
i = str(i)
x = int(i[0])
y = int(i[1])
z = int(i[2])
i = int(i)
if i == x ** 3 + y ** 3 + z ** 3:
list1.append(i)
print(list1)
2.soru için benim çözümüm:
liste = []
for i in range(100, 1000):
rakamlar_listesi = []
for x in str(i):
kup = int(x) ** 3
rakamlar_listesi.append(kup)
if sum(rakamlar_listesi) == i:
liste.append(i)
print(liste)
hocam ilk soruyu yaklaşık 2-3 saat uğraştım chatten de swith özelliğini öğrenerek zor da olsa başardım
liste = []
for sayi in range(100, 1000):
birler = sayi %10
onlar = (sayi // 10) % 10
yuzler = sayi // 100
kup_toplami = ((birler ** 3) + (onlar ** 3) + (yuzler ** 3))
if kup_toplami == sayi:
liste.append(sayi)
print(len(liste))
print(liste)
ben bu videoda elendim
Hocam bos liste olusturmak icin liste = list() ve liste = [ ] arasinda fark var mi?
Valla bence yok :) Ama belki ileri düzey kullanımlarda vardır ama benim farkedebildiğim yok :)
3. soru için benim çözümüm:
x = []
x.append(1)
x.append(1)
while True:
x.append(x[-2]+x[-1])
if len(x) == 100:
break
print(x)
4. soru için benim çözümüm:
x = []
x.append(1)
x.append(1)
while True:
x.append(x[-2]+x[-1])
if len(str(x[-1])) == 100:
break
print(x[-1])
print(len(str(x[-1])))
hocam merhaba,
ilk soruda prime değişkenini integer olarak atamadık, sonra neden stringe çevirdik ?
Mukemmel ornekler, tesekkurler.
Ahmet Husrev Çeker teşekkür ederim, kolay gelsin :)
Hocam 3 basamaklı sayıların rakamlarını hesaplayan bir program yazmaya çalıştım fakat olmadı. Rica etsem nerede hata yaptığımı açıklayabilir misiniz?
aralik=range(100,1000)
liste=list()
sayi1=0
sayi2=0
sayi3=0
sayi4=0
toplam1=0
toplam2=0
for z in aralik:
while z!=0:
sayi1+=z%10
sayi2+=z//10
sayi3+=sayi2%10
sayi4+=sayi2//10
toplam1+=sayi1**3+sayi3**3+sayi4**3
if toplam1==z:
liste.append(z)
if z == 1000-1:
break
print(liste)
Yürüttükten sonra kendiliğinden kısır döngüye girdi
aralik=range(100,1000)
liste=list()
sayi1=0
sayi2=0
sayi3=0
sayi4=0
toplam1=0
toplam2=0
for z in aralik:
while z!=0:
sayi1=z%10
sayi2=z//10
sayi3=sayi2%10
sayi4=sayi2//10
toplam1=sayi1**3+sayi3**3+sayi4**3
print(z,sayi1,sayi3,sayi4)
if toplam1==z and not z in liste:
liste.append(z)
if z == 1000-1:
break
z += 1
print(liste)
Anladığım kadarıyla rakamlarının küpleri toplamına eşit olan üç basamaklı sayıları bulmak istiyorsunuz. Kodunuzu yukarıdaki şekilde düzenledim. Önceki halinde siz sayi1 += z%10 demişsiniz. sayi1 in birler basamağı olması gerekirken döngünün bir sonraki adımında üzerine başka bir sayı ekliyorsunuz. aynısı diğerleri için de geçerli. Yukarıdaki haliyle çalışıyor. Kolay gelsin
@@pythonagiris5616 Teşekkürler
Sonda bulduğumuz fibonacci sayısı 4780. değil de 4782. olmayacak mı? Çünkü iki tane de başta vardı listede, indexe göre yaptık ama index 2 den başlıyor.
benim de dikkatimi çekti orası
@@omerfarukkaya6175 Sen de mi yeni başladın
2. soru için bu şekilde bir çözüm buldum
n = 0
toplam = 0
sayi = 100
while sayi < 1000 :
sayi_str = str(sayi)
for rakam in sayi_str :
toplam = toplam + (int(rakam))**3
if toplam == sayi :
n +=1
print(sayi)
toplam = 0
sayi+=1
Hocam şuan sinir krizi geçiriyorum. Keşke biraz daha erken sizinle tanışsaydım. 1 aydır bu işi öğrenmek istiyorum. Zaman kaybı :(
Sezai Çoksu hiç öyle düşünmeyin, izlediğiniz her şeyden az da olsa bir şeyler kapıyorsunuzdur bence. Biraz üzerine düşerseniz kesinlikle başarabilirsiniz.
1. örnekte while True: Döngüsü nasıl geçildi anlayamadım.
hocam bunlar ilk öğrenenler için zor problemler neden seçtiniz
4 satırda fibonacci çözümü:
fibonacci_list=[1,1]
while len(fibonacci_list)
hocam ikinci örnekte ayırıp join methoduyla yapamaz mıyız? cevabınız benim için önemli başta öyle denemiştim çünkü
join ile ne yapican ki anlamadim
Son soru:
#100 basamakli ilk fibonacci dizisini ekrana yazdirma
sayi1=1
sayi2=1
while True:
fibonacci=sayi1+sayi2
sayi1=sayi2
sayi2=fibonacci
if len(str(fibonacci))==100:
break
print(f"100 basamakli ilk fibonacci sayisi: {fibonacci}")
Break'te "outside loop" hatası alıyorum bı bakar mısınız
İlk örnekte neden prime list oluşturup ardından prime ı True yaptık. Açıklayabilir misiniz?
Çıkan sonuçlara "prime= True" ve "prime = False" olarak iki farklı değer vermiş olduk. Burda "prime" kelimesinin bir önemi yok onun yerine "a" falan da yazabilirdin. Sadece kelime anlamı "Asal" olduğu için onu yazmış. İlk başta tüm sayılara "prime= True" değerini atadık. Sonrasında asal olmayanları bulup onlara "prime= False" atadık. Ve sadece asal sayılar "prime= True" olarak kaldı. Sonra "if prime : " diyerek asal olanları yani "prime= True" olanları prime_list'e yolladık. Ve asal sayıları bir listeye toplamış olduk. Not: "if prime : " ve "if prime == True : " aynı şey sadece kısaltası.
hocam 2ci problemi ben bu sekilde yazdim:
ededler = list()
for i in range(101,1000):
if (i%10)**3 + ((i//10)%10)**3 + (i//100)**3 == i:
ededler.append(i)
print(ededler)
ve calisdi)
27:00 hocam ikinci fibonacci list append niye 1 değil de iki ? Fibonacci listesinin ilk 2 terimi 1,1 değil mi ?
hocanın dalgınlığına denk gelen bir durum o :)
hatta 100 basamaklı ilk fibo sayısını buldururken sehven 1000. sayıyı yazdırdı.. neticede hoca da bir insan :))
Benim 3 basamaklı sayıların değerlerinin küplerinin toplamına eşit olanlarını bulmaya yönelik çözümüm:
uc_basamaklilar = [x for x in range(100, 1000)]
for i in uc_basamaklilar:
i = str(i).split()
for j in i:
k = str(j)
a = int(k[0]) ** 3 + int(k[1]) ** 3 + int(k[2]) ** 3
b = int(j)
if a == b:
print(a, b)
Tam anlayamadım yazdığın kodu vaktin varsa açıklayabilir misin?
Merhaba 100 den 999 a kadar integer sayıları split fonksiyonuyla stringlerden oluşan llistelere çevirdim. Sonra döngüde K değişkenine atadığım her bir elemanın 0 ,1 ve 2. indexlerindeki elemanları integera çevirip toplamlarını aldırdım. Bu toplamı atadığım a değişkenini, döngüden string gelen j elemanlarını integera çevirip atadığım b değişkenine eşit olup olmadığını kontrol ettirdim. Eğer eşitlerse bu sayıları yanyana yazdırdım. Kulağı tersten değil uzaydan gösterdim yani :)
istenilen_küme=list()
toplam=0
for i in range(i,1000):
birler=sayi%100
onlar=(sayi%10)/10
yüzler=sayi/10
toplam=(birler**3)+(onlar**3)+(yüzler**3)
if toplam==i:
istenilen_küme.append(i)
break
print(istenilen_küme)
print(len(istenilen_küme))
neden çalışmadı bu kod acabaa ??
hocam ilk soruda sayıyı bir arttırıyoruz diyelim ama o sayıyı kaça bölüyoruz ki ona göre asal olup olmadığını anlıyoruz
o sayının kareköküne kadar olan sayıları deniyoruz. mesela i=34 oldu, 34'ün asal olup olmadığını anlamak için 1'den 34'e kadar olan asal sayılara bölünüyor mu diye kontrol etmene gerek yok onun yerine kök 34 yaklaşık 6dır, 6 ya kadar olan asallara bölünüyor mu bakman yeterli. (sadece asal olanlara bakarız çünkü tüm tam sayılar asalların çarpımı biçiminde yazılır, asallara bölünmeyen onların birbirleriyle çarpılmış hallerine zaten bölünmez. örnek 2 ve 7'ye bölünmeyen sayı 14'e zaten bölünmez 14'ü kontrol etmek gereksiz.)
burası biraz matematik bilgisi istiyor tam anlamadığını düşünüyorsan "bir sayının asal olduğunu nasıl anlarız" diye google da aratabilirsin eminim daha iyi açıklayan ders videoları çıkar.
hocam bebim bu konuda merakım olduğu için 12 yaşında öğrenmaye başladım ama ben bu matematik problemlerini bilmiyorum(kodu yazabiliyorum normalde ama matematiğini bilmiyorum) bu yüzden ilk örneği yaptım ama diğer iki örneği yapmadım
1ci soruda 1saatdi ilisdim kaldim AHAHAH benim motivation burda coker
Hocam satırları nasıl toplu olarak komuta alabilirim?
Yeşim Arıkboğa Windows’ta sanırım shift +/ olması gerekiyor. Ben kendim kısayol atamıştım
olmadı bende
@@pythonagiris5616 nerden atıyoruz ?
Ctrl + / ile alıp çıkarabilirsin dostum
satırları seç, önce ctrl sonra 1 e bas.
hocam sizi çok seviyorum
fibonacci listelerini boş oluşturup append ile birleri eklemek yerine direkt fibonacci_list=[1,1] niye demiyoruz
ben öyle dedim işe yarıyor
hocam iyi günler öncelikle anlatımınız için teşekkürler. İlk sorunuzun çözümünde bir hata var, ben farklı bir yolla çözdüm sonuçu 37 buldum. Sonra sizin kodları yazdığımda 10.000 nin üstündeki sayılarında listeye eklendiğini fark ettim.
1 ile 10.000 arasındaki asal sayılardan demiyor ki soruda. Asal sayı olan ilk 10.000 sayıdan bahsediyor.
ilk soru kafa açtı başim dönüyo
kendine geldin mi ?
@@schruteman7444 🤣🤣
Kafamda oturmayan yerler var onlar bir otursa bu işi kaparım ama oturmuyor
şu tüm satırı komuta nasıl alıyorsunuz?
ctrl + /
Hocam ilk başta pek anlamamak normalmi
Əla👍
merhaba derslerinizi bayadır takip ediyorum mükemmel anlatımınız var tebrik ederim e postanızı atarmısnız size sormam gereken şeyler var ders hakkında ama benimle ilgili teşekkürler..
pythonagiris@gmail.com buyrun
Python'a Giriş teşekkür ederim hocam e posta attım bakabilirsiniz
Hocam 26. dakikada print(index) yazınca çıkması gereken sonuçtan 2 eksik çıkıyor.
İlk 100 basamaklı bir sayı için değil de ilk 3 basamaklı bir sayı için denediğimde '12' olması gerekirken '10' cevabını alıyorum. Sanırım ilk hata yukarıda
fibonacci_list.append(1)
fibonacci_list.append(2)
yazıldığı için oldu. Burayı ilk başta yazdığımız gibi
fibonacci_list.append(1)
fibonacci_list.append(1) böyle yazınca '12' olması gereken sonuç '11' oluyor.
Devamını çözemedim. Bir bakar mısınız?
Merhabalar dikkatli izlediğiniz için teşekkür ederim. Tabi ki fibonacci dizisini 1-1 olarak başlatmalıydım. Listelerde indexler 0 ile başladığı için 12. sırada bulunan144 sayısının indexi 11 yazılıyor. Eğer kaçıncı sırada olduğunu bulmak istiyorsak ekrana index +1 sayısını yazdırabilirsiniz. Herhalde sanırım bu videoyu çekerken biraz yorulmuşum. Kolay gelsin :)
@@pythonagiris5616 çok teşekkür ederim.
# 3 basamaklı sayıların kaç tanesi rakamlarının küplerinin toplamına eşittir?
liste= list( )
for sayi in range(100,1000):
metin_sayi= str(sayi)
if (int(metin_sayi[0])**3 + int(metin_sayi[1])**3 + int(metin_sayi[2])**3) == sayi:
liste.append(sayi)
else:
continue
print(liste)
#böyle bir alternatif çözüm yaptım.
fibonacci_list = [1, 1]
while len(fibonacci_list) != 100:
sayi = fibonacci_list[-1]
sayi2 = fibonacci_list[-2]
sayi3 = sayi2 + sayi
fibonacci_list.append(sayi3)
print(fibonacci_list)
12:07
ilk soruda derleyicinin uzun sürede vereceğini unutup boş cevap alınca yaklaşık yarım saat arka planda 2. bir ekranda kodla uğraştım sonra ilk sekmeye gelince bir baktım ki göndermiş cevabı ufak çaplı bi şok yaşadım : D
Ben de burada elendim
Teşekürler......
Kaan Alp çok teşekkür ederim.
i7 işlemci, 16gb ram 1dk sürdü liste2yi terminale yazması
Teşekkürler +
son örnekte 100 basamaklı olacaktı 1000 basamaklı yapıldı orada bir yanlışlık olsa gerek
abi rakam bende rakam ayni idi ama 4781 ci sira cikti
Yani matematikte her ne kadar iyi olsam da bazen donup kalıyorum bunu da yeni bir şey öğrendiğime bağlıyorum. Allah utandırmasın.
Arkadaşlar ilk soruda şu ikinci break While döngüsünden çıkmamıza mı yarıyor orayı anlayamadım da açıklayabilecek olan var mı?
prime_list=list()
prime_list.append(2)
sayi=3
while True:
prime=True
for i in range(2,int(sayi**0.5)+1):
if sayi%i==0:
prime=False
break
if prime==True:
prime_list.append(sayi)
if len(prime_list)==100:
break
sayi+=1
print(prime_list)
Her iki break de if döngülerinden çıkmaya yarıyor. While döngüsünden çıkmak için olsaydı while' ın içinde bulunan for ya da if döngüsüyle falan aynı blokta yazılırdı.
@@haticemeryemuygurer2610 while'dan nasıl çıkıyoruz o zaman?
@@bahadiruc4984 Orasını ben de anlamadım valla
@@haticemeryemuygurer2610 while'dan çıkaran break işte o başka açıklaması olamaz. while'ı bir tekrar etsek iyi olur
10.000 biraz abartı olmamışmı bine kadar okey di de on bin de benim bilgisayar değişik sesler yapmaya başladı
Cok yavas ogreniyorum😢
Hocam şu asal sayı olayı çok karışık ya :(
1000 yapmışsın 100 yerine
yapay zeka çıktı mertlik bozuldu
hocam iyi anlatıyosunuz amaa çok karışık beynim yandı ya
Prime değişkenini anlamadım tam olarak ben ya
arkadaşlar asal sayılar için şöyle bir kod yazdım bunuda inceleyebilirsiniz isterseniz.
a = int(input("Bir sayı giriniz"))
for i in range(2,a):
for b in range(2,i):
if i % b != 0:
continue
else:
break
else:
i = str(i)
if i[0]=="3" and i[-1] == "7":
print(i)
**Son soruda yanlışlık yapıldı hocam.(100 yazılacağına 100 yazılmış.) Naçizane benim yaptığım kod da aşağıda.
a = 1
b = 1
c = 2
liste = []
while True:
a = b
b = c
c = a + b
if len(str(c)) == 1000:
liste.append(c)
break
print(liste)
Bende su şekilde yaptim listeye felan eklemedim alt alta sıralanıyor:
a=1
b=1
for i in range(100):
c=a+b
a=b
b=c
print(c)
#3 basamaklı sayıların kaç tanesi rakamlarının küpleri toplamına eşittir.
Agalar=list()
for i in range(100,1000):
Olanlar= list()
silgi = str(i)
for kalemkutu in silgi:
kalemtıras = int(kalemkutu)
kalemtıras **= 3
tarak = kalemtıras
Olanlar.append(tarak)
if sum(Olanlar) == i: # sum min max listede kullanılır salak. integerde genelde tek terim oluyor kimleri toplucan.
Agalar.append(i)
print(Agalar)
print(len(Agalar))
ben böyle hazırladım nasıl olmuş