<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Python arşivleri | 1Kodum</title>
	<atom:link href="https://1kodum.com/kategori/python/feed/" rel="self" type="application/rss+xml" />
	<link>https://1kodum.com/kategori/python/</link>
	<description>Kodlamaya dair</description>
	<lastBuildDate>Tue, 10 Dec 2024 20:53:24 +0000</lastBuildDate>
	<language>tr</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://1kodum.com/wp-content/uploads/2021/11/1kodum-1-150x150.png</url>
	<title>Python arşivleri | 1Kodum</title>
	<link>https://1kodum.com/kategori/python/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Python&#8217;da &#8220;f-string&#8221;</title>
		<link>https://1kodum.com/pythonda-f-string/</link>
					<comments>https://1kodum.com/pythonda-f-string/#respond</comments>
		
		<dc:creator><![CDATA[1Kodum]]></dc:creator>
		<pubDate>Sat, 12 Oct 2024 03:41:21 +0000</pubDate>
				<category><![CDATA[Python]]></category>
		<guid isPermaLink="false">https://1kodum.com/?p=3591</guid>

					<description><![CDATA[<p>Merhaba arkadaşlar! 👋 Bu yazımda Python&#8217;da kod yazmamızı kolaylaştıran ve kodumuzu daha okunabilir bir hale getiren &#8220;f-string&#8221; yapısını anlatacağım. &#8220;f-string&#8221; Nedir? Python&#8217;ın 3.6 sürümü ile birlikte hayatımıza giren &#8220;f-string&#8221; (format string) özelliği sayesinde &#8220;string&#8221;lerin içine değişkenler eklememiz oldukça kolaylaşmaktadır. Zira Python kodunuzda &#8220;f-string&#8221; yerine .format() kullanmak ya da % operatörleriyle uğraşmak zaman zaman kafa karıştırıcı &#8230;</p>
<p><a href="https://1kodum.com/pythonda-f-string/">Python&#8217;da &#8220;f-string&#8221;</a> yazısı ilk önce <a href="https://1kodum.com">1Kodum</a> üzerinde ortaya çıktı.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Merhaba arkadaşlar! 👋 Bu yazımda Python&#8217;da kod yazmamızı kolaylaştıran ve kodumuzu daha okunabilir bir hale getiren &#8220;<strong>f-string</strong>&#8221; yapısını anlatacağım. </p>



<h2 class="wp-block-heading">&#8220;f-string&#8221; Nedir?</h2>



<p>Python&#8217;ın 3.6 sürümü ile birlikte hayatımıza giren &#8220;<strong>f-string</strong>&#8221; (format string) özelliği sayesinde &#8220;string&#8221;lerin içine değişkenler eklememiz oldukça kolaylaşmaktadır. Zira Python kodunuzda &#8220;f-string&#8221; yerine <code>.format()</code> kullanmak ya da <code>%</code> operatörleriyle uğraşmak zaman zaman kafa karıştırıcı olabiliyordu. Buna karşılık &#8220;f-string&#8221;i kullanmak için tek yapmanız gereken, &#8220;string&#8221;inizin başına bir <code>f</code> koyup süslü parantez <code>{}</code> içine değişkenlerinizi yazmak. Basit bir örnek üzerinden göstereyim:</p>



<pre class="wp-block-code"><code>name = "John"
age = 25

print(f"Merhaba, benim adım {name} ve {age} yaşındayım.")</code></pre>



<div class="wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex">
<div class="wp-block-button has-custom-font-size is-style-outline is-style-outline--4" style="font-size:15px"><a class="wp-block-button__link has-white-color has-text-color has-background has-link-color wp-element-button" href="https://1kodum.com/pyeditor/?code=p19" style="border-radius:10px;background-color:#04aa6d" target="_blank" rel="noreferrer noopener">
    Dene
  </a></div>
</div>



<div style="height:25px" aria-hidden="true" class="wp-block-spacer"></div>



<p>Sadece değişken değil, &#8220;<strong>f-string</strong>&#8221; ile matematiksel işlemler de yapabiliriz. Örneğin:</p>



<pre class="wp-block-code"><code>a = 5
b = 3

print(f"{a} ile {b} çarpıldığında sonuç {a * b} olur.")

#5 ile 3 çarpıldığında sonuç 15 olur.</code></pre>



<div class="wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex">
<div class="wp-block-button has-custom-font-size is-style-outline is-style-outline--5" style="font-size:15px"><a class="wp-block-button__link has-white-color has-text-color has-background has-link-color wp-element-button" href="https://1kodum.com/pyeditor/?code=p20" style="border-radius:10px;background-color:#04aa6d" target="_blank" rel="noreferrer noopener">
    Dene
  </a></div>
</div>



<div style="height:25px" aria-hidden="true" class="wp-block-spacer"></div>



<p>Gördüğünüz gibi, süslü parantez içinde doğrudan matematiksel bir işlem yaptık! Bitti mi? Hayır, &#8220;f-string&#8221; formatlama için de oldukça kullanışlıdır. Diyelim ki bir sayıyı belirli bir ondalık formatta göstermek istiyoruz. Bunu şu şekilde yapabiliriz:</p>



<pre class="wp-block-code"><code>pi = 3.14159

print(f'Pi sayısı yaklaşık olarak {pi:.2f} değerine eşittir.')</code></pre>



<div class="wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex">
<div class="wp-block-button has-custom-font-size is-style-outline is-style-outline--6" style="font-size:15px"><a class="wp-block-button__link has-white-color has-text-color has-background has-link-color wp-element-button" href="https://1kodum.com/pyeditor/?code=p21" style="border-radius:10px;background-color:#04aa6d" target="_blank" rel="noreferrer noopener">
    Dene
  </a></div>
</div>



<div style="height:25px" aria-hidden="true" class="wp-block-spacer"></div>



<p>Örneğimizdeki <code>.2f</code> ifadesi, sayının virgülden sonra iki basamağını göstereceğimizi belirtiyor.</p>



<h2 class="wp-block-heading">Neden &#8220;f-string&#8221; Kullanmalıyım?</h2>



<ul class="wp-block-list">
<li><strong>Basit ve okunabilir:</strong> Kodunuz daha kısa ve net olur.</li>



<li><strong>Hızlı:</strong> <code>.format()</code> ve <code>%</code> operatörüne göre daha hızlı çalışır.</li>



<li><strong>Esnek:</strong> Değişkenler dışında işlemleri de kolayca yapabilirsiniz.</li>
</ul>



<p>İşte bu kadar! Python kodlarken &#8220;f-string&#8221; kullanmak baya işlerinizi kolaylaştıracaktır. Umarım bu yazı sizin için faydalı olmuştur. 🎉 Eğer sorularınız varsa, sormaktan çekinmeyin. Kodlamalarınızda bol şans! 💻</p>



<p></p>
<p><a href="https://1kodum.com/pythonda-f-string/">Python&#8217;da &#8220;f-string&#8221;</a> yazısı ilk önce <a href="https://1kodum.com">1Kodum</a> üzerinde ortaya çıktı.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://1kodum.com/pythonda-f-string/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Python ile &#8220;Digit Faktöriyel&#8221; Olan Sayıları Bulma</title>
		<link>https://1kodum.com/python-ile-digit-faktoriyel-olan-sayilari-bulma/</link>
					<comments>https://1kodum.com/python-ile-digit-faktoriyel-olan-sayilari-bulma/#respond</comments>
		
		<dc:creator><![CDATA[1Kodum]]></dc:creator>
		<pubDate>Sat, 09 Dec 2023 09:00:34 +0000</pubDate>
				<category><![CDATA[Python Örnekleri]]></category>
		<guid isPermaLink="false">https://1kodum.com/?p=3128</guid>

					<description><![CDATA[<p>Bu yazımızda, Python ile 100000&#8217;in altındaki &#8220;dijit faktöriyel&#8221; olan sayıları listeleyen örnek bir program yazacağız. Kodumuzu yazmaya geçmeden önce digit faktöriyelin ne olduğunu açıklayalım; digit faktöriyel, rakamlarının faktöriyelleri toplamı yine kendisine eşit olan sayılara denilmektedir. Buna göre, 145 sayısı için 1! + 4! + 5! = 1+24+120 = 145 olduğundan 145 sayısı digit faktöriyeldir. Ancak &#8230;</p>
<p><a href="https://1kodum.com/python-ile-digit-faktoriyel-olan-sayilari-bulma/">Python ile &#8220;Digit Faktöriyel&#8221; Olan Sayıları Bulma</a> yazısı ilk önce <a href="https://1kodum.com">1Kodum</a> üzerinde ortaya çıktı.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Bu yazımızda, Python ile 100000&#8217;in altındaki &#8220;<strong>dijit faktöriyel</strong>&#8221; olan sayıları listeleyen örnek bir program yazacağız.</p>



<p>Kodumuzu yazmaya geçmeden önce digit faktöriyelin ne olduğunu açıklayalım; digit faktöriyel, rakamlarının faktöriyelleri toplamı yine kendisine eşit olan sayılara denilmektedir. Buna göre, 145 sayısı için 1! + 4! + 5! = 1+24+120 = 145 olduğundan 145 sayısı digit faktöriyeldir. Ancak belirtmek isterim ki, 1 ve 2 sayıları ilgili şartı sağlamalarına rağmen digit faktoriyel olarak değerlendirilmez.</p>



<div class="wp-block-urvanov-syntax-highlighter-code-block"><pre class="lang:python decode:true " >from math import factorial

def digit_factorials(max_limit):
    """
    Belirli bir üst sınırın altındaki tüm sayıları bulan fonksiyon tanımladık
    Rakamlarının faktöriyellerinin toplamı sayının kendisine eşittir. 
    1 ve 2 bu kapsam dışında tutulmuştur.
    """
    digit_factorial_numbers = []  # Digit faktöriyel sayılarını saklamak için bir liste

    for number in range(10, max_limit):  # 10'dan başlayarak max_limit'e kadar olan tüm sayıları kontrol eder
        sum_of_factorials = sum(factorial(int(digit)) for digit in str(number))  # Sayının her bir rakamının faktöriyelini hesaplar ve toplar
        if sum_of_factorials == number:  # Eğer rakamlarının faktöriyellerinin toplamı kendisine eşitse
            digit_factorial_numbers.append(number)  # Bu sayıyı listeye ekler

    return digit_factorial_numbers

# 100000'den küçük digit faktöriyel sayıları bulma
digit_factorial_numbers = digit_factorials(100000)
print(digit_factorial_numbers)
</pre></div>



<p>Kodu <strong><a href="https://trinket.io/python3/55f88976e0">Trinket</a></strong> üzerinden çalıştırarak inceleyebilirsiniz. Kodumuzun daha da anlaşılır olması adına neyi niye yaptığımızı maddeler halinde açıklayalım:</p>



<ol class="wp-block-list">
<li><strong>Fonksiyon Tanımı (<code>def digit_factorials(max_limit)</code>):</strong> Özel bir özelliğe sahip sayıları bulmak için yeniden kullanılabilir bir <strong><a href="https://1kodum.com/python-fonksiyonlar/">fonksiyon</a></strong> tanımladık. Bu fonksiyon, <code>max_limit</code> parametresi alır ve bu sınırın altındaki tüm &#8220;digit faktöriyel&#8221; sayıları bulur.</li>



<li><strong>Digit Faktöriyel Sayılar Listesi (<code>digit_factorial_numbers = []</code>):</strong> Fonksiyonun çalışması sırasında bulunan &#8220;digit faktöriyel&#8221; sayıları saklamak için liste kullandık.</li>



<li><strong>Dış Döngü (For Döngüsü):</strong> <code>for number in range(10, max_limit):</code> ile, 10&#8217;dan (1 ve 2 hariç tutulduğu için başlangıç 10&#8217;dur) <code>max_limit</code> parametresine kadar olan tüm sayıları <strong><a href="https://1kodum.com/python-for-dongusu/">for döngüsü</a></strong> ile tek tek kontrol ediyoruz.</li>



<li><strong>Rakamların Faktöriyellerinin Toplanması:</strong> Her bir sayının rakamlarını ayrı ayrı alıp (<code>for digit in str(number)</code>) her birinin faktöriyelini hesaplayarak (<code>factorial(int(digit))</code>) topluyoruz (<code>sum_of_factorials = sum(factorial(int(digit)) for digit in str(number))</code>).</li>



<li><strong>Digit Faktöriyel Olup Olmadığının Kontrolü:</strong> Eğer bir sayının rakamlarının faktöriyellerinin toplamı kendisine eşit mi diye kontrol etmek için <strong><a href="https://1kodum.com/pythonda-kosul-ifadeleri/#if">if koşulunu</a></strong> kullandık (<code>if sum_of_factorials == number:</code>) ve eğer öyleyse <strong>append </strong>metodu ile listeye ekledik (<code>digit_factorial_numbers.append(number)</code>).</li>



<li><code>sum_of_factorials = sum(factorial(int(digit)) for digit in str(number))</code> ifadesi biraz karışık görülebilir. O yüzden bu kısmı da es geçmek istemedim:
<ul class="wp-block-list">
<li><strong><code>str(number)</code>:</strong> Öncelikle <code>number</code> değişkeni, sayısal bir değeri temsil etmektedir. Bu sayıyı <code>str()</code> fonksiyonu ile bir string&#8217;e çeviriyoruz. Böylece, sayının her bir rakamını ayrı ayrı işlemek mümkün hale gelmektedir. Örneğin, <code>number</code> 145 ise, <code>str(number)</code> ifadesi <code>'145'</code> olur.</li>



<li><strong><code>for digit in str(number)</code>:</strong> Bu döngü, <code>number</code> sayısının her bir rakamını (<code>digit</code>) sırayla alır ve işler. Bu döngü, örneğin &#8216;145&#8217; için üç kez çalışır: ilk önce &#8216;1&#8217; için, sonra &#8216;4&#8217; için ve en son &#8216;5&#8217; için çalışır.</li>



<li><strong><code>int(digit)</code>:</strong> Her bir <code>digit</code> (rakam), şu anda bir string&#8217;dir. Örneğin, &#8216;1&#8217;, &#8216;4&#8217;, &#8216;5&#8217;. Bu rakamları işleyebilmek için onları tekrar integer&#8217;a (tam sayıya) çevirmemiz gerekmektedir. Yani <code>int('1')</code> ifadesi 1&#8217;e, <code>int('4')</code> ifadesi 4&#8217;e, ve <code>int('5')</code> ifadesi 5&#8217;e dönüşür.</li>



<li><strong><code>factorial(int(digit))</code>:</strong> Her bir rakamın faktöriyelini alıyoruz. Örneğin, <code>factorial(1)</code>, <code>factorial(4)</code>, ve <code>factorial(5)</code>.</li>



<li><strong><code>sum(... for digit in str(number))</code>:</strong> Tüm bu faktöriyel hesaplamalarının sonuçlarını topluyoruz. Yani, <code>1! + 4! + 5!</code> ifadesinin sonucunu hesaplıyoruz.</li>



<li><strong><code>sum_of_factorials</code>:</strong> Tüm bu işlemlerin sonucu, <code>sum_of_factorials</code> değişkenine atanır. Bu değişken, <code>number</code> sayısının rakamlarının faktöriyellerinin toplamını temsil eder. Bu işlem, her bir sayı için <code>for number in range(10, max_limit):</code> döngüsü içinde tekrarlanır.</li>
</ul>
</li>
</ol>



<p></p>
<p><a href="https://1kodum.com/python-ile-digit-faktoriyel-olan-sayilari-bulma/">Python ile &#8220;Digit Faktöriyel&#8221; Olan Sayıları Bulma</a> yazısı ilk önce <a href="https://1kodum.com">1Kodum</a> üzerinde ortaya çıktı.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://1kodum.com/python-ile-digit-faktoriyel-olan-sayilari-bulma/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Python ile 1000&#8217;den Küçük Asal Sayıları Ekrana Yazdırma</title>
		<link>https://1kodum.com/python-ile-1000den-kucuk-asal-aayilari-ekrana-yazdirma/</link>
					<comments>https://1kodum.com/python-ile-1000den-kucuk-asal-aayilari-ekrana-yazdirma/#respond</comments>
		
		<dc:creator><![CDATA[1Kodum]]></dc:creator>
		<pubDate>Fri, 08 Dec 2023 08:33:45 +0000</pubDate>
				<category><![CDATA[Python Örnekleri]]></category>
		<guid isPermaLink="false">https://1kodum.com/?p=3119</guid>

					<description><![CDATA[<p>Bu yazımızda, Python ile 1000&#8217;den küçük asal sayıları ekrana yazdıran ve bu sayıların toplamını bulan basit bir program yazacağız. Kodumuzu yazmadan önce asal sayıların ne olduğunu açıklayalım; asal sayılar, kendisi dışında başka bir böleni bulunmayan, 1 hariç pozitif tam sayılardır. 1. Fonksiyon kullanarak çözelim: # Asal sayıları bulup listeye ekleyen ve toplamını hesaplayan Python programı &#8230;</p>
<p><a href="https://1kodum.com/python-ile-1000den-kucuk-asal-aayilari-ekrana-yazdirma/">Python ile 1000&#8217;den Küçük Asal Sayıları Ekrana Yazdırma</a> yazısı ilk önce <a href="https://1kodum.com">1Kodum</a> üzerinde ortaya çıktı.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Bu yazımızda, Python ile 1000&#8217;den küçük asal sayıları ekrana yazdıran ve bu sayıların toplamını bulan basit bir program yazacağız. Kodumuzu yazmadan önce asal sayıların ne olduğunu açıklayalım; asal sayılar, kendisi dışında başka bir böleni bulunmayan, 1 hariç pozitif tam sayılardır. </p>



<p>1. Fonksiyon kullanarak çözelim:</p>



<pre class="wp-block-code"><code># Asal sayıları bulup listeye ekleyen ve toplamını hesaplayan Python programı
def asal_sayilari_bul_ve_topla(ust_limit):
    asal_sayilar = &#91;]
    for sayi in range(2, ust_limit):
        asal = True
        for i in range(2, sayi):
            if sayi % i == 0:
                asal = False
                break
        if asal:
            asal_sayilar.append(sayi)
    asal_sayilarin_toplami = sum(asal_sayilar)
    return asal_sayilar, asal_sayilarin_toplami
# 1000'den küçük asal sayıları buluyoruz ve toplamlarını hesaplıyoruz
asal_sayilar, toplam = asal_sayilari_bul_ve_topla(1000)
print("Asal Sayılar:", asal_sayilar)
print ("----------")
print("Asal Sayıların Toplamı", toplam)</code></pre>



<div class="wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex">
<div class="wp-block-button has-custom-font-size is-style-outline is-style-outline--9" style="font-size:15px"><a class="wp-block-button__link has-white-color has-text-color has-background has-link-color wp-element-button" href="https://1kodum.com/pyeditor/?code=p115" style="border-radius:10px;background-color:#04aa6d" target="_blank" rel="noreferrer noopener">Dene</a></div>
</div>



<div style="height:25px" aria-hidden="true" class="wp-block-spacer"></div>



<p>Kodumuzun nasıl çalıştığını maddeler halinde açıklayalım:</p>



<ol class="wp-block-list">
<li><strong>Fonksiyon Tanımı (<code>def asal_sayilari_bul_ve_topla(ust_limit)</code>):</strong> İşlemi yeniden kullanılabilir ve organize bir şekilde yapabilmek için, belirli bir üst limite kadar olan asal sayıları bulup toplamını hesaplayan bir fonksiyon tanımladık. Bu fonksiyon, <code>ust_limit</code> parametresiyle, hangi sayıya kadar asal sayıları bulacağımızı belirlememize olanak tanır.</li>



<li><strong>Asal Sayı Listesi (<code>asal_sayilar = []</code>):</strong> Bulunan asal sayıları saklamak için bir <strong><a href="https://1kodum.com/pythonda-listeler/">liste</a> </strong>oluşturduk. Bu liste, fonksiyonun çalışması sırasında asal olarak belirlenen sayılarla doldurulmuştur.</li>



<li><strong>Dış Döngü (For Döngüsü):</strong> <code>for sayi in range(2, ust_limit):</code> ile, 2&#8217;den (asal sayılar 2&#8217;den başlar) <code>ust_limit</code> parametresine kadar olan tüm sayıları <strong><a href="https://1kodum.com/python-for-dongusu/">for döngüsü</a></strong> ile tek tek kontrol ettik.</li>



<li><strong>Asallığı Kontrol Etme (<code>asal = True</code> ve İç Döngü):</strong> Her sayının başlangıçta asal olduğunu varsayarak (<code>asal = True</code>), bu varsayımı test etmek için bir iç döngü (<code>for i in range(2, sayi)</code>) kullanıyoruz. İç döngü, mevcut sayıyı 2&#8217;den kendisine kadar olan sayılara bölerek test eder. Bunu yapabilmek için <strong><a href="https://1kodum.com/pythonda-kosul-ifadeleri/#if">if koşulunu</a></strong> kullandık. Eğer sayı, bu aralıktaki herhangi bir sayıya tam bölünürse (<code>if sayi % i == 0</code>), o zaman asal değildir ve <code>asal = False</code> olarak işaretlenmiştir.</li>



<li><strong>Asal Sayıların Listeye Eklenmesi:</strong> Eğer sayı asalsa (<code>if asal</code>), bu sayıyı <code>asal_sayilar</code> listesine append() metodunu kullanarak ekledik (<code>asal_sayilar.append(sayi)</code>).</li>
</ol>



<p>2. Pekala fonksiyon kullanmadan da yapabiliriz. Bakınız:</p>



<pre class="wp-block-code"><code> Asal sayılar listesi ve toplamını hesaplamak için değişkenler
asal_sayilar = &#91;]
toplam = 0
# 2'den 1000'e kadar olan sayıları kontrol etmek için dış döngü
for sayi in range(2, 1000):
    asal = True  # Varsayılan olarak sayıyı asal kabul ediyoruz
    # Mevcut sayının asal olup olmadığını kontrol etmek için iç döngü
    for i in range(2, sayi):
        if sayi % i == 0:  # Sayı, herhangi bir sayıya tam bölünürse asal değildir
            asal = False
            break
    # Eğer sayı asalsa, listeye ekleyip toplama dahil ediyoruz
    if asal:
        asal_sayilar.append(sayi)
        toplam += sayi
# Asal sayıların listesi ve toplamını yazdır
print(asal_sayilar)
print ("----------")
print("Asal Sayıların Toplamı:", toplam)</code></pre>



<div class="wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex">
<div class="wp-block-button has-custom-font-size is-style-outline is-style-outline--10" style="font-size:15px"><a class="wp-block-button__link has-white-color has-text-color has-background has-link-color wp-element-button" href="https://1kodum.com/pyeditor/?code=p116" style="border-radius:10px;background-color:#04aa6d" target="_blank" rel="noreferrer noopener">Dene</a></div>
</div>



<div style="height:25px" aria-hidden="true" class="wp-block-spacer"></div>
<p><a href="https://1kodum.com/python-ile-1000den-kucuk-asal-aayilari-ekrana-yazdirma/">Python ile 1000&#8217;den Küçük Asal Sayıları Ekrana Yazdırma</a> yazısı ilk önce <a href="https://1kodum.com">1Kodum</a> üzerinde ortaya çıktı.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://1kodum.com/python-ile-1000den-kucuk-asal-aayilari-ekrana-yazdirma/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Python ile Girilen Sayıyı Asal Çarpanlara Ayırma</title>
		<link>https://1kodum.com/python-ile-girilen-sayiyi-asal-carpanlara-ayirma/</link>
					<comments>https://1kodum.com/python-ile-girilen-sayiyi-asal-carpanlara-ayirma/#respond</comments>
		
		<dc:creator><![CDATA[1Kodum]]></dc:creator>
		<pubDate>Thu, 07 Dec 2023 04:26:06 +0000</pubDate>
				<category><![CDATA[Python Örnekleri]]></category>
		<guid isPermaLink="false">https://1kodum.com/?p=3116</guid>

					<description><![CDATA[<p>Bu yazımızda, kullanıcı tarafından girilen sayıyı asal çarpanlarına ayıran örnek bir Python programı yazacağız. Malumunuz, bir sayının çarpanlarından asal olanlarına bu sayının asal çarpanları denilmektedir. Örneğin, 30 sayısının çarpanları 1, 2, 3, 5, 6, 10, 15 ve 30&#8217;dur. Bu çarpanlar içerisinde asal olanları ise 2, 3 ve 5&#8217;tir. Dolayısıyla, 30 sayısının asal çarpanları 2, 3 &#8230;</p>
<p><a href="https://1kodum.com/python-ile-girilen-sayiyi-asal-carpanlara-ayirma/">Python ile Girilen Sayıyı Asal Çarpanlara Ayırma</a> yazısı ilk önce <a href="https://1kodum.com">1Kodum</a> üzerinde ortaya çıktı.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Bu yazımızda, kullanıcı tarafından girilen sayıyı asal çarpanlarına ayıran örnek bir Python programı yazacağız. </p>



<p>Malumunuz, bir sayının çarpanlarından asal olanlarına bu sayının asal çarpanları denilmektedir. Örneğin, 30 sayısının çarpanları 1, 2, 3, 5, 6, 10, 15 ve 30&#8217;dur. Bu çarpanlar içerisinde asal olanları ise 2, 3 ve 5&#8217;tir. Dolayısıyla, 30 sayısının asal çarpanları 2, 3 ve 5&#8217;tir ve bu sayı 2 x 3 x 5 şeklinde asal çarpanlara ayrılabilir.</p>



<p>Bu bilgiler eşiğinde sorumuzu alternatif metotlarla beraber çözeceğiz. Ancak ilk olarak, kodumuzda yararlanacağımız çözüm yolumuzu gösteren akış şemasının adımlarını belirleyelim:</p>



<p>1. Sayının asal çarpanlara ayrılma işlemi, sayı 1&#8217;e eşit olana kadar süreceği için &#8220;<strong><a href="https://1kodum.com/python-while-dongusu/">while döngüsünü</a></strong>&#8221; kullandık. Her döngü iterasyonunda, sayının o anki bölen sayısına (potansiyel asal çarpan) tam bölünüp bölünemediğini kontrol etmek için &#8220;<strong><a href="https://1kodum.com/pythonda-kosul-ifadeleri/">if-else</a></strong>&#8221; koşullunu kullandık.</p>



<pre class="wp-block-code"><code>def asal_carpanlara_ayir(sayi):
    asal_carpanlar = &#91;]
    bolen = 2
    while sayi > 1:
        if sayi % bolen == 0:
            asal_carpanlar.append(bolen)
            sayi //= bolen
        else:
            bolen += 1
    return asal_carpanlar
# Kullanıcıdan sayı alınması
girilen_sayi = int(input("Lütfen asal çarpanlarına ayırmak istediğiniz sayıyı giriniz: "))
asal_carpanlar = asal_carpanlara_ayir(girilen_sayi)
print("Asal Çarpanlar:", asal_carpanlar)</code></pre>



<div class="wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex">
<div class="wp-block-button has-custom-font-size is-style-outline is-style-outline--13" style="font-size:15px"><a class="wp-block-button__link has-white-color has-text-color has-background has-link-color wp-element-button" href="https://trinket.io/python3/0a15877dee70" style="border-radius:10px;background-color:#04aa6d" target="_blank" rel="noreferrer noopener">Dene</a></div>
</div>



<div style="height:25px" aria-hidden="true" class="wp-block-spacer"></div>



<p>2. Aşağıdaki yöntem, asal sayıları ayrı ayrı kontrol etmek yerine, tüm sayıları kontrol etmektedir.</p>



<pre class="wp-block-code"><code>def asal_carpanlara_ayir(sayi):
    asal_carpanlar = &#91;]
    bolen = 2
    while sayi > 1:
        while sayi % bolen == 0:
            asal_carpanlar.append(bolen)
            sayi //= bolen
        bolen += 1
    return asal_carpanlar
# Kullanıcıdan sayı alınması
girilen_sayi = int(input("Lütfen asal çarpanlarına ayırmak istediğiniz sayıyı giriniz: "))
asal_carpanlar = asal_carpanlara_ayir(girilen_sayi)
print("Asal Çarpanlar:", asal_carpanlar)
</code></pre>



<div class="wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex">
<div class="wp-block-button has-custom-font-size is-style-outline is-style-outline--14" style="font-size:15px"><a class="wp-block-button__link has-white-color has-text-color has-background has-link-color wp-element-button" href="https://trinket.io/python3/f73609e36a" style="border-radius:10px;background-color:#04aa6d" target="_blank" rel="noreferrer noopener">Dene</a></div>
</div>



<div style="height:25px" aria-hidden="true" class="wp-block-spacer"></div>



<p>Yukarıdaki kodumuzda, <code>//= </code>ifadesi kafa karıştırıcı olabileceği için adım adım açıklayalım:</p>



<ul class="wp-block-list">
<li><strong>Bölme İşlemi (<code>//</code>):</strong>
<ul class="wp-block-list">
<li>İlk olarak, <code>//</code> operatörü iki sayının bölme işlemini gerçekleştirir.</li>



<li>Fakat bu bölme işlemi, sonucu &#8220;tam sayı&#8221; olarak verir. Örneğin, <code>10 // 3</code> işlemi 3.33 değil, 3 sonucunu verir.</li>
</ul>
</li>



<li><strong>Atama İşlemi (<code>=</code>):</strong>
<ul class="wp-block-list">
<li>İkinci olarak, <code>=</code> işareti bu bölme işleminin sonucunu bir değişkene atar.</li>



<li>Yani, yapılan bölme işleminin sonucu, bu işlemi uyguladığımız değişkenin yeni değeri haline gelir.</li>
</ul>
</li>



<li><strong>Birleşik İşlem (<code>//=</code>):</strong>
<ul class="wp-block-list">
<li><code>//=</code> operatörü, yukarıdaki iki adımı tek bir adımda gerçekleştirir.</li>



<li>Örneğin, <code>sayi //= bolen</code> ifadesi, <code>sayi</code>&#8216;yı <code>bolen</code> ile bölüp, bu sonucu <code>sayi</code> değişkenine tekrar atar. Yani bu demektir ki, <code>sayi //= bolen</code> ifadesi, <code>sayi = sayi // bolen</code> ifadesinin kısa bir yolu gibidir.</li>
</ul>
</li>
</ul>
<p><a href="https://1kodum.com/python-ile-girilen-sayiyi-asal-carpanlara-ayirma/">Python ile Girilen Sayıyı Asal Çarpanlara Ayırma</a> yazısı ilk önce <a href="https://1kodum.com">1Kodum</a> üzerinde ortaya çıktı.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://1kodum.com/python-ile-girilen-sayiyi-asal-carpanlara-ayirma/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Python ile Dizi İçerisindeki Bir Sayıyı Dizinin Sonuna Taşıma</title>
		<link>https://1kodum.com/python-ile-dizi-icerisindeki-bir-sayiyi-dizinin-sonuna-tasima/</link>
					<comments>https://1kodum.com/python-ile-dizi-icerisindeki-bir-sayiyi-dizinin-sonuna-tasima/#respond</comments>
		
		<dc:creator><![CDATA[1Kodum]]></dc:creator>
		<pubDate>Fri, 17 Nov 2023 23:19:11 +0000</pubDate>
				<category><![CDATA[Python Algoritma Soruları]]></category>
		<guid isPermaLink="false">https://1kodum.com/?p=3079</guid>

					<description><![CDATA[<p>Python kullanarak örnek algoritma sorularını çözdüğümüz serimizin on beşinci sorusuna geçelim: Bir dizi içerisindeki sıfır değerlerini dizinin sonuna taşıyan bir fonksiyon yazın. Diğer elemanların sıralaması değişmemelidir.: Örnek girdi: [0, 1, 0, 3, 12] Örnek çıktı: [1, 3, 12, 0, 0] def sifirlari_sona_tasi(dizi): sifir_olmayan = 0 for i in range(len(dizi)): if dizi&#91;i] != 0: dizi&#91;sifir_olmayan], dizi&#91;i] &#8230;</p>
<p><a href="https://1kodum.com/python-ile-dizi-icerisindeki-bir-sayiyi-dizinin-sonuna-tasima/">Python ile Dizi İçerisindeki Bir Sayıyı Dizinin Sonuna Taşıma</a> yazısı ilk önce <a href="https://1kodum.com">1Kodum</a> üzerinde ortaya çıktı.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Python kullanarak örnek algoritma sorularını çözdüğümüz serimizin on beşinci sorusuna geçelim:</p>



<ol start="15" class="wp-block-list">
<li>Bir dizi içerisindeki sıfır değerlerini dizinin sonuna taşıyan bir fonksiyon yazın. Diğer elemanların sıralaması değişmemelidir.:
<ul class="wp-block-list">
<li>Örnek girdi: [0, 1, 0, 3, 12]</li>



<li>Örnek çıktı: [1, 3, 12, 0, 0]</li>
</ul>
</li>
</ol>



<pre class="wp-block-code"><code>def sifirlari_sona_tasi(dizi):
    sifir_olmayan = 0
    for i in range(len(dizi)):
        if dizi&#91;i] != 0:
            dizi&#91;sifir_olmayan], dizi&#91;i] = dizi&#91;i], dizi&#91;sifir_olmayan]
            sifir_olmayan += 1
    return dizi
# Örnek kullanım:
giris_dizi = &#91;0, 1, 0, 3, 12]
cikis = sifirlari_sona_tasi(giris_dizi)
print("Sıfırlar Sona Taşındı:", cikis)  # &#91;1, 3, 12, 0, 0]</code></pre>



<div class="wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex">
<div class="wp-block-button has-custom-font-size is-style-outline is-style-outline--16" style="font-size:15px"><a class="wp-block-button__link has-white-color has-text-color has-background has-link-color wp-element-button" href="https://1kodum.com/pyeditor/?code=p117" style="border-radius:10px;background-color:#04aa6d" target="_blank" rel="noreferrer noopener">Dene</a></div>
</div>



<div style="height:25px" aria-hidden="true" class="wp-block-spacer"></div>



<p>Yukarıdaki örneğimizde, verilen bir dizideki tüm sıfır değerlerini dizinin sonuna taşıyan bir fonksiyonu tanımladık. Fonksiyonumuz <code>sifirlari_sona_tasi</code>, sıfır olmayan tüm elemanları dizinin başına taşırken, sıfırları sona taşımaktır. Bu işlemi gerçekleştirmek için Python&#8217;daki birkaç temel programlama özelliğini kullandık.</p>



<p>Öncelikle, fonksiyonun içinde bir <strong><a href="https://1kodum.com/python-for-dongusu/">for döngüsü</a></strong> kullanılmıştır. Bu döngü, verilen dizinin tüm elemanlarını sırasıyla incelemek için kullanılır. Python&#8217;daki <code>for</code> döngüsü, dizinin her bir elemanına kolayca erişim sağlar ve dizinin uzunluğuna bağlı olarak otomatik olarak tekrar eder. Bu durumda, <code>for i in range(len(dizi))</code> ifadesi, dizinin başından sonuna kadar her bir indeks için döngünün tekrarlanmasını sağlar.</p>



<p>Döngü içerisinde, <strong><a href="https://1kodum.com/pythonda-kosul-ifadeleri/">if ifadesi</a></strong> kullanılarak her elemanın sıfır olup olmadığı kontrol edilir. Eğer eleman sıfır değilse, yani <code>if dizi[i] != 0:</code> koşulu sağlanıyorsa, bu elemanın dizideki konumu değiştirilir. Bu koşulun kullanılması, fonksiyonun sadece sıfır olmayan elemanlar üzerinde işlem yapmasını sağlar ve bu sayede sıfır olan elemanlar doğrudan sona taşınmış olur.</p>



<p>Elemanların yerlerinin değiştirilmesi (<code>swap</code>) işlemi, Python&#8217;un çoklu atama özelliği kullanılarak yapılır: <code>dizi[sifir_olmayan], dizi[i] = dizi[i], dizi[sifir_olmayan]</code>. Bu satır, sıfır olmayan elemanı (<code>dizi[i]</code>) <code>sifir_olmayan</code> indeksine taşırken, o indeksteki elemanı (<code>dizi[sifir_olmayan]</code>) şu anki elemanın yerine koyar. </p>



<p>Her bir sıfır olmayan eleman taşındığında, <code>sifir_olmayan</code> sayaç değişkeni bir arttırılır (<code>sifir_olmayan += 1</code>). Bu sayede, sonraki sıfır olmayan eleman için dizide yer açılır. Sayaç değişkeni, sıfır olmayan elemanların dizideki yeni konumlarını takip etmek için kullanılır.</p>



<p>Sonuç olarak, fonksiyon dizinin tamamını taradıktan sonra, tüm sıfır değerlerini dizinin sonuna taşımış olur. Örnek kullanım, fonksiyonun nasıl çalıştığını göstermektedir: <code>[0, 1, 0, 3, 12]</code> giriş dizisi <code>[1, 3, 12, 0, 0]</code> olarak dönüştürülür, burada tüm sıfırlar sona taşınmış ve sıfır olmayan elemanlar korunmuştur. Bu yöntem, özellikle veri işleme ve sayısal hesaplamalarda önemli olabilir, çünkü sıfırları ayrıştırmak, bazı algoritmaların verimliliğini artırabilir.</p>
<p><a href="https://1kodum.com/python-ile-dizi-icerisindeki-bir-sayiyi-dizinin-sonuna-tasima/">Python ile Dizi İçerisindeki Bir Sayıyı Dizinin Sonuna Taşıma</a> yazısı ilk önce <a href="https://1kodum.com">1Kodum</a> üzerinde ortaya çıktı.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://1kodum.com/python-ile-dizi-icerisindeki-bir-sayiyi-dizinin-sonuna-tasima/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Python ile 2&#8217;si Aynı Olan 3 Sayıdan Farklı Olanı Bulma</title>
		<link>https://1kodum.com/python-ile-2si-ayni-olan-3-sayidan-farkli-olani-bulma/</link>
					<comments>https://1kodum.com/python-ile-2si-ayni-olan-3-sayidan-farkli-olani-bulma/#respond</comments>
		
		<dc:creator><![CDATA[1Kodum]]></dc:creator>
		<pubDate>Sat, 11 Nov 2023 15:28:57 +0000</pubDate>
				<category><![CDATA[Python Örnekleri]]></category>
		<guid isPermaLink="false">https://1kodum.com/?p=3070</guid>

					<description><![CDATA[<p>Bu örneğimizde, Python ile kullanıcı tarafından ikisi aynı olan girilen üç sayıdan farklı olanı bulan bir program yazacağız. Kullanıcıdan veri girmesi istendiği için&#160;input ()&#160;fonksiyonu ve koşul ifadesi olduğu için&#160;if-else&#160;deyimini kullanacağız: # Sayıları kullanıcıdan al sayi1 = float(input("Birinci sayıyı giriniz: ")) sayi2 = float(input("İkinci sayıyı giriniz: ")) sayi3 = float(input("Üçüncü sayıyı giriniz: ")) # Üç sayının &#8230;</p>
<p><a href="https://1kodum.com/python-ile-2si-ayni-olan-3-sayidan-farkli-olani-bulma/">Python ile 2&#8217;si Aynı Olan 3 Sayıdan Farklı Olanı Bulma</a> yazısı ilk önce <a href="https://1kodum.com">1Kodum</a> üzerinde ortaya çıktı.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Bu örneğimizde, Python ile kullanıcı tarafından ikisi aynı olan girilen üç sayıdan farklı olanı bulan bir program yazacağız.</p>



<p>Kullanıcıdan veri girmesi istendiği için&nbsp;<strong><a href="https://1kodum.com/pythonda-veri-girisi/">input ()</a></strong>&nbsp;fonksiyonu ve koşul ifadesi olduğu için&nbsp;<strong><a href="https://1kodum.com/pythonda-kosul-ifadeleri/">if-else</a></strong>&nbsp;deyimini kullanacağız:</p>



<pre class="wp-block-code"><code># Sayıları kullanıcıdan al
sayi1 = float(input("Birinci sayıyı giriniz: "))
sayi2 = float(input("İkinci sayıyı giriniz: "))
sayi3 = float(input("Üçüncü sayıyı giriniz: "))
# Üç sayının hepsi aynı mı diye kontrol et
if sayi1 == sayi2 and sayi2 == sayi3:
    print("Üç sayı da aynı. Lütfen farklı sayılar giriniz.")
else:
    # Farklı olan sayıyı bul
    if sayi1 == sayi2:
        farkli_sayi = sayi3
    elif sayi1 == sayi3:
        farkli_sayi = sayi2
    else:
        farkli_sayi = sayi1
    print("Farklı olan sayı: ", farkli_sayi)
</code></pre>



<div class="wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex">
<div class="wp-block-button has-custom-font-size is-style-outline is-style-outline--18" style="font-size:15px"><a class="wp-block-button__link has-white-color has-text-color has-background has-link-color wp-element-button" href="https://trinket.io/python3/e6e102c2d6" style="border-radius:10px;background-color:#04aa6d" target="_blank" rel="noreferrer noopener">Dene</a></div>
</div>



<div style="height:25px" aria-hidden="true" class="wp-block-spacer"></div>



<p>Bu kod, üç sayının aynı olup olmadığını kontrol eder ve eğer aynıysa, kullanıcıya farklı sayılar girmesi gerektiğini söyler. Eğer sayılar farklıysa, farklı olan sayıyı bulur ve yazdırır.</p>
<p><a href="https://1kodum.com/python-ile-2si-ayni-olan-3-sayidan-farkli-olani-bulma/">Python ile 2&#8217;si Aynı Olan 3 Sayıdan Farklı Olanı Bulma</a> yazısı ilk önce <a href="https://1kodum.com">1Kodum</a> üzerinde ortaya çıktı.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://1kodum.com/python-ile-2si-ayni-olan-3-sayidan-farkli-olani-bulma/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Python ile Arka Arkaya Gelen En Uzun Artan Alt Diziyi Bulma</title>
		<link>https://1kodum.com/python-ile-arka-arkaya-gelen-en-uzun-artan-alt-diziyi-bulma/</link>
					<comments>https://1kodum.com/python-ile-arka-arkaya-gelen-en-uzun-artan-alt-diziyi-bulma/#respond</comments>
		
		<dc:creator><![CDATA[1Kodum]]></dc:creator>
		<pubDate>Sun, 05 Nov 2023 11:14:56 +0000</pubDate>
				<category><![CDATA[Python Algoritma Soruları]]></category>
		<guid isPermaLink="false">https://1kodum.com/?p=3049</guid>

					<description><![CDATA[<p>Python kullanarak örnek algoritma sorularını çözdüğümüz serimizin on dördüncü sorusuna geçelim: Bir dizi içerisinde sadece bir kez kullanılan ilk elemanı bulma: Örnek girdi: [1, 2, 2, 3, 4, 1, 2, 3, 4, 5] Örnek çıktı: [1, 2, 3, 4, 5] def en_uzun_artan_dizi(dizi): if not dizi: return &#91;] mevcut_dizi = &#91;dizi&#91;0]] en_uzun_dizi = mevcut_dizi&#91;:] for i &#8230;</p>
<p><a href="https://1kodum.com/python-ile-arka-arkaya-gelen-en-uzun-artan-alt-diziyi-bulma/">Python ile Arka Arkaya Gelen En Uzun Artan Alt Diziyi Bulma</a> yazısı ilk önce <a href="https://1kodum.com">1Kodum</a> üzerinde ortaya çıktı.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Python kullanarak örnek algoritma sorularını çözdüğümüz serimizin <strong>on dördüncü</strong> sorusuna geçelim:</p>



<ol start="14" class="wp-block-list">
<li>Bir dizi içerisinde sadece bir kez kullanılan ilk elemanı bulma:
<ul class="wp-block-list">
<li>Örnek girdi: [1, 2, 2, 3, 4, 1, 2, 3, 4, 5]</li>



<li>Örnek çıktı: [1, 2, 3, 4, 5]</li>
</ul>
</li>
</ol>



<pre class="wp-block-code"><code>def en_uzun_artan_dizi(dizi):
    if not dizi:
        return &#91;]
    mevcut_dizi = &#91;dizi&#91;0]]
    en_uzun_dizi = mevcut_dizi&#91;:]
    for i in range(1, len(dizi)):
        if dizi&#91;i] > dizi&#91;i - 1]:
            mevcut_dizi.append(dizi&#91;i])
            if len(mevcut_dizi) > len(en_uzun_dizi):
                en_uzun_dizi = mevcut_dizi&#91;:]
        else:
            mevcut_dizi = &#91;dizi&#91;i]]
    return en_uzun_dizi
# Örnek kullanım:
giris_dizi = &#91;1, 2, 2, 3, 4, 1, 2, 3, 4, 5]
cikis = en_uzun_artan_dizi(giris_dizi)
print("Dizi:", cikis)  # &#91;1, 2, 3, 4, 5]
</code></pre>



<div class="wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex">
<div class="wp-block-button has-custom-font-size is-style-outline is-style-outline--20" style="font-size:15px"><a class="wp-block-button__link has-white-color has-text-color has-background has-link-color wp-element-button" href="https://1kodum.com/pyeditor/?code=p118" style="border-radius:10px;background-color:#04aa6d" target="_blank" rel="noreferrer noopener">Dene</a></div>
</div>



<div style="height:25px" aria-hidden="true" class="wp-block-spacer"></div>



<p>Yukarıdaki <code>en_uzun_artan_dizi</code> isimli fonksiyon, bir diziyi parametre olarak alıp bu dizideki en uzun artan alt diziyi döndürmek üzere tasarlanmıştır.</p>



<p>Fonksiyon başladığında, öncelikle dizi boş mu diye kontrol eder. Eğer dizi boşsa, fonksiyon hemen boş bir dizi döndürerek çalışmasını sonlandırır.</p>



<p>Ardından, &#8220;<code>mevcut_dizi</code>&#8221; adında bir değişken tanımlanır. Bu değişken, şu anki artan dizi olarak düşünülebilir. Başlangıç olarak bu değişkene dizinin ilk elemanı atanır. Aynı değer, &#8220;<code>en_uzun_dizi</code>&#8221; adında başka bir değişkene de kopyalanır. Bu ikinci değişken, şimdiye kadar bulunan en uzun artan dizi olarak kullanılacaktır.</p>



<p>Sonrasında <strong><a href="https://1kodum.com/python-for-dongusu/">for döngüsü</a></strong> başlar. Bu döngü, dizinin ikinci elemanından başlayarak son elemanına kadar devam eder. Döngü içinde, eğer şu anki eleman bir öncekinden büyükse, bu eleman &#8220;<code>mevcut_dizi</code>&#8220;ye eklenir. Eğer &#8220;<code>mevcut_dizi</code>&#8220;, şimdiye kadarki &#8220;<code>en_uzun_dizi</code>&#8220;den daha uzunsa, &#8220;<code>en_uzun_dizi</code>&#8221; güncellenir. Eğer şu anki eleman bir öncekinden büyük değilse, &#8220;<code>mevcut_dizi</code>&#8221; sıfırlanarak sadece şu anki elemanla baştan oluşturulur.</p>



<p>Döngü sona erdikten sonra, &#8220;<code>en_uzun_dizi</code>&#8221; döndürülür. Bu, fonksiyonun sonucudur ve en uzun artan alt diziyi temsil eder.</p>
<p><a href="https://1kodum.com/python-ile-arka-arkaya-gelen-en-uzun-artan-alt-diziyi-bulma/">Python ile Arka Arkaya Gelen En Uzun Artan Alt Diziyi Bulma</a> yazısı ilk önce <a href="https://1kodum.com">1Kodum</a> üzerinde ortaya çıktı.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://1kodum.com/python-ile-arka-arkaya-gelen-en-uzun-artan-alt-diziyi-bulma/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Python ile Dizi İçerisindeki En Büyük Üç Sayıyı Bulma</title>
		<link>https://1kodum.com/python-ile-dizi-icerisindeki-en-buyuk-uc-sayiyi-bulma/</link>
					<comments>https://1kodum.com/python-ile-dizi-icerisindeki-en-buyuk-uc-sayiyi-bulma/#respond</comments>
		
		<dc:creator><![CDATA[1Kodum]]></dc:creator>
		<pubDate>Fri, 03 Nov 2023 04:00:51 +0000</pubDate>
				<category><![CDATA[Python Algoritma Soruları]]></category>
		<guid isPermaLink="false">https://1kodum.com/?p=3046</guid>

					<description><![CDATA[<p>Python kullanarak örnek algoritma sorularını çözdüğümüz serimizin on üçüncü sorusuna geçelim: Bir dizi içerisinde sadece bir kez kullanılan ilk elemanı bulma: Örnek girdi: [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5] Örnek çıktı: [9, 6, 5] def en_buyuk_uc_sayi(dizi): dizi.sort(reverse=True) return dizi&#91;:3] # Örnek kullanım: giris_dizi = &#91;3, 1, 4, 1, 5, 9, &#8230;</p>
<p><a href="https://1kodum.com/python-ile-dizi-icerisindeki-en-buyuk-uc-sayiyi-bulma/">Python ile Dizi İçerisindeki En Büyük Üç Sayıyı Bulma</a> yazısı ilk önce <a href="https://1kodum.com">1Kodum</a> üzerinde ortaya çıktı.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Python kullanarak örnek algoritma sorularını çözdüğümüz serimizin <strong>on üçüncü</strong> sorusuna geçelim:</p>



<ol start="13" class="wp-block-list">
<li>Bir dizi içerisinde sadece bir kez kullanılan ilk elemanı bulma:
<ul class="wp-block-list">
<li>Örnek girdi: [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]</li>



<li>Örnek çıktı: [9, 6, 5]</li>
</ul>
</li>
</ol>



<pre class="wp-block-code"><code>def en_buyuk_uc_sayi(dizi):
    dizi.sort(reverse=True)
    return dizi&#91;:3]
# Örnek kullanım:
giris_dizi = &#91;3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
cikis = en_buyuk_uc_sayi(giris_dizi)
print("Sıralama Kullanarak Bulunan Üç Sayı:", cikis)  # &#91;9, 6, 5]
</code></pre>



<div class="wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex">
<div class="wp-block-button has-custom-font-size is-style-outline is-style-outline--23" style="font-size:15px"><a class="wp-block-button__link has-white-color has-text-color has-background has-link-color wp-element-button" href="https://trinket.io/python3/8aebb9c582" style="border-radius:10px;background-color:#04aa6d" target="_blank" rel="noreferrer noopener">Dene</a></div>
</div>



<div style="height:25px" aria-hidden="true" class="wp-block-spacer"></div>



<p>Yukarıdaki kodumuzda, <code>en_buyuk_uc_sayi</code> adında bir fonksiyon tanımladık. Fonksiyonumuzda, <code>reverse=True</code> argümanını kullanarak <code>sort()</code> metodundaki sıralamayı büyükten küçüğe olacak şekilde gerçekleştirdik. Ardından dilimleme yöntemini kullanarak (<code>dizi[:3]</code>) en büyük 3 sayıyı döndürdük.</p>



<pre class="wp-block-code"><code>def en_buyuk_uc_sayi(dizi):
    dizi.sort(reverse=True)
    return dizi&#91;:3]
# Örnek kullanım:
giris_dizi = &#91;3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
cikis = en_buyuk_uc_sayi(giris_dizi)
print("Sıralama Kullanarak Bulunan Üç Sayı:", cikis)  # &#91;9, 6, 5]
</code></pre>



<div class="wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex">
<div class="wp-block-button has-custom-font-size is-style-outline is-style-outline--24" style="font-size:15px"><a class="wp-block-button__link has-white-color has-text-color has-background has-link-color wp-element-button" href="https://trinket.io/python3/99238df571" style="border-radius:10px;background-color:#04aa6d" target="_blank" rel="noreferrer noopener">Dene</a></div>
</div>



<div style="height:25px" aria-hidden="true" class="wp-block-spacer"></div>



<p>Yukarıdaki kodumuzda, <code>en_buyuk_uc_sayi_lineer</code> adında yeni bir fonksiyon tanımladık. Bu fonksiyon, aldığı sayı listesinden en büyük üç sayıyı lineer tarama yöntemiyle bulmayı amaçlar.</p>



<p>Fonksiyonun başlangıcında, <code>max1</code>, <code>max2</code> ve <code>max3</code> adında üç değişken tanımlıyoruz. Bu değişkenler sırasıyla en büyük, ikinci en büyük ve üçüncü en büyük sayıları tutmak için kullanılır. Başlangıç değerleri olarak &#8216;-inf&#8217; (negatif sonsuz) atandı, böylece bu değişkenler ilk karşılaştıkları herhangi bir sayıdan küçük olacaktır.</p>



<p>Dizi içindeki her sayıyı tek tek dolaşarak, bu sayının en büyük üç sayıdan hangisiyle karşılaştırılması gerektiğini kontrol ediyoruz. Eğer sayı <code>max1</code>&#8216;den büyükse, <code>max1</code>&#8216;i <code>max2</code>&#8216;ye, <code>max2</code>&#8216;yi <code>max3</code>&#8216;e atayarak en büyük değeri <code>max1</code>&#8216;e atıyoruz. Aynı mantık, sayı <code>max1</code> ile <code>max2</code> arasında veya <code>max2</code> ile <code>max3</code> arasında olduğunda da uygulanır.</p>



<p>Tüm dizi bu şekilde tarandıktan sonra, <code>max1</code>, <code>max2</code> ve <code>max3</code> değişkenlerindeki değerler en büyük üç sayıyı temsil eder. Bu üç sayıyı bir liste olarak döndürüyoruz.</p>



<p>Son olarak, bir örnek dizi olan <code>giris_dizi</code> ile bu fonksiyonu test ediyoruz. Sonuç olarak [9, 6, 5] değerlerini elde ediyoruz, bu da en büyük üç sayıdır. Bu yöntem, diziyi sadece bir kere tarayarak sonucu bulduğu için lineer zamanda çalışır ve büyük diziler için oldukça verimlidir.</p>
<p><a href="https://1kodum.com/python-ile-dizi-icerisindeki-en-buyuk-uc-sayiyi-bulma/">Python ile Dizi İçerisindeki En Büyük Üç Sayıyı Bulma</a> yazısı ilk önce <a href="https://1kodum.com">1Kodum</a> üzerinde ortaya çıktı.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://1kodum.com/python-ile-dizi-icerisindeki-en-buyuk-uc-sayiyi-bulma/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Python ile Bir Dizi İçerisinde Bir Kez Kullanılan İlk Elemanı Bulma</title>
		<link>https://1kodum.com/python-ile-bir-dizi-icerisinde-bir-kez-kullanilan-ilk-elemani-bulma/</link>
					<comments>https://1kodum.com/python-ile-bir-dizi-icerisinde-bir-kez-kullanilan-ilk-elemani-bulma/#respond</comments>
		
		<dc:creator><![CDATA[1Kodum]]></dc:creator>
		<pubDate>Tue, 31 Oct 2023 01:57:06 +0000</pubDate>
				<category><![CDATA[Python Algoritma Soruları]]></category>
		<guid isPermaLink="false">https://1kodum.com/?p=3035</guid>

					<description><![CDATA[<p>Python kullanarak örnek algoritma sorularını çözdüğümüz serimizin on ikinci sorusuna geçelim Bir dizi içerisinde sadece bir kez kullanılan ilk elemanı bulma: Örnek girdi: [4, 1, 2, 1, 2] Örnek çıktı: 4 (Çünkü 4 sayısı dizide sadece bir kez geçiyor.) def tek_gecen_sayiyi_bul(dizi): sayi_sayim = {} for sayi in dizi: if sayi in sayi_sayim: sayi_sayim&#91;sayi] += 1 &#8230;</p>
<p><a href="https://1kodum.com/python-ile-bir-dizi-icerisinde-bir-kez-kullanilan-ilk-elemani-bulma/">Python ile Bir Dizi İçerisinde Bir Kez Kullanılan İlk Elemanı Bulma</a> yazısı ilk önce <a href="https://1kodum.com">1Kodum</a> üzerinde ortaya çıktı.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Python kullanarak örnek algoritma sorularını çözdüğümüz serimizin <strong>on ikinci</strong> sorusuna geçelim</p>



<ol start="12" class="wp-block-list">
<li>Bir dizi içerisinde sadece bir kez kullanılan ilk elemanı bulma:
<ul class="wp-block-list">
<li>Örnek girdi: [4, 1, 2, 1, 2]</li>



<li>Örnek çıktı: 4 (Çünkü 4 sayısı dizide sadece bir kez geçiyor.)</li>
</ul>
</li>
</ol>



<pre class="wp-block-code"><code>def tek_gecen_sayiyi_bul(dizi):
    sayi_sayim = {}
    for sayi in dizi:
        if sayi in sayi_sayim:
            sayi_sayim&#91;sayi] += 1
        else:
            sayi_sayim&#91;sayi] = 1
            
    for sayi, sayim in sayi_sayim.items():
        if sayim == 1:
            return sayi
# Örnek kullanım:
giris_dizi = &#91;4, 1, 2, 1, 2]
cikis = tek_gecen_sayiyi_bul(giris_dizi)
print("Sözlük Kullanarak Bulunan Sayı:", cikis)  # 4
</code></pre>



<div class="wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex">
<div class="wp-block-button has-custom-font-size is-style-outline is-style-outline--27" style="font-size:15px"><a class="wp-block-button__link has-white-color has-text-color has-background has-link-color wp-element-button" href="https://trinket.io/python3/0e8a131fca" style="border-radius:10px;background-color:#04aa6d" target="_blank" rel="noreferrer noopener">Dene</a></div>
</div>



<div style="height:25px" aria-hidden="true" class="wp-block-spacer"></div>



<p>Yukarıdaki kodumuzda, bir dizide yalnızca bir kez geçen sayıyı bulmayı amaçlıyoruz. Bu işlemi gerçekleştirmek için bir <strong><a href="https://1kodum.com/python-sozluk/">sözlük yapısı</a></strong> (<code>sayi_sayim</code>) kullanıyoruz. Diziyi dolaşırken her eleman için bu elemanın tekrar sayısını bu sözlük içerisinde saklıyoruz.</p>



<p>Kodumuzda, <strong><a href="https://1kodum.com/python-for-dongusu/">for döngüsü</a></strong> ile diziyi baştan sona dolaşıyoruz. Dizi üzerindeki her bir elemanı incelediğimizde, eğer bu elemanı daha önce gördüysek (<strong><a href="https://1kodum.com/pythonda-kosul-ifadeleri/">if koşulu</a></strong>), bu elemanın tekrar sayısını bir artırıyoruz. Eğer elemanı ilk kez görüyorsak, bu elemanı sözlüğe ekleyip tekrar sayısını 1 olarak ayarlıyoruz.</p>



<p>Bu işlemden sonra <code>sayi_sayim</code> sözlüğünde, her bir elemanın kaç kere tekrar ettiği bilgisi saklanmış oluyor. İkinci döngüde ise, bu sözlükteki elemanların tekrar sayılarını kontrol ediyoruz ve tekrar sayısı 1 olan elemanı bulup döndürüyoruz.</p>



<pre class="wp-block-code"><code>def tek_gecen_sayiyi_bul_xor(dizi):
    sonuc = 0
    for sayi in dizi:
        sonuc ^= sayi
    return sonuc
# Örnek kullanım:
giris_dizi = &#91;4, 1, 2, 1, 2]
cikis_xor = tek_gecen_sayiyi_bul_xor(giris_dizi)
print("XOR Kullanarak Bulunan Sayı:", cikis_xor)  # 4
</code></pre>



<div class="wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex">
<div class="wp-block-button has-custom-font-size is-style-outline is-style-outline--28" style="font-size:15px"><a class="wp-block-button__link has-white-color has-text-color has-background has-link-color wp-element-button" href="https://trinket.io/python3/78fe07cbf7" style="border-radius:10px;background-color:#04aa6d" target="_blank" rel="noreferrer noopener">Dene</a></div>
</div>



<div style="height:25px" aria-hidden="true" class="wp-block-spacer"></div>



<p><code>^</code> işareti ile gösterilen <strong>XOR</strong> operatörü, iki bit arasında yapılan bir işlemdir ve eğer iki bit aynıysa sonucu 0, farklıysa sonucu 1 olarak verir. Bu özellik, aynı sayının iki kere XOR işlemine tabi tutulduğunda sonucun 0 olmasını sağlar.</p>



<p>Kodumuzda, for döngüsü ile diziyi baştan sona dolaşıyoruz. Başlangıçta sonucu 0 olarak ayarladıktan sonra, dizi üzerindeki her bir eleman için bu elemanı sonuca XOR işlemi ile ekliyoruz. Eğer bir sayı dizide iki kez bulunuyorsa, bu sayının sonuc üzerindeki etkisi sıfırlanacaktır. Ancak, yalnızca bir kez geçen sayı sonucu etkileyecektir.</p>
<p><a href="https://1kodum.com/python-ile-bir-dizi-icerisinde-bir-kez-kullanilan-ilk-elemani-bulma/">Python ile Bir Dizi İçerisinde Bir Kez Kullanılan İlk Elemanı Bulma</a> yazısı ilk önce <a href="https://1kodum.com">1Kodum</a> üzerinde ortaya çıktı.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://1kodum.com/python-ile-bir-dizi-icerisinde-bir-kez-kullanilan-ilk-elemani-bulma/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Python ile Dizide En Çok Tekrar Eden Elemanı Bulma</title>
		<link>https://1kodum.com/python-ile-dizide-en-cok-tekrar-eden-elemani-bulma/</link>
					<comments>https://1kodum.com/python-ile-dizide-en-cok-tekrar-eden-elemani-bulma/#respond</comments>
		
		<dc:creator><![CDATA[1Kodum]]></dc:creator>
		<pubDate>Sat, 28 Oct 2023 20:50:07 +0000</pubDate>
				<category><![CDATA[Python Algoritma Soruları]]></category>
		<guid isPermaLink="false">https://1kodum.com/?p=3029</guid>

					<description><![CDATA[<p>Python kullanarak örnek algoritma sorularını çözdüğümüz serimizin on birinci sorusuna geçelim: Bir dizi içerisindeki en çok tekrar eden liste elemanını ve kaç kere tekrar edildiğini bulma Örnek girdi: [5, 3, 4, 8, 5, 3, 1, 5] Örnek çıktı: 5 3 def en_cok_tekrar_eden(dizi): tekrarlar = {} for eleman in dizi: if eleman in tekrarlar: tekrarlar&#91;eleman] += &#8230;</p>
<p><a href="https://1kodum.com/python-ile-dizide-en-cok-tekrar-eden-elemani-bulma/">Python ile Dizide En Çok Tekrar Eden Elemanı Bulma</a> yazısı ilk önce <a href="https://1kodum.com">1Kodum</a> üzerinde ortaya çıktı.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Python kullanarak örnek algoritma sorularını çözdüğümüz serimizin <strong>on birinci</strong> sorusuna geçelim:</p>



<ol start="11" class="wp-block-list">
<li>Bir dizi içerisindeki en çok tekrar eden liste elemanını ve kaç kere tekrar edildiğini bulma
<ul class="wp-block-list">
<li>Örnek girdi: [5, 3, 4, 8, 5, 3, 1, 5]</li>



<li>Örnek çıktı: 5 3</li>
</ul>
</li>
</ol>



<pre class="wp-block-code"><code>def en_cok_tekrar_eden(dizi):
    tekrarlar = {}
    for eleman in dizi:
        if eleman in tekrarlar:
            tekrarlar&#91;eleman] += 1
        else:
            tekrarlar&#91;eleman] = 1
    
    en_cok_tekrar = max(tekrarlar, key=tekrarlar.get)
    return en_cok_tekrar, tekrarlar&#91;en_cok_tekrar]
giris_dizi = &#91;5, 3, 4, 8, 5, 3, 1, 5]
eleman, tekrar_sayisi = en_cok_tekrar_eden(giris_dizi)
print(eleman, tekrar_sayisi)  # 5 3
</code></pre>



<div class="wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex">
<div class="wp-block-button has-custom-font-size is-style-outline is-style-outline--31" style="font-size:15px"><a class="wp-block-button__link has-white-color has-text-color has-background has-link-color wp-element-button" href="https://1kodum.com/pyeditor/?code=p129" style="border-radius:10px;background-color:#04aa6d" target="_blank" rel="noreferrer noopener">Dene</a></div>
</div>



<div style="height:25px" aria-hidden="true" class="wp-block-spacer"></div>



<p>Yukarıdaki kodumuzda, bir dizide en çok tekrar eden elemanı ve bu elemanın kaç kere tekrar ettiğini bulmayı amaçlıyoruz. Bu işlemi gerçekleştirmek için bir <strong><a href="https://1kodum.com/python-sozluk/">sözlük yapısı</a></strong> (<code>tekrarlar</code>) kullanıyoruz. Diziyi dolaşırken her eleman için bu elemanın tekrar sayısını bu sözlük içerisinde saklıyoruz.</p>



<p>Kodumuzda, <strong><a href="https://1kodum.com/python-for-dongusu/">for döngüsü</a></strong> ile diziyi baştan sona dolaşıyoruz. Dizi üzerindeki her bir elemanı incelediğimizde, eğer bu eleman daha önce gördüysek (<strong><a href="https://1kodum.com/pythonda-kosul-ifadeleri/">if koşulu</a></strong>), bu elemanın tekrar sayısını bir artırıyoruz. Eğer elemanı ilk kez görüyorsak, bu elemanı sözlüğe ekleyip tekrar sayısını <code>1</code> olarak ayarlıyoruz.</p>



<p>Bu işlemden sonra <code>tekrarlar</code> sözlüğünde, her bir elemanın kaç kere tekrar ettiği bilgisi saklanmış oluyor. Daha sonra <code>max</code> fonksiyonunu kullanarak bu sözlükte en yüksek tekrar sayısına sahip elemanı buluyoruz. Bu eleman, en çok tekrar eden eleman olacaktır. Kodu çalıştırmak için: <strong><a href="https://trinket.io/python3/c520408f1d">Trinket</a></strong></p>



<p>Pekala <code>collections</code> modülündeki <code>Counter</code> sınıfı ile hızlı bir şekilde en çok tekrar eden elemanı bulabiliriz:</p>



<pre class="wp-block-code"><code>from collections import Counter
def en_cok_tekrar_eden(dizi):
    tekrar_sayisi = Counter(dizi)
    eleman, sayi = tekrar_sayisi.most_common(1)&#91;0]
    return eleman, sayi
giris_dizi = &#91;5, 3, 4, 8, 5, 3, 1, 5]
eleman, tekrar_sayisi = en_cok_tekrar_eden(giris_dizi)
print(eleman, tekrar_sayisi)  # 5 3</code></pre>



<div class="wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex">
<div class="wp-block-button has-custom-font-size is-style-outline is-style-outline--32" style="font-size:15px"><a class="wp-block-button__link has-white-color has-text-color has-background has-link-color wp-element-button" href="https://1kodum.com/pyeditor/?code=p130" style="border-radius:10px;background-color:#04aa6d" target="_blank" rel="noreferrer noopener">Dene</a></div>
</div>



<div style="height:25px" aria-hidden="true" class="wp-block-spacer"></div>
<p><a href="https://1kodum.com/python-ile-dizide-en-cok-tekrar-eden-elemani-bulma/">Python ile Dizide En Çok Tekrar Eden Elemanı Bulma</a> yazısı ilk önce <a href="https://1kodum.com">1Kodum</a> üzerinde ortaya çıktı.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://1kodum.com/python-ile-dizide-en-cok-tekrar-eden-elemani-bulma/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
