Hosgeldiniz
Ben Kimim?

C.V.
Bilgi paylaþtýkça çoðalýr.Ýþte ispatý,
bende var bir elma, sende var bir elma, gel elmalarý deðiþelim; bende var bir elma, sende var bir elma.

Þimdi bende var bir bilgi, sende de var bir bilgi, gel bilgileri deðiþelim; bende oldu iki bilgi, sende oldu iki bilgi.Nasýl güzel deðilmi?...

Ben bilgilerimi ortaya koyuyorum benimle bilgi zengini olmak istermisiniz?..



Kategoriler


Site nasýl olmuþ?
Daha iyi olabilirdi
Ýdare eder
Güzel
Süper
Süper ötesi...
     
Anket
Santrancta 8 tane veziri birbirini yemeden dizme
9 Yil öncesi . . .
8 vezir santranc C kodu dosya yazma

Santranç oyunu gerçekten hayatı yansıtan ve gerçekten güzel bir oyundur. Bu oyunda vezir denen bir taş vardır. Bu taş hem Kale taşının yaptıklarını yapabiliyor hemde Fil taşının yaptıklarını yapabiliyor. Bu özellikleriyle oyundaki en güçlü taş.

Şimdi oyunu unutalım. 8x8 lik santranç tahtasında 8 adet vezir taşını öyle bir yerleştirelim ki, bu vezirler birbirini yemesinler. Biraz karışık ve gıcık birşey.

Bu işi yapan programı yapmak için algoritmeyı iyi kurmak gerekiyor. Neyse aşağıda bu işi yapan program mevcut. Bundan önceki versiyonu tüm işlemleri RAM de yapıp, sonucu ekrana yazdırıyordu. Aşağıdaki kod ise sonucu dosyaya yazıyor. Kod C programlama diliyle yazıldı. Sözü edilen kod;
#include<stdio.h>
int sonuc=0;
void ciz(FILE*fin,int *satir)
{
int n,m;
fprintf(fin,"\n\n%d.Sonuc \n",++sonuc);
for(n=0;n<8;n++)
{
for(m=1;m<9;m++)
{
if(satir[n]==m)
fprintf(fin,"X");
else
fprintf(fin,"-");
}
fprintf(fin,"\n");
}
}
int satirkontrol(int satir[], int sutun)
{
int n;
for(n=1;sutun-n>=0;n++)
{
if (satir[sutun-n]==satir[sutun] || satir[sutun-n]-n==satir[sutun] || satir[sutun-n]+n==satir[sutun])
return 1;
}
return 0;
}
void yerles(int satir[], int m, FILE*fin)
{
int n;
for(n=1;n<9;n++)
{
satir[m]=n;
if(satirkontrol(satir, m)==0)
{
if(m==7)
{
ciz(fin,satir);
return;
}
yerles(satir, m+1, fin);
}
}
}
int main()
{
int satir[8]={0,0,0,0,0,0,0,0};

FILE*fin=fopen("output.txt","w");
yerles(satir, 0,fin);
return 0;
}

                    Toplam Puan:26

YORUMLAR Yorum Yaz