ورود

View Full Version : سوال: تفسير اين سورس كد



Aminch.pc
جمعه 17 دی 1389, 16:54 عصر
سلام.
اگه ممكنه كد زير رو برام توضيح بدين




#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
#include<dos.h>
int x[10],sn=0,sp=22,counter;
int bqueens(int k,int i)
{
int j;
for(j=1;j<k;j++)
{
if(x[j]==i||j-x[j]==k-i||j+x[j]==k+i)
return 0;
}
return 1;
}
void btqueens(int k,int n){

int i,j;
for(i=1;i<=n;i++)
if(bqueens(k,i))
{
x[k]=i;
if(k==n){
if(sn++<sp)
{
printf("\n % 3d Answer is: ",++counter);
for(j=1;j<n+1;j++)
printf(" %d ",x[j]);
}
else
{
printf("\nPress any key to continue . . .");
getch();
sn=0;
sp+=2;
}
}
else
btqueens(k+1,n);
}
}
void main(){
int n;
clrscr();
printf("Please enter N queens: ");
scanf("%d",&n);
btqueens(1,n);
getch();
}

Gold_cpp
جمعه 17 دی 1389, 22:12 عصر
سلام.
اگه ممكنه كد زير رو برام توضيح بدين

سلام
چی چیز رو از این کد متوجه نمی شوید ؟‌

saber187518
شنبه 18 دی 1389, 00:47 صبح
با سلام
دوست عزیز این سورس کدی که قرار دادی در واقع مسئله 8 وزیر رو حل می کنه.
اما اینکه کجای برنامه رو متوجه نمی شی رو اگه بگی برات توضیح میدیم.
البته اصل مسئله 8 وزیر اینه که ما چطور میتونیم ( به چند روش ) 8 تا وزیر رو توی یک صفحه شطرنج قرار بدیم که این 8 وزیر
هیچ کدوم اون بقیه رو تهدید نکنه.
البته بهتر توضیح بدم که برنامه شما مسئله n وزیر رو حل میکنه.
ببخشید ساعت 1:13 بامداد از این بهتر نمیشه توضیح داد.
یا علی...

Aminch.pc
شنبه 18 دی 1389, 14:10 عصر
ممنون از راهنماييهاتون

مي دونم برنامه n وزيره ولي برنامه 8 وزير 92 حالت ممكن اتفاق مي افته ولي وقتي تو اين برنامه عدد 8 رو به عنوان ورودي مي دي 89 حالتو نشون مي ده.

گذشته از مطلب فوق اعداد خروجي مثلاً به صورت زير هست
4 2 7 3 6 8 5 1

منظور از اين اعداد چيست و چطوري توي صفحات شطرنج قرار مي گيره؟

reddown
یک شنبه 19 دی 1389, 10:53 صبح
سلام به این قسمت برو

http://www.floral-directory.com/flower.gif

saber187518
دوشنبه 20 دی 1389, 03:25 صبح
یلام دوست عزیز عدد اول منظور سطر اول از صفحه شطرنج هست. و مقدارش هم ستون مورد نظر هست. ( اگه اشتباه نکنم و برعکس نباشه).
در مورد 92 حالت هم بله درسته من برنامه شو به زبان پاسکال دارم اگه خواستی بگو برات بذارم و تبدیلش کن به C++ که این قسمتش زحمتش با خودته.
یا علی...