<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	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/"
		>
<channel>
	<title>Comments on: Özyineli Fonksiyonlar (Recursive Functions)</title>
	<atom:link href="http://www.bilgisayarkavramlari.com/2008/08/05/ozyineli-fonksiyonlar-recursive-functions/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.bilgisayarkavramlari.com/2008/08/05/ozyineli-fonksiyonlar-recursive-functions/</link>
	<description>www.bilgisayarkavramlari.com</description>
	<lastBuildDate>Thu, 09 Feb 2012 15:35:42 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
	<item>
		<title>By: çiğdem</title>
		<link>http://www.bilgisayarkavramlari.com/2008/08/05/ozyineli-fonksiyonlar-recursive-functions/comment-page-1/#comment-64722</link>
		<dc:creator>çiğdem</dc:creator>
		<pubDate>Thu, 09 Feb 2012 15:35:42 +0000</pubDate>
		<guid isPermaLink="false">http://shedai.net/bilgisayar/?p=454#comment-64722</guid>
		<description>yaz (int k) {
if(k&gt;1) return;
yaz(k-1); yaz(k-2); yaz(k-3);
printf(&quot;%d\t&quot;,k);
}</description>
		<content:encoded><![CDATA[<p>yaz (int k) {<br />
if(k&gt;1) return;<br />
yaz(k-1); yaz(k-2); yaz(k-3);<br />
printf(&#8220;%d\t&#8221;,k);<br />
}</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Şadi Evren ŞEKER</title>
		<link>http://www.bilgisayarkavramlari.com/2008/08/05/ozyineli-fonksiyonlar-recursive-functions/comment-page-1/#comment-62832</link>
		<dc:creator>Şadi Evren ŞEKER</dc:creator>
		<pubDate>Sat, 30 Apr 2011 18:32:36 +0000</pubDate>
		<guid isPermaLink="false">http://shedai.net/bilgisayar/?p=454#comment-62832</guid>
		<description>sorunuzun çözümünü yazının içerisine ekliyorum. 

başarılar</description>
		<content:encoded><![CDATA[<p>sorunuzun çözümünü yazının içerisine ekliyorum. </p>
<p>başarılar</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Hasret Dicle</title>
		<link>http://www.bilgisayarkavramlari.com/2008/08/05/ozyineli-fonksiyonlar-recursive-functions/comment-page-1/#comment-62737</link>
		<dc:creator>Hasret Dicle</dc:creator>
		<pubDate>Thu, 28 Apr 2011 19:34:31 +0000</pubDate>
		<guid isPermaLink="false">http://shedai.net/bilgisayar/?p=454#comment-62737</guid>
		<description>merhaba,
Ben &quot;This is a simple string.&quot; cümlesini &quot;Thisisasimplestring.&quot; seklinde
hem iterative hemde recursive olarak yazmak istiyorum.ityerative yazdim ama 
recursive yapamadim.Nasil yapabilirim?asagidaki iterative hali.

#include 
#include 

#define SIZE 30

void blank_search(char *string);
void blank_search2(char *string);

int main()
{
    char string[]=&quot;This is a sample string.&quot;;
    
//  blank_search(string);
    printf(&quot;***********************\n&quot;);
    blank_search2(string);
    return 0;
}

void blank_search(char *string)
{
    int j=0;
    char temp[SIZE],
         temp2[SIZE],
         temp3[SIZE];

    while(string[j] != &#039;&#039;){
        if(string[j] == &#039; &#039;){
            strncpy(temp,string,j);
            temp[j]=&#039;&#039;;
            strcpy(temp2,&amp;string[j+1]);
            strcpy(temp3,temp);
            strcat(temp3,temp2);
            printf(&quot;%s\n&quot;,temp3);
            strcpy(string,temp3);
        }        
        j++;
   }
}</description>
		<content:encoded><![CDATA[<p>merhaba,<br />
Ben &#8220;This is a simple string.&#8221; cümlesini &#8220;Thisisasimplestring.&#8221; seklinde<br />
hem iterative hemde recursive olarak yazmak istiyorum.ityerative yazdim ama<br />
recursive yapamadim.Nasil yapabilirim?asagidaki iterative hali.</p>
<p>#include<br />
#include </p>
<p>#define SIZE 30</p>
<p>void blank_search(char *string);<br />
void blank_search2(char *string);</p>
<p>int main()<br />
{<br />
    char string[]=&#8221;This is a sample string.&#8221;;</p>
<p>//  blank_search(string);<br />
    printf(&#8220;***********************\n&#8221;);<br />
    blank_search2(string);<br />
    return 0;<br />
}</p>
<p>void blank_search(char *string)<br />
{<br />
    int j=0;<br />
    char temp[SIZE],<br />
         temp2[SIZE],<br />
         temp3[SIZE];</p>
<p>    while(string[j] != &#8221;){<br />
        if(string[j] == &#8216; &#8216;){<br />
            strncpy(temp,string,j);<br />
            temp[j]=&#8221;;<br />
            strcpy(temp2,&amp;string[j+1]);<br />
            strcpy(temp3,temp);<br />
            strcat(temp3,temp2);<br />
            printf(&#8220;%s\n&#8221;,temp3);<br />
            strcpy(string,temp3);<br />
        }<br />
        j++;<br />
   }<br />
}</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Şadi Evren ŞEKER</title>
		<link>http://www.bilgisayarkavramlari.com/2008/08/05/ozyineli-fonksiyonlar-recursive-functions/comment-page-1/#comment-62659</link>
		<dc:creator>Şadi Evren ŞEKER</dc:creator>
		<pubDate>Tue, 26 Apr 2011 19:58:37 +0000</pubDate>
		<guid isPermaLink="false">http://shedai.net/bilgisayar/?p=454#comment-62659</guid>
		<description>Sanırım hocanız quad tree olarak bilinen ağacı kast etmiş. Genelde 2 boyutlu veriler için daha kullanışlıdır ve veriyi kuzeybatı, kuzeydoğu, güneydoğu, güneybatı şeklinde 4&#039;e böler (bir kareyi ortasında bir artı varmış gibi 4&#039;e böldüğünüzü düşünün). Sanırım internette quadtree olarak aratırsanız işinize yarar bilgiler bulabilirsiniz. 

başarılar</description>
		<content:encoded><![CDATA[<p>Sanırım hocanız quad tree olarak bilinen ağacı kast etmiş. Genelde 2 boyutlu veriler için daha kullanışlıdır ve veriyi kuzeybatı, kuzeydoğu, güneydoğu, güneybatı şeklinde 4&#8242;e böler (bir kareyi ortasında bir artı varmış gibi 4&#8242;e böldüğünüzü düşünün). Sanırım internette quadtree olarak aratırsanız işinize yarar bilgiler bulabilirsiniz. </p>
<p>başarılar</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: tolga</title>
		<link>http://www.bilgisayarkavramlari.com/2008/08/05/ozyineli-fonksiyonlar-recursive-functions/comment-page-1/#comment-62655</link>
		<dc:creator>tolga</dc:creator>
		<pubDate>Tue, 26 Apr 2011 17:01:39 +0000</pubDate>
		<guid isPermaLink="false">http://shedai.net/bilgisayar/?p=454#comment-62655</guid>
		<description>Dörtlü arama algoritması (ikili arama algoritmasına benzer şekilde) sıralı bir dizideki elemanları 4’e bölerek arama mantığında çalışmaktadır. Bu arama algoritmasının tekrarlamalı yapı (recursive function) kullanarak programlayınız? 

hocamız boyle bir odev verdi.bir mantık yurutemedik.yardımcı olursanız cok memnun olurum.</description>
		<content:encoded><![CDATA[<p>Dörtlü arama algoritması (ikili arama algoritmasına benzer şekilde) sıralı bir dizideki elemanları 4’e bölerek arama mantığında çalışmaktadır. Bu arama algoritmasının tekrarlamalı yapı (recursive function) kullanarak programlayınız? </p>
<p>hocamız boyle bir odev verdi.bir mantık yurutemedik.yardımcı olursanız cok memnun olurum.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Şadi Evren ŞEKER</title>
		<link>http://www.bilgisayarkavramlari.com/2008/08/05/ozyineli-fonksiyonlar-recursive-functions/comment-page-1/#comment-55452</link>
		<dc:creator>Şadi Evren ŞEKER</dc:creator>
		<pubDate>Sat, 08 Jan 2011 19:46:27 +0000</pubDate>
		<guid isPermaLink="false">http://shedai.net/bilgisayar/?p=454#comment-55452</guid>
		<description>:) faktoriyel alırken sayılar çarpılır. Çarpma işleminde 0 yutan elemandır yani bir kere 0 ile çarptığınızda sonuç sıfır olur. kodunuzdaki return 0 bu anlamda hatalı. return 1 olarak düzeltirseniz çalışır. if(a==1) return 1; olacak.

başarılar</description>
		<content:encoded><![CDATA[<p> <img src='http://www.bilgisayarkavramlari.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  faktoriyel alırken sayılar çarpılır. Çarpma işleminde 0 yutan elemandır yani bir kere 0 ile çarptığınızda sonuç sıfır olur. kodunuzdaki return 0 bu anlamda hatalı. return 1 olarak düzeltirseniz çalışır. if(a==1) return 1; olacak.</p>
<p>başarılar</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: safa</title>
		<link>http://www.bilgisayarkavramlari.com/2008/08/05/ozyineli-fonksiyonlar-recursive-functions/comment-page-1/#comment-55445</link>
		<dc:creator>safa</dc:creator>
		<pubDate>Sat, 08 Jan 2011 17:57:01 +0000</pubDate>
		<guid isPermaLink="false">http://shedai.net/bilgisayar/?p=454#comment-55445</guid>
		<description>&lt;pre&gt;
#include &lt;stdio.h&gt;
#include &lt;conio.h&gt;
int fak (int a);
int main(){
    int i,c;
    printf(&quot;sayigir&quot;);
    scanf(&quot;%d&quot;,&amp;i);
    c=fak(i);
    printf (&quot;%d&quot;,c) ;
    getch();
    return 0;
}
int fak(int a){
    
    if(a==1)return 0;
    else   
    return a* fak(a-1);

}
&lt;/pre&gt;
hocam sonucu hep 0 veriyor. hata nerde acaba</description>
		<content:encoded><![CDATA[<pre>
#include <stdio .h>
#include <conio .h>
int fak (int a);
int main(){
    int i,c;
    printf("sayigir");
    scanf("%d",&#038;i);
    c=fak(i);
    printf ("%d",c) ;
    getch();
    return 0;
}
int fak(int a){

    if(a==1)return 0;
    else
    return a* fak(a-1);

}
</conio></stdio></pre>
<p>hocam sonucu hep 0 veriyor. hata nerde acaba</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Gokce AYDIN</title>
		<link>http://www.bilgisayarkavramlari.com/2008/08/05/ozyineli-fonksiyonlar-recursive-functions/comment-page-1/#comment-55166</link>
		<dc:creator>Gokce AYDIN</dc:creator>
		<pubDate>Wed, 05 Jan 2011 14:14:49 +0000</pubDate>
		<guid isPermaLink="false">http://shedai.net/bilgisayar/?p=454#comment-55166</guid>
		<description>int sayi,us,toplam,sonuc;

int fak(int a)
{
	
	if(a==1&#124;&#124;a==0)
	{
		return 1;
	}
	else
	{
		return a*fak(a-1);
	}


}


int _tmain(int argc, _TCHAR* argv[])
{
	
	cout&lt;&lt;&quot;bir sayi giriniz:&quot;&lt;&gt;sayi;
	int sonuc = fak(sayi);
	cout&lt;&lt;&quot;Sonuc:&quot;&lt;&lt;sonuc;
	system(&quot;PAUSE&quot;);
}
Hocam şimdi şu kodda yorum yapmak istiyorum.İnanın burada eksiğim var okulda hocaya soramıyorum.Şimdi burada sayiyi giriyoruz.daha sonra fak fonksiyonuna sayimiz giriyor ve sonuc olarak atanıyor.İşte benim burdan sonra anlayamadığım şu : SORU 1: bu satırdan sonra işlem yukarıdaki fak fonksiyonuna mı gidiyor ?
SORU 2 :Ve fak()&#039;in main() fonksiyonun altında tanımlanması fark eder mi ? 
SORU 3:Eğer girilen sayi 0 veya 1 değilse de RETURN ediliyor.RETURN nereye edilir ve manası 0 veya 1 değilse 0 ve 1 i mi bas demek?
SORU 4: Bu return Maindeki fak() fonksiyonuna a*fak(a-1) &#039;i bir parametresi olarak mı gönderiyor yani  Main()de fak(a*fak(a-1)   şeklinde ? 
Hocam inanın kafam karıştı.İnanın benim gibi burda çok takılan vardır yeni başlayan.Şimdiden teşekkürler hocam</description>
		<content:encoded><![CDATA[<p>int sayi,us,toplam,sonuc;</p>
<p>int fak(int a)<br />
{</p>
<p>	if(a==1||a==0)<br />
	{<br />
		return 1;<br />
	}<br />
	else<br />
	{<br />
		return a*fak(a-1);<br />
	}</p>
<p>}</p>
<p>int _tmain(int argc, _TCHAR* argv[])<br />
{</p>
<p>	cout&lt;&lt;&quot;bir sayi giriniz:&quot;&lt;&gt;sayi;<br />
	int sonuc = fak(sayi);<br />
	cout&lt;&lt;&quot;Sonuc:&quot;&lt;&lt;sonuc;<br />
	system(&quot;PAUSE&quot;);<br />
}<br />
Hocam şimdi şu kodda yorum yapmak istiyorum.İnanın burada eksiğim var okulda hocaya soramıyorum.Şimdi burada sayiyi giriyoruz.daha sonra fak fonksiyonuna sayimiz giriyor ve sonuc olarak atanıyor.İşte benim burdan sonra anlayamadığım şu : SORU 1: bu satırdan sonra işlem yukarıdaki fak fonksiyonuna mı gidiyor ?<br />
SORU 2 :Ve fak()&#039;in main() fonksiyonun altında tanımlanması fark eder mi ?<br />
SORU 3:Eğer girilen sayi 0 veya 1 değilse de RETURN ediliyor.RETURN nereye edilir ve manası 0 veya 1 değilse 0 ve 1 i mi bas demek?<br />
SORU 4: Bu return Maindeki fak() fonksiyonuna a*fak(a-1) &#039;i bir parametresi olarak mı gönderiyor yani  Main()de fak(a*fak(a-1)   şeklinde ?<br />
Hocam inanın kafam karıştı.İnanın benim gibi burda çok takılan vardır yeni başlayan.Şimdiden teşekkürler hocam</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Şadi Evren ŞEKER</title>
		<link>http://www.bilgisayarkavramlari.com/2008/08/05/ozyineli-fonksiyonlar-recursive-functions/comment-page-1/#comment-55160</link>
		<dc:creator>Şadi Evren ŞEKER</dc:creator>
		<pubDate>Wed, 05 Jan 2011 12:43:58 +0000</pubDate>
		<guid isPermaLink="false">http://shedai.net/bilgisayar/?p=454#comment-55160</guid>
		<description>Özyineli fonksiyonlarda (recursive) bitiş koşulu için serinin ilerlemesi takip edilmelidir. Örneğin fibonacci serisi için iki farklı başlangıç değeri vardır ve F(0) = 1 ve F(1) = 1 şeklinde ikisinin de ayrı ayrı düşünülmesi gerekir. 
Seriniz örneğin faktöriyel hesaplamak için kullandığınız ardışık sayılardan oluşuyorsa, bu durumda F(0) = 1 kontrolü yeterlidir çünkü F(1) = F(0) * 1 olarak hesaplanacak ve F(1) değeri de 1 olarak bulunacaktır. Kısacası özyineli fonksiyonlar için serinin açılımına bakmanız ve nerede bitmesini istediğinizi belirlemeniz gerekir. 

Bir önceki yorumunuzda birden fazla sınıf&#039;tan (class) bahsetmişsiniz. Bu sorunun özyineli fonksiyonlarla bir ilgisi yoktur. Sınıf tanımlarının içerisinde bulunan fonksiyonların özyineli olması durumunda fonksiyonu, sınıftan bağımsız düşünerek kodlamanız mümkündür. 

başarılar</description>
		<content:encoded><![CDATA[<p>Özyineli fonksiyonlarda (recursive) bitiş koşulu için serinin ilerlemesi takip edilmelidir. Örneğin fibonacci serisi için iki farklı başlangıç değeri vardır ve F(0) = 1 ve F(1) = 1 şeklinde ikisinin de ayrı ayrı düşünülmesi gerekir.<br />
Seriniz örneğin faktöriyel hesaplamak için kullandığınız ardışık sayılardan oluşuyorsa, bu durumda F(0) = 1 kontrolü yeterlidir çünkü F(1) = F(0) * 1 olarak hesaplanacak ve F(1) değeri de 1 olarak bulunacaktır. Kısacası özyineli fonksiyonlar için serinin açılımına bakmanız ve nerede bitmesini istediğinizi belirlemeniz gerekir. </p>
<p>Bir önceki yorumunuzda birden fazla sınıf&#8217;tan (class) bahsetmişsiniz. Bu sorunun özyineli fonksiyonlarla bir ilgisi yoktur. Sınıf tanımlarının içerisinde bulunan fonksiyonların özyineli olması durumunda fonksiyonu, sınıftan bağımsız düşünerek kodlamanız mümkündür. </p>
<p>başarılar</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Gokce AYDIN</title>
		<link>http://www.bilgisayarkavramlari.com/2008/08/05/ozyineli-fonksiyonlar-recursive-functions/comment-page-1/#comment-55159</link>
		<dc:creator>Gokce AYDIN</dc:creator>
		<pubDate>Wed, 05 Jan 2011 12:28:58 +0000</pubDate>
		<guid isPermaLink="false">http://shedai.net/bilgisayar/?p=454#comment-55159</guid>
		<description>Ve hocam bir şey daha soracağım.Şimdi biz önce bir ve sıfırı kontrol edip 1 döndürüyoruz.Recursive de 0 ve 1 için ayrı mı düşüneceğiz? Onun neden fonksiyonda kontrol edilmediğini tam anlayamadım.</description>
		<content:encoded><![CDATA[<p>Ve hocam bir şey daha soracağım.Şimdi biz önce bir ve sıfırı kontrol edip 1 döndürüyoruz.Recursive de 0 ve 1 için ayrı mı düşüneceğiz? Onun neden fonksiyonda kontrol edilmediğini tam anlayamadım.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

