تور لحظه آخری
امروز : جمعه ، 9 آذر 1403    احادیث و روایات:  پیامبر اکرم (ص):به وسيله من هشدار داده شديد و به وسيله على عليه ‏السلام هدايت مى‏يابيد و به وسي...
سرگرمی سبک زندگی سینما و تلویزیون فرهنگ و هنر پزشکی و سلامت اجتماع و خانواده تصویری دین و اندیشه ورزش اقتصادی سیاسی حوادث علم و فناوری سایتهای دانلود گوناگون شرکت ها

تبلیغات

تبلیغات متنی

صرافی ارکی چنج

صرافی rkchange

سایبان ماشین

دزدگیر منزل

تشریفات روناک

اجاره سند در شیراز

قیمت فنس

armanekasbokar

armanetejarat

صندوق تضمین

Future Innovate Tech

پی جو مشاغل برتر شیراز

لوله بازکنی تهران

آراد برندینگ

خرید یخچال خارجی

موسسه خیریه

واردات از چین

حمية السكري النوع الثاني

ناب مووی

دانلود فیلم

بانک کتاب

دریافت دیه موتورسیکلت از بیمه

طراحی سایت تهران سایت

irspeedy

درج اگهی ویژه

تعمیرات مک بوک

دانلود فیلم هندی

قیمت فرش

درب فریم لس

زانوبند زاپیامکس

روغن بهران بردبار ۳۲۰

قیمت سرور اچ پی

خرید بلیط هواپیما

بلیط اتوبوس پایانه

قیمت سرور dl380 g10

تعمیرات پکیج کرج

لیست قیمت گوشی شیائومی

خرید فالوور

بهترین وکیل کرج

بهترین وکیل تهران

خرید اکانت تریدینگ ویو

خرید از چین

خرید از چین

تجهیزات کافی شاپ

محصولات فوراور

خرید سرور اچ پی ماهان شبکه

دوربین سیمکارتی چرخشی

همکاری آی نو و گزینه دو

کاشت ابرو طبیعی و‌ سریع

الک آزمایشگاهی

الک آزمایشگاهی

خرید سرور مجازی

قیمت بالابر هیدرولیکی

قیمت بالابر هیدرولیکی

قیمت بالابر هیدرولیکی

لوله و اتصالات آذین

قرص گلوریا

نمایندگی دوو در کرج

خرید نهال سیب

وکیل ایرانی در استانبول

وکیل ایرانی در استانبول

وکیل ایرانی در استانبول

رفع تاری و تشخیص پلاک

پرگابالین

 






آمار وبسایت

 تعداد کل بازدیدها : 1835267932




هواشناسی

نرخ طلا سکه و  ارز

قیمت خودرو

فال حافظ

تعبیر خواب

فال انبیاء

متن قرآن



اضافه به علاقمنديها ارسال اين مطلب به دوستان آرشيو تمام مطالب
archive  refresh

مسئله n وزیر


واضح آرشیو وب فارسی:سایت ریسک: View Full Version : مسئله n وزیر mo.mo22-05-2009, 12:39 PMسلام دوستان. من دنبال الگریتم مسئله n وزیر میگردم. چون به نظر من پیچیده میاد دنبال یه توضیح ویه کدساده از این برنامه میگردم تا بتونم خودم بنویسمش. در ضمن باید به روش عقبگرد هم باشه. فاطـمه22-05-2009, 04:32 PMسلام این کد برای 8وزیره http://read.pudn.com/downloads74/sourcecode/math/265429/BackTrack/Backtrack.cpp__.htm و این: !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! فاطـمه22-05-2009, 04:37 PMاین سایتم جالبه: http://www.codeproject.com/KB/cpp/8Queen_Problem.aspx mo.mo23-05-2009, 11:25 AMاز کمکتون ممنون. ولی میشه این کد رو با vcpp هم قرار بدین. farshidshd24-05-2009, 09:21 PMسلام این کد وزیر ها رو سطر به سطر جا به جا میکنه واسه اینکه بخوایم ستون به ستون تست کنه چی کار باد کنیم؟؟؟ فاطـمه25-05-2009, 11:50 AMسلام این کد وزیر ها رو سطر به سطر جا به جا میکنه واسه اینکه بخوایم ستون به ستون تست کنه چی کار باد کنیم؟؟؟ سلام منظورتون چیه؟ ما تو مسئله nوزیر توی هر سطر تنها می تونیم یه وزیر داشته باشیم پس فقط اونا رو تو ستونا جابه جا می کنیم:20: mo.mo25-05-2009, 11:59 AMکدی که شما نوشتین توش با کلاس ها کار شده ولی من دنبال یه کد با روش عقب گرد میگردم که هم ساده تر باشه و هم منم بتونم یه چیزلیی لزش بفهمم. ممنون. farshidshd25-05-2009, 09:10 PMسلام منظورتون چیه؟ ما تو مسئله nوزیر توی هر سطر تنها می تونیم یه وزیر داشته باشیم پس فقط اونا رو تو ستونا جابه جا می کنیم:20: وزیر ها سطر به سطر جا به جا میشن من میخوام ستون به ستون تست کنه و جابه جا کنه یعنی به جای اینکه توی سطر یه وزیر داشته باشیم توی ستون یه وزیر باشه فقط فاطـمه27-05-2009, 10:58 AMسلام اینم یکم ساده تر !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! farshidshd27-05-2009, 11:12 AM#include <stdio.h> intis_safe(int rows[8], int x, int y) { int i; for (i=1; i <= y; ++i) { if (rows[y-i] == x || rows[y-i] == x-i || rows[y-i] == x+i) return 0; } return 1;} voidputboard(int rows[8]) { static int s = 0; int x, y; printf(" Solution #%d: --------------------------------- ", ++s); for (y=0; y < 8; ++y) { for (x=0; x < 8; ++x) printf(x == rows[y] ? "| Q " : "| "); printf("| --------------------------------- "); }} voideight_queens_helper(int rows[8], int y){ int x; for (x=0; x < 8; ++x) { if (is_safe(rows, x, y)) { rows[y] = x; if (y == 7) putboard(rows); else eight_queens_helper(rows, y+1); } }} intmain(){ int rows[8]; eight_queens_helper(rows, 0); return 0;} این چیه فاطمه؟؟×!! فاطـمه27-05-2009, 11:33 AMچرا این جوری شده؟! !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! farshidshd28-05-2009, 11:34 AMاین الان ستونی جا به جا میکنه؟؟؟ این کد رو خودت دادی بهم اجراش کن متوجه میشی که سطری جا به جا میکنه من میخوام همین ستونی جابه جا بشه یعنی تو هر ستون یه وزیر که همدیگر رو گارد نکنه... !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! فاطـمه31-05-2009, 07:10 PMخب نهایتا جای I, j عوض می شه تو آرایه چه لزومی داره این کار رو بکنید؟ farshidshd31-05-2009, 08:29 PMخب نهایتا جای I, j عوض می شه تو آرایه چه لزومی داره این کار رو بکنید؟ استاد خواسته بود ممنونم درستش کردم محمد پاكدل19-06-2009, 05:09 PMin proje 8 vazer baray fatemeh and farshid //gives a start home adress & cheks if 8 vazir could be placed by that start home. #include<iostream.h> #include<conio.h> void place(int,int,int [][8],int [][8]); void print(int,int,int [][8],int [][8]); int main( ) { clrscr( ); int const k=8; int p[k][k]; int placed[k][k]; int a,b; for(a=1;a<=8;a++) {for(b=1;b<=8;b++) {p[a][b]=1; placed[a][b]=0; } } for(a=1;a<=8;a++) { for(b=1;b<=8;b++) { place(a,b,p,placed); print(a,b,p,placed); } } getch( ); return(0); } void place(int i,int j,int p[][8],int placed[][8]) { placed[i][j]=1; int a,b,k; for(k=1;k<=8;k++) { p[i][k]=0; p[k][j]=0; if(k+i<=8 && k+j<=8) {p[k+i][k+j]=0;} if(k+i<=8 && j-k>=1) {p[k+i][j-k]=0;} if(i-k>=1 && k+j<=8) {p[i-k][k+j]=0;} if(i-k>=1 && j-k>=1) {p[i-k][j-k]=0;} } for(a=1;a<=8;a++) { for(b=1;b<=8;b++) { if(p[a][b]==1) place(a,b,p,placed); } } } void print(int i,int j,int p[][8],int placed[][8]) { int a,b; int c=0; for(a=1;a<=8;a++) {for(b=1;b<=8;b++) {if(placed[a][b]==0) cout<<"_"; if(placed[a][b]==1) { c++; cout<<"v"; } }cout<<" "; } if(c!=8)cout<<"could not place all 8 vazir" <<"for the start home("<<i<<","<<j <<")!press any key to continue: "; if(c==8) {cout<<"****all 8 vazir placed with starthome("<<i<<"," <<j<<")!**** "; } for(a=1;a<=8;a++) { for(b=1;b<=8;b++) { p[a][b]=1; placed[a][b]=0; } } getch( ); } محمد پاكدل19-06-2009, 05:14 PMage on moshkel dareh pas az in poroje estefadeh koned #include <iostream.h> #include <conio.h> #include <_defs.h> int board[8][8]={0}; int value[8][8]={ {2,3,4,4,4,4,3,2}, {3,4,6,6,6,6,4,3}, {4,6,8,8,8,8,6,4}, {4,6,8,8,8,8,6,4}, {4,6,8,8,8,8,6,4}, {4,6,8,8,8,8,6,4}, {3,4,6,6,6,6,4,3}, {2,3,4,4,4,4,3,2}}; int row[8]= {-2,-2,-1,1,2,2,1,-1}; int col[]={-1 , 1 , 2 , 2 , 1 , -1 , -2 , -2 }; int satr,soton,count=0,min=8; //************************************************** *** void getfirstvalue(); void print(); void changevalue(); int move(); //************************************************** *** int main() { getfirstvalue(); ++count; print(); while(move()) { getch(); ++count; print(); } getch(); return 0; } //************************************************** *** void getfirstvalue() { cout<<"enter the satr and soton for start : "; do{ cout<<"enter satr : "; cin>>satr; }while(satr > 8 || satr < 1); do{ cout<<"enter soton : "; cin>>soton; }while(soton > 8 || soton < 1); board[(satr-1)][(soton-1)]=1; value[satr-1][soton-1]=0; changevalue(); } //************************************************** *** void print() { int i,j; cout<<"satr : "<<satr<<" soton"<<soton<<" "; for(i=0;i<8;i++){ for(j=0;j<8;j++){ cout<<" "<<board[i][j]<<" "; } cout<<" "; } cout<<"------------------------------------------------- "; for(i=0;i<8;i++){ for(j=0;j<8;j++) cout<<" "<<value[i][j]<<" "; cout<<" "; } } //************************************************** *** void changevalue() { int number,x[8],y[8]; for(number = 0; number < 8 ; number++){ x[number] = satr + row[number]; y[number] = soton + col[number]; if(x[number] > 0 && x[number] <= 8 && y[number] > 0 && y[number] <= 8 && board[(x[number]-1)][(y[number]-1)] != 1 ) value[x[number]-1][y[number]-1]--; } } //************************************************** *** int move() { int i,x[8],y[8],z,t; min=8; for(i=0;i<8;i++){ if(row[i]<-2) row[i]+=1; x[i]=satr+row[i]; y[i]=soton+col[i]; if( x[i] > 0 && x[i] <= 8 && y[i] > 0 && y[i] <= 8 && board[x[i]-1][y[i]-1] != 1) if(value[x[i]-1][y[i]-1] <=min){ min=value[x[i]-1][y[i]-1]; z=x[i],t=y[i]; } } if(min > 7 || min < -1) return 0; if(z > 8 || z <= 0 || t > 8 || t <= 0 || board[z-1][t-1]) return 0; satr=z; soton=t; board[z-1][t-1]=1; value[z-1][t-1]=0; changevalue(); return 1; } mehazirak22-06-2009, 03:33 PMسلام من تابع اون رو توی c# نوشتم ب !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! bozgoord22-11-2009, 11:23 AMکدوم یکی ابتدایی تره و میشه به Nوزیر تبدیلش کرد سایت ما را در گوگل محبوب کنید با کلیک روی دکمه ای که در سمت چپ این منو با عنوان +1 قرار داده شده شما به این سایت مهر تأیید میزنید و به دوستانتان در صفحه جستجوی گوگل دیدن این سایت را پیشنهاد میکنید که این امر خود باعث افزایش رتبه سایت در گوگل میشود




این صفحه را در گوگل محبوب کنید

[ارسال شده از: سایت ریسک]
[مشاهده در: www.ri3k.eu]
[تعداد بازديد از اين مطلب: 2120]

bt

اضافه شدن مطلب/حذف مطلب




-


گوناگون

پربازدیدترینها
طراحی وب>


صفحه اول | تمام مطالب | RSS | ارتباط با ما
1390© تمامی حقوق این سایت متعلق به سایت واضح می باشد.
این سایت در ستاد ساماندهی وزارت فرهنگ و ارشاد اسلامی ثبت شده است و پیرو قوانین جمهوری اسلامی ایران می باشد. لطفا در صورت برخورد با مطالب و صفحات خلاف قوانین در سایت آن را به ما اطلاع دهید
پایگاه خبری واضح کاری از شرکت طراحی سایت اینتن