Yazilim Öğrenmenin Tek Adresi...
Daha İyi Bir Hizmet İçin Lütfen Üye Olunuz...
Yazilim Öğrenmenin Tek Adresi...
Daha İyi Bir Hizmet İçin Lütfen Üye Olunuz...
Yazilim Öğrenmenin Tek Adresi...
Would you like to react to this message? Create an account in a few clicks or log in to continue.

Yazilim Öğrenmenin Tek Adresi...

En Kapsamlı Visual Basic Sitesi
 
AnasayfaAramaLatest imagesKayıt OlGiriş yap
Giriş yap
Kullanıcı Adı:
Şifre:
Beni hatırla: 
:: Şifremi unuttum
Arama
 
 

Sonuç :
 
Rechercher çıkıntı araştırma
En son konular
» C İle Banka Otomasyonu Acill
Hanoi Kuleleri (Fonksiyonlara Bir Örnek) Icon_minitimeC.tesi Ocak 09, 2010 4:51 pm tarafından Ebubekir_Kara

» C++'la yapılmış basit ATM programı
Hanoi Kuleleri (Fonksiyonlara Bir Örnek) Icon_minitimeÇarş. Ara. 02, 2009 4:43 am tarafından 1221ibrahim

» Bir Oyunda Puan Sistemi Yapma
Hanoi Kuleleri (Fonksiyonlara Bir Örnek) Icon_minitimePtsi Kas. 02, 2009 1:49 pm tarafından KonYalıCoder

» Ipconfig Komutu
Hanoi Kuleleri (Fonksiyonlara Bir Örnek) Icon_minitimePaz Eyl. 13, 2009 5:33 pm tarafından OguzhanUyanik

» Çalıştır Komutları
Hanoi Kuleleri (Fonksiyonlara Bir Örnek) Icon_minitimePaz Eyl. 13, 2009 5:33 pm tarafından OguzhanUyanik

» Domain Adresleri
Hanoi Kuleleri (Fonksiyonlara Bir Örnek) Icon_minitimePaz Eyl. 13, 2009 5:32 pm tarafından OguzhanUyanik

» Msconfig Nedir? Ayarları ve Özellikleri
Hanoi Kuleleri (Fonksiyonlara Bir Örnek) Icon_minitimePaz Eyl. 13, 2009 5:32 pm tarafından OguzhanUyanik

» Windows Vista & Türkçe Kurulumu Resimli anlatım!
Hanoi Kuleleri (Fonksiyonlara Bir Örnek) Icon_minitimePaz Eyl. 13, 2009 5:31 pm tarafından OguzhanUyanik

» Format atmak ve Türkçe windows xp kurulumu (resimli anlatım)
Hanoi Kuleleri (Fonksiyonlara Bir Örnek) Icon_minitimePaz Eyl. 13, 2009 5:31 pm tarafından OguzhanUyanik

» Windows Xp Hızlandırma
Hanoi Kuleleri (Fonksiyonlara Bir Örnek) Icon_minitimePaz Eyl. 13, 2009 5:30 pm tarafından OguzhanUyanik

En iyi yollayıcılar
OguzhanUyanik (472)
Hanoi Kuleleri (Fonksiyonlara Bir Örnek) Vote_lcapHanoi Kuleleri (Fonksiyonlara Bir Örnek) I_voting_barHanoi Kuleleri (Fonksiyonlara Bir Örnek) Vote_rcap 
mehmet bozer (78)
Hanoi Kuleleri (Fonksiyonlara Bir Örnek) Vote_lcapHanoi Kuleleri (Fonksiyonlara Bir Örnek) I_voting_barHanoi Kuleleri (Fonksiyonlara Bir Örnek) Vote_rcap 
asi_esra (4)
Hanoi Kuleleri (Fonksiyonlara Bir Örnek) Vote_lcapHanoi Kuleleri (Fonksiyonlara Bir Örnek) I_voting_barHanoi Kuleleri (Fonksiyonlara Bir Örnek) Vote_rcap 
mysterious_el (4)
Hanoi Kuleleri (Fonksiyonlara Bir Örnek) Vote_lcapHanoi Kuleleri (Fonksiyonlara Bir Örnek) I_voting_barHanoi Kuleleri (Fonksiyonlara Bir Örnek) Vote_rcap 
1221ibrahim (3)
Hanoi Kuleleri (Fonksiyonlara Bir Örnek) Vote_lcapHanoi Kuleleri (Fonksiyonlara Bir Örnek) I_voting_barHanoi Kuleleri (Fonksiyonlara Bir Örnek) Vote_rcap 
igny (3)
Hanoi Kuleleri (Fonksiyonlara Bir Örnek) Vote_lcapHanoi Kuleleri (Fonksiyonlara Bir Örnek) I_voting_barHanoi Kuleleri (Fonksiyonlara Bir Örnek) Vote_rcap 
tarkantr2000 (2)
Hanoi Kuleleri (Fonksiyonlara Bir Örnek) Vote_lcapHanoi Kuleleri (Fonksiyonlara Bir Örnek) I_voting_barHanoi Kuleleri (Fonksiyonlara Bir Örnek) Vote_rcap 
myildiz.16 (2)
Hanoi Kuleleri (Fonksiyonlara Bir Örnek) Vote_lcapHanoi Kuleleri (Fonksiyonlara Bir Örnek) I_voting_barHanoi Kuleleri (Fonksiyonlara Bir Örnek) Vote_rcap 
KAPORTACI (2)
Hanoi Kuleleri (Fonksiyonlara Bir Örnek) Vote_lcapHanoi Kuleleri (Fonksiyonlara Bir Örnek) I_voting_barHanoi Kuleleri (Fonksiyonlara Bir Örnek) Vote_rcap 
tolgakesan (2)
Hanoi Kuleleri (Fonksiyonlara Bir Örnek) Vote_lcapHanoi Kuleleri (Fonksiyonlara Bir Örnek) I_voting_barHanoi Kuleleri (Fonksiyonlara Bir Örnek) Vote_rcap 

 

 Hanoi Kuleleri (Fonksiyonlara Bir Örnek)

Aşağa gitmek 
YazarMesaj
OguzhanUyanik
Mareşal
Mareşal
OguzhanUyanik


Yengeç Mesaj Sayısı : 472
Kayıt tarihi : 31/08/09
Yaş : 32
Nerden : Konya
İş/Hobiler : Bilgisyar-Yazılım
Lakap : Nediz

Hanoi Kuleleri (Fonksiyonlara Bir Örnek) Empty
MesajKonu: Hanoi Kuleleri (Fonksiyonlara Bir Örnek)   Hanoi Kuleleri (Fonksiyonlara Bir Örnek) Icon_minitimeÇarş. Eyl. 09, 2009 2:36 pm

C programlama dilinde fonksiyonlara çok güzel bir örnek ve uygulama olan
Hanoi kulelerini mutlaka deneyin. Algoritma açısından çok önemli...

C de Hanoi Kuleleri

Bazı oyun sitelerinde ya da programlarda görmüşsünüzdür belki de. Hanoi kuleleri; 3 tane çubuk vardır, ortası delik, diskleri üst üste bir tanesinden diğerine aktarmanızı ister. Ancak 2 tane meşhur kuralımız vardır:
- 1.cisi, küçük diskin üzerine büyük disk gelemez.
- 2.cisi, her seferinde sadece bir disk hareket ettirilebilir ve tabi ki de en üstte bulunan disk hareket ettirilmek zorundadır; hatta bazı sitelerde bu oyuna 3. kural konulmuştur: Sınırlı hareket sayınız var diye.

Tabi biz bunun programını yapınca şaşırma şansımız kalmıyor. Keşke bunun yarışmasını yapsalar da biz de boyuna birinciliği programımız sayesinde alsak.

Programcılık aslında algoritma işidir. Yani bu Hanoi kulelerinin çalışma prensibi nedir, bunu bulmamız lazım. Yoksa programı yazamayız.
Kurallarımız çerçevesinde bir kağıt kalem alıp düşünüyoruz; nasıl yapalım diye ve şöyle bir fikir buluyoruz:

Diyelim ki elimizde n tane disk var ve bunlardan bu n-1 tane diski taşımak için yaptığınız işlem sayısı x ise, n diski taşımak için yapacağınız işlem sayısı 2x + 1 olacaktır.

Aslında bunun çıktığı nokta şurasıdır: n disk önce 1 den 2 ye taşınır yani x tane işlem yapılmış olur.Daha sonra n. disk 1 den 3. çubuğa taşınır Daha sonra 2. kuledeki n - 1 disk 3. kuleye taşınır (x tane işlem daha). Buradaki olay aslında tek disk içinde 8 disk içinde aynı ki hanoi kuleleri bildiğim kaderıyla en fazla 8 oluyor onu da 255 harekette yapabiliyoruz. Tabi siz bu kuleleri sınırlı hareket içinde çözmeye kalkarsanız birkaç gününüz gider bunu düşünüp bu kodu programladım


#include <stdio.h>
#include <conio.h>

void disk_mov(int value, int kule1, int kule3, int kule2);
/*disk hareketlerini çağıran fonksiyonumuzun varligini
programa haber veriyoruz bunuda sonundaki ; isaretinden anlıyoruz*/

main() /*asil fonksiyonumuz*/
{
int disks; /*disk diye bir degiskenimiz var türü integer tamsayi*/

printf("Lutfen Hanoi kulenizdeki tasinacak disk sayisini giriniz:";
scanf("%d", &disks); /*disk sayisini aldik*/

disk_mov(disks, 1, 3, 2); /*fonksiyonu çagirdik*/
printf("islem sona erdi kuleniz tamam tebrikler ";
getchar();getchar();getchar(); /*sonucun ekranda kalmasini sagliyorlar 3ünüde silip tekrar deneyin programi çalistirmayi*/
return 0;
}

void disk_mov(int value, int kule1, int kule3, int kule2) /*iste fonksiyonumuz*/
{
if (value == 1) {
{printf("%d'den-> %d'e diski tasiyiniz sonrasinda \n\n", kule1, kule3);
}

return;
}

disk_mov(value - 1, kule1, kule2, kule3);
printf("%d'den-> %d'e diski tasiyiniz sonrasinda\n\n", kule1, kule3);
disk_mov(value - 1, kule2, kule3, kule1);

}
Sayfa başına dön Aşağa gitmek
https://yazilimnet.yetkin-forum.com
 
Hanoi Kuleleri (Fonksiyonlara Bir Örnek)
Sayfa başına dön 
1 sayfadaki 1 sayfası
 Similar topics
-
» Örnek Dowload
» c ve assembly örnek
» Bir örnek parça çizimi
» Progress 4GL (Örnek Dosya Okuma)
» Tekli Operator Aşırı yüklemesine örnek

Bu forumun müsaadesi var:Bu forumdaki mesajlara cevap veremezsiniz
Yazilim Öğrenmenin Tek Adresi... :: Masaüstü Programlama :: C / C++-
Buraya geçin: