ورود
ثبت نام
صفحه اصلی
اخبار بازی
بررسی بازی
حقایق بازیها
داستان بازی
بررسی سخت افزار
برنامههای ویدیویی
انجمنها
نوشتههای جدید
پرمخاطبها
جستجوی انجمنها
جدیدترینها
ارسالهای جدید
آخرین فعالیتها
کاربران
کاربران آنلاین
جستجو
جستجو فقط عنوان ها
توسط:
جستجو فقط عنوان ها
توسط:
ورود
ثبت نام
جستجو
جستجو فقط عنوان ها
توسط:
جستجو فقط عنوان ها
توسط:
Menu
Install the app
Install
فراخوان عضویت در تحریریه بازیسنتر | برای ثبت درخواست کلیک کنید
صفحه اصلی
انجمنها
ساخت بازی
آموزش ساخت و توسعه بازی
آموزش زبان ++C و #C
ارسال پاسخ
JavaScript is disabled. For a better experience, please enable JavaScript in your browser before proceeding.
You are using an out of date browser. It may not display this or other websites correctly.
You should upgrade or use an
alternative browser
.
متن گفتگو
<blockquote data-quote="Mohammad" data-source="post: 50913" data-attributes="member: 12"><p>آقا من اولین بازیم رو به عنوان آخرین تمرینی که باید تو کلاس برنامه نویسی تحویل بدیم نوشتم!</p><p>بازی سنگین و پیچیده XO :cheesygri یا همون Tic Tac Toe</p><p></p><p>یکی دو روز مخ سوزوندم تا تکمیل شد تازه اونم Level ساده! ( کامپیوتر کاملاً رندوم خونه ش رو انتخاب میکنه و بسادگی میتونید برنده شید )</p><p>اگه intermediate , advance ش هم بنویسیم 40% بیشتر نمره میگیریم! این 2 هفته ای که تا امتحان مونده سعی میکنم اینم بنویسم ... باید بیشتر رو هوش مصنوعیش کار کنم <img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" class="smilie smilie--sprite smilie--sprite80" alt=":)" title="1 :)" loading="lazy" data-shortname=":)" /></p><p></p><p>تست کنید اگه اشکالی چیزی داره بگید ...</p><p>system requirement :</p><p>any system !</p><p>فقط حواستون باشه برای اجرا باید آخرین نسخه Daemon tools , sfnightmare رو نصب داشته باشید ... کابل کشی هم لازم داره به این صورت که بعد از اتمامه بازی کابل برق رو میکشید <img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" class="smilie smilie--sprite smilie--sprite80" alt=":)" title="1 :)" loading="lazy" data-shortname=":)" /></p><p></p><p>Source :</p><p style="text-align: left">[SPOILER=]// X O Game</p> <p style="text-align: left"></p> <p style="text-align: left">#include <iostream.h></p> <p style="text-align: left">#include <conio.h></p> <p style="text-align: left">#include <stdlib.h></p> <p style="text-align: left">#include <iomanip.h></p> <p style="text-align: left">#include <time.h></p> <p style="text-align: left">#include <string></p> <p style="text-align: left"></p> <p style="text-align: left">int main(void)</p> <p style="text-align: left">{</p> <p style="text-align: left"> int row,colomn,n,r,s,h,p,q,t,m;</p> <p style="text-align: left"> char a[3][3],choice,answer;</p> <p style="text-align: left"> p=0; q=0; t=0; // p: your wins, q: your loses, t: ties</p> <p style="text-align: left"></p> <p style="text-align: left"> cout << "\t\t 1 2 3\n\n";</p> <p style="text-align: left"> cout << "\t\t\t| " << "|" << endl;</p> <p style="text-align: left"> cout << "\t\t 1 | " << "|" << endl;</p> <p style="text-align: left"> cout << "\t\t ---|---|---" << endl;</p> <p style="text-align: left"> cout << "\t\t 2 | " << "|" << endl;</p> <p style="text-align: left"> cout << "\t\t ---|---|---" << endl;</p> <p style="text-align: left"> cout << "\t\t 3 | " << "|" << endl;</p> <p style="text-align: left"> cout << "\t\t\t| " << "|\n\n" << endl;</p> <p style="text-align: left"></p> <p style="text-align: left"> cout << "Welcome to the game of TIC-TAC-TOE!\n\n";</p> <p style="text-align: left"> cout << "Please enter your first name:\n\n";</p> <p style="text-align: left"> string name;</p> <p style="text-align: left"> cin >> name;</p> <p style="text-align: left"> do</p> <p style="text-align: left"> {</p> <p style="text-align: left"> cout<<"\nWell "<<name<<", let's see who has the first move, me or you!\n";</p> <p style="text-align: left"> cout<<"Choose! Head or Tail ?(H/T)\n";</p> <p style="text-align: left"> cin >> choice;</p> <p style="text-align: left"> srand(time(NULL));</p> <p style="text-align: left"> h = rand()%2; // It produce 0 or 1. if it's 0 user has the</p> <p style="text-align: left"> if (h == 0) // first move, else computer has it.</p> <p style="text-align: left"> cout << "\nYou are first! " << endl;</p> <p style="text-align: left"> else</p> <p style="text-align: left"> cout << "\nI'm first, You're next!" << endl;</p> <p style="text-align: left"> bool keep = true;</p> <p style="text-align: left"> for (int i=0; i<3; i++)</p> <p style="text-align: left"> for (int j=0; j<3; j++)</p> <p style="text-align: left"> a<em>[j] = '\0'; // all the matrix cells are blank now.</em></p> <p style="text-align: left"><em> n=0; </em></p> <p style="text-align: left"><em> do</em></p> <p style="text-align: left"><em> {</em></p> <p style="text-align: left"><em> if (h == 0)</em></p> <p style="text-align: left"><em> {</em></p> <p style="text-align: left"><em> cout << "\nIt's your turn " << name <<"!" << endl;</em></p> <p style="text-align: left"><em> do</em></p> <p style="text-align: left"><em> {</em></p> <p style="text-align: left"><em> cout<<"\nPlease enter the number of the row you wish to place in:"<<endl;</em></p> <p style="text-align: left"><em> cin >> row;</em></p> <p style="text-align: left"><em> if (row > 3 || row < 1)</em></p> <p style="text-align: left"><em> cout<<"\nCaution! you must enter only 1 or 2 or 3 for the row\n";</em></p> <p style="text-align: left"><em> }while(row > 3 || row < 1);</em></p> <p style="text-align: left"><em> do</em></p> <p style="text-align: left"><em> {</em></p> <p style="text-align: left"><em> cout<<"Please enter the number of the colomn you wish to place in:"<<endl;</em></p> <p style="text-align: left"><em> cin >> colomn;</em></p> <p style="text-align: left"><em> if (colomn > 3 || colomn < 1)</em></p> <p style="text-align: left"><em> cout<<"\nCaution! you must enter only 1 or 2 or 3 for the colomn\n";</em></p> <p style="text-align: left"><em> }while (colomn > 3 || colomn < 1);</em></p> <p style="text-align: left"><em> row = row - 1; // because in c++ arrays start from 0 not 1.</em></p> <p style="text-align: left"><em> colomn = colomn - 1;</em></p> <p style="text-align: left"><em> if (n>0 && a[row][colomn] != '\0')</em></p> <p style="text-align: left"><em> {</em></p> <p style="text-align: left"><em> do // checks that the cell is blank or not.</em></p> <p style="text-align: left"><em> {</em></p> <p style="text-align: left"><em> cout << "\nThis place is full ! select another\n" << endl;</em></p> <p style="text-align: left"><em> cout<<"Please enter the number of the row you wish to place in:" << endl;</em></p> <p style="text-align: left"><em> cin >> row;</em></p> <p style="text-align: left"><em> cout<<"Please enter the number of the colomn you wish to place in:"<<endl;</em></p> <p style="text-align: left"><em> cin >> colomn;</em></p> <p style="text-align: left"><em> row = row - 1;</em></p> <p style="text-align: left"><em> colomn = colomn - 1;</em></p> <p style="text-align: left"><em> }while(a[row][colomn] != '\0');</em></p> <p style="text-align: left"><em> }</em></p> <p style="text-align: left"><em> a[row][colomn] = 88; // 88 is the number that produce X as a char.</em></p> <p style="text-align: left"><em></em></p> <p style="text-align: left"><em> cout<<"\t\t 1 2 3\n\n";</em></p> <p style="text-align: left"><em> cout<<"\t\t\t| " << "|" << endl;</em></p> <p style="text-align: left"><em> cout<<"\t 1 "<<a[0][0]<<" | "<<a[0][1]<<" | "<<a[0][2]<<endl;</em></p> <p style="text-align: left"><em> cout<<"\t\t ---|---|---" << endl;</em></p> <p style="text-align: left"><em> cout<<"\t 2 "<<a[1][0]<<" | "<<a[1][1]<<" | "<<a[1][2]<<endl;</em></p> <p style="text-align: left"><em> cout<<"\t\t ---|---|---" << endl;</em></p> <p style="text-align: left"><em> cout<<"\t 3 "<<a[2][0]<<" | "<<a[2][1]<<" | "<<a[2][2]<<endl;</em></p> <p style="text-align: left"><em> cout<<"\t\t\t| " << "|\n" << endl;</em></p> <p style="text-align: left"><em></em></p> <p style="text-align: left"><em> if (a[0][0]==88 && a[0][1]==88 && a[0][2]==88) keep = false;</em></p> <p style="text-align: left"><em> if (a[1][0]==88 && a[1][1]==88 && a[1][2]==88) keep = false;</em></p> <p style="text-align: left"><em> if (a[2][0]==88 && a[2][1]==88 && a[2][2]==88) keep = false;</em></p> <p style="text-align: left"><em> if (a[0][0]==88 && a[1][0]==88 && a[2][0]==88) keep = false;</em></p> <p style="text-align: left"><em> if (a[0][1]==88 && a[1][1]==88 && a[2][1]==88) keep = false;</em></p> <p style="text-align: left"><em> if (a[0][2]==88 && a[1][2]==88 && a[2][2]==88) keep = false;</em></p> <p style="text-align: left"><em> if (a[0][0]==88 && a[1][1]==88 && a[2][2]==88) keep = false;</em></p> <p style="text-align: left"><em> if (a[0][2]==88 && a[1][1]==88 && a[2][0]==88) keep = false;</em></p> <p style="text-align: left"><em> }</em></p> <p style="text-align: left"><em> m=0;</em></p> <p style="text-align: left"><em> for (int i=0; i<3; i++)</em></p> <p style="text-align: left"><em> for (int j=0; j<3; j++)</em></p> <p style="text-align: left"><em> if (a<em>[j] != '\0')</em></em></p> <p style="text-align: left"><em><em> m++;</em></em></p> <p style="text-align: left"><em><em> if (m == 9) // if m become 9 it means that all 9 cells are full</em></em></p> <p style="text-align: left"><em><em> keep = false; // thus the game is tie and program should go out</em></em></p> <p style="text-align: left"><em><em> // of the loop by making keep false.</em></em></p> <p style="text-align: left"><em><em> if (keep == true)</em></em></p> <p style="text-align: left"><em><em> {</em></em></p> <p style="text-align: left"><em><em> do</em></em></p> <p style="text-align: left"><em><em> {</em></em></p> <p style="text-align: left"><em><em> r = rand()%3; // will produce 0 or 1 or 2.</em></em></p> <p style="text-align: left"><em><em> s = rand()%3;</em></em></p> <p style="text-align: left"><em><em> }while(a[r]<s> != '\0'); // checks that the cell is blank or not.</s></em></em></p> <p style="text-align: left"><em><em><s> a[r]<s> = 79; // 79 is the number that produce O as a char.</s></s></em></em></p> <p style="text-align: left"><em><em><s><s></s></s></em></em></p> <p style="text-align: left"><em><em><s><s> cout << "Press any key for the computer's move \n\n";</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> getch();</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> cout<<"The computer placed an O in location "<<(r+1)<<","<<(s+1)<< endl;</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> cout<<"\n\t\t 1 2 3\n\n";</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> cout<<"\t\t\t| " << "|" << endl;</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> cout<<"\t 1 "<<a[0][0]<<" | "<<a[0][1]<<" | "<<a[0][2]<<endl;</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> cout<<"\t\t ---|---|---" << endl;</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> cout<<"\t 2 "<<a[1][0]<<" | "<<a[1][1]<<" | "<<a[1][2]<<endl;</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> cout<<"\t\t ---|---|---" << endl;</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> cout<<"\t 3 "<<a[2][0]<<" | "<<a[2][1]<<" | "<<a[2][2]<<endl;</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> cout<<"\t\t\t| " << "|\n" << endl;</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> }</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> if (a[0][0]==79 && a[0][1]==79 && a[0][2]==79) keep = false;</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> if (a[1][0]==79 && a[1][1]==79 && a[1][2]==79) keep = false;</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> if (a[2][0]==79 && a[2][1]==79 && a[2][2]==79) keep = false;</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> if (a[0][0]==79 && a[1][0]==79 && a[2][0]==79) keep = false;</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> if (a[0][1]==79 && a[1][1]==79 && a[2][1]==79) keep = false;</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> if (a[0][2]==79 && a[1][2]==79 && a[2][2]==79) keep = false;</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> if (a[0][0]==79 && a[1][1]==79 && a[2][2]==79) keep = false;</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> if (a[0][2]==79 && a[1][1]==79 && a[2][0]==79) keep = false;</s></s></em></em></p> <p style="text-align: left"><em><em><s><s></s></s></em></em></p> <p style="text-align: left"><em><em><s><s> h = 0;</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> n++;</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> }while(n < 5 && keep);</s></s></em></em></p> <p style="text-align: left"><em><em><s><s></s></s></em></em></p> <p style="text-align: left"><em><em><s><s> cout << "finish! last step is :" << endl;</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> cout << "\t\t\t| " << "|" << endl;</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> cout << "\t\t "<<a[0][0]<<" | "<<a[0][1]<<" | "<<a[0][2]<<endl;</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> cout << "\t\t ---|---|---" << endl;</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> cout << "\t\t "<<a[1][0]<<" | "<<a[1][1]<<" | "<<a[1][2]<<endl;</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> cout << "\t\t ---|---|---" << endl;</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> cout << "\t\t "<<a[2][0]<<" | "<<a[2][1]<<" | "<<a[2][2]<<endl;</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> cout << "\t\t\t| " << "|" << endl;</s></s></em></em></p> <p style="text-align: left"><em><em><s><s></s></s></em></em></p> <p style="text-align: left"><em><em><s><s> if (a[0][0]==88 && a[0][1]==88 && a[0][2]==88)</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> {cout << "you win !" << endl; p++;}</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> else if (a[1][0]==88 && a[1][1]==88 && a[1][2]==88)</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> {cout << "you win !" << endl; p++;}</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> else if (a[2][0]==88 && a[2][1]==88 && a[2][2]==88)</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> {cout << "you win !" << endl; p++;}</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> else if (a[0][0]==88 && a[1][0]==88 && a[2][0]==88)</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> {cout << "you win !" << endl; p++;}</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> else if (a[0][1]==88 && a[1][1]==88 && a[2][1]==88)</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> {cout << "you win !" << endl; p++;}</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> else if (a[0][2]==88 && a[1][2]==88 && a[2][2]==88)</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> {cout << "you win !" << endl; p++;}</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> else if (a[0][0]==88 && a[1][1]==88 && a[2][2]==88)</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> {cout << "you win !" << endl; p++;}</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> else if (a[0][2]==88 && a[1][1]==88 && a[2][0]==88)</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> {cout << "you win !" << endl; p++;}</s></s></em></em></p> <p style="text-align: left"><em><em><s><s></s></s></em></em></p> <p style="text-align: left"><em><em><s><s> else if (a[0][0]==79 && a[0][1]==79 && a[0][2]==79)</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> {cout << "you lose !" << endl; q++;}</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> else if (a[1][0]==79 && a[1][1]==79 && a[1][2]==79)</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> {cout << "you lose !" << endl; q++;}</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> else if (a[2][0]==79 && a[2][1]==79 && a[2][2]==79)</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> {cout << "you lose !" << endl; q++;}</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> else if (a[0][0]==79 && a[1][0]==79 && a[2][0]==79)</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> {cout << "you lose !" << endl; q++;}</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> else if (a[0][1]==79 && a[1][1]==79 && a[2][1]==79)</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> {cout << "you lose !" << endl; q++;}</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> else if (a[0][2]==79 && a[1][2]==79 && a[2][2]==79)</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> {cout << "you lose !" << endl; q++;}</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> else if (a[0][0]==79 && a[1][1]==79 && a[2][2]==79)</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> {cout << "you lose !" << endl; q++;}</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> else if (a[0][2]==79 && a[1][1]==79 && a[2][0]==79)</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> {cout << "you lose !" << endl; q++;}</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> else</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> {cout << "tie!" << endl; t++;}</s></s></em></em></p> <p style="text-align: left"><em><em><s><s></s></s></em></em></p> <p style="text-align: left"><em><em><s><s> if (p == 1)</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> cout <<"\nUp to this point you have won:\t\t" << p << " game" << endl;</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> else cout <<"\nUp to this point you have won:\t\t" << p << " games" << endl;</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> if ( q == 1)</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> cout <<"The computer has won:\t\t\t" << q << " game" << endl;</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> else cout <<"The computer has won:\t\t\t" << q << " games" << endl;</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> if ( t == 1)</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> cout <<"And there have been:\t\t\t" << t << " tie\n" << endl;</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> else cout <<"And there have been:\t\t\t" << t << " ties\n" << endl;</s></s></em></em></p> <p style="text-align: left"><em><em><s><s></s></s></em></em></p> <p style="text-align: left"><em><em><s><s> cout << "Do you want to play again?(Y/N)" << endl;</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> cin >> answer;</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> }while (answer == 'y' || answer == 'Y');</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> getch();</s></s></em></em></p> <p style="text-align: left"><em><em><s><s> return 0;</s></s></em></em></p> <p style="text-align: left"><em><em><s><s>}</s></s></em></em></p> <p style="text-align: left"><em><em><s><s></s></s></em></em>[/SPOILER]</p><p><em><em><s><s></s></s></em></em></p><p><em><em><s><s></s></s></em></em></p><p><em><em><s><s>از اونجا که من مبتدی هستم! یه چیزی حدود 200 تا If , cout داره <img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" class="smilie smilie--sprite smilie--sprite80" alt=":)" title="1 :)" loading="lazy" data-shortname=":)" /> فکر کنم خیلی کوتاه تر از اینم میشد نوشت.</s></s></em></em></p><p><em><em><s><s></s></s></em></em></p><p><em><em><s><s>فقط امیدوارم بچه های کلاس اینجا رو پیدا نکنن و سورسه من لو نره <img src="/styles/default/xenforo/smilies/meep/65.gif" class="smilie" loading="lazy" alt=":-"" title="65 :-"" data-shortname=":-"" /></s></s></em></em></p><p><em><em><s><s></s></s></em></em></p><p><em><em><s><s>نمایی از بازی!! :</s></s></em></em></p><p><em><em><s><s></s></s></em></em></p><p><em><em><s><s><a href="http://suprfile.com/get.php?id=1a01q05"><img src="http://suprfile.com/src/2/1a01q05/XO.JPG" alt="" class="fr-fic fr-dii fr-draggable " style="" /></a>]</s></s></em></em></p><p><em><em><s><s></s></s></em></em></p><p><em><em><s><s>خود بازی و سورسش :</s></s></em></em></p></blockquote><p></p>
[QUOTE="Mohammad, post: 50913, member: 12"] آقا من اولین بازیم رو به عنوان آخرین تمرینی که باید تو کلاس برنامه نویسی تحویل بدیم نوشتم! بازی سنگین و پیچیده XO :cheesygri یا همون Tic Tac Toe یکی دو روز مخ سوزوندم تا تکمیل شد تازه اونم Level ساده! ( کامپیوتر کاملاً رندوم خونه ش رو انتخاب میکنه و بسادگی میتونید برنده شید ) اگه intermediate , advance ش هم بنویسیم 40% بیشتر نمره میگیریم! این 2 هفته ای که تا امتحان مونده سعی میکنم اینم بنویسم ... باید بیشتر رو هوش مصنوعیش کار کنم :) تست کنید اگه اشکالی چیزی داره بگید ... system requirement : any system ! فقط حواستون باشه برای اجرا باید آخرین نسخه Daemon tools , sfnightmare رو نصب داشته باشید ... کابل کشی هم لازم داره به این صورت که بعد از اتمامه بازی کابل برق رو میکشید :) Source : [LEFT][SPOILER=]// X O Game #include <iostream.h> #include <conio.h> #include <stdlib.h> #include <iomanip.h> #include <time.h> #include <string> int main(void) { int row,colomn,n,r,s,h,p,q,t,m; char a[3][3],choice,answer; p=0; q=0; t=0; // p: your wins, q: your loses, t: ties cout << "\t\t 1 2 3\n\n"; cout << "\t\t\t| " << "|" << endl; cout << "\t\t 1 | " << "|" << endl; cout << "\t\t ---|---|---" << endl; cout << "\t\t 2 | " << "|" << endl; cout << "\t\t ---|---|---" << endl; cout << "\t\t 3 | " << "|" << endl; cout << "\t\t\t| " << "|\n\n" << endl; cout << "Welcome to the game of TIC-TAC-TOE!\n\n"; cout << "Please enter your first name:\n\n"; string name; cin >> name; do { cout<<"\nWell "<<name<<", let's see who has the first move, me or you!\n"; cout<<"Choose! Head or Tail ?(H/T)\n"; cin >> choice; srand(time(NULL)); h = rand()%2; // It produce 0 or 1. if it's 0 user has the if (h == 0) // first move, else computer has it. cout << "\nYou are first! " << endl; else cout << "\nI'm first, You're next!" << endl; bool keep = true; for (int i=0; i<3; i++) for (int j=0; j<3; j++) a[i][j] = '\0'; // all the matrix cells are blank now. n=0; do { if (h == 0) { cout << "\nIt's your turn " << name <<"!" << endl; do { cout<<"\nPlease enter the number of the row you wish to place in:"<<endl; cin >> row; if (row > 3 || row < 1) cout<<"\nCaution! you must enter only 1 or 2 or 3 for the row\n"; }while(row > 3 || row < 1); do { cout<<"Please enter the number of the colomn you wish to place in:"<<endl; cin >> colomn; if (colomn > 3 || colomn < 1) cout<<"\nCaution! you must enter only 1 or 2 or 3 for the colomn\n"; }while (colomn > 3 || colomn < 1); row = row - 1; // because in c++ arrays start from 0 not 1. colomn = colomn - 1; if (n>0 && a[row][colomn] != '\0') { do // checks that the cell is blank or not. { cout << "\nThis place is full ! select another\n" << endl; cout<<"Please enter the number of the row you wish to place in:" << endl; cin >> row; cout<<"Please enter the number of the colomn you wish to place in:"<<endl; cin >> colomn; row = row - 1; colomn = colomn - 1; }while(a[row][colomn] != '\0'); } a[row][colomn] = 88; // 88 is the number that produce X as a char. cout<<"\t\t 1 2 3\n\n"; cout<<"\t\t\t| " << "|" << endl; cout<<"\t 1 "<<a[0][0]<<" | "<<a[0][1]<<" | "<<a[0][2]<<endl; cout<<"\t\t ---|---|---" << endl; cout<<"\t 2 "<<a[1][0]<<" | "<<a[1][1]<<" | "<<a[1][2]<<endl; cout<<"\t\t ---|---|---" << endl; cout<<"\t 3 "<<a[2][0]<<" | "<<a[2][1]<<" | "<<a[2][2]<<endl; cout<<"\t\t\t| " << "|\n" << endl; if (a[0][0]==88 && a[0][1]==88 && a[0][2]==88) keep = false; if (a[1][0]==88 && a[1][1]==88 && a[1][2]==88) keep = false; if (a[2][0]==88 && a[2][1]==88 && a[2][2]==88) keep = false; if (a[0][0]==88 && a[1][0]==88 && a[2][0]==88) keep = false; if (a[0][1]==88 && a[1][1]==88 && a[2][1]==88) keep = false; if (a[0][2]==88 && a[1][2]==88 && a[2][2]==88) keep = false; if (a[0][0]==88 && a[1][1]==88 && a[2][2]==88) keep = false; if (a[0][2]==88 && a[1][1]==88 && a[2][0]==88) keep = false; } m=0; for (int i=0; i<3; i++) for (int j=0; j<3; j++) if (a[i][j] != '\0') m++; if (m == 9) // if m become 9 it means that all 9 cells are full keep = false; // thus the game is tie and program should go out // of the loop by making keep false. if (keep == true) { do { r = rand()%3; // will produce 0 or 1 or 2. s = rand()%3; }while(a[r][s] != '\0'); // checks that the cell is blank or not. a[r][s] = 79; // 79 is the number that produce O as a char. cout << "Press any key for the computer's move \n\n"; getch(); cout<<"The computer placed an O in location "<<(r+1)<<","<<(s+1)<< endl; cout<<"\n\t\t 1 2 3\n\n"; cout<<"\t\t\t| " << "|" << endl; cout<<"\t 1 "<<a[0][0]<<" | "<<a[0][1]<<" | "<<a[0][2]<<endl; cout<<"\t\t ---|---|---" << endl; cout<<"\t 2 "<<a[1][0]<<" | "<<a[1][1]<<" | "<<a[1][2]<<endl; cout<<"\t\t ---|---|---" << endl; cout<<"\t 3 "<<a[2][0]<<" | "<<a[2][1]<<" | "<<a[2][2]<<endl; cout<<"\t\t\t| " << "|\n" << endl; } if (a[0][0]==79 && a[0][1]==79 && a[0][2]==79) keep = false; if (a[1][0]==79 && a[1][1]==79 && a[1][2]==79) keep = false; if (a[2][0]==79 && a[2][1]==79 && a[2][2]==79) keep = false; if (a[0][0]==79 && a[1][0]==79 && a[2][0]==79) keep = false; if (a[0][1]==79 && a[1][1]==79 && a[2][1]==79) keep = false; if (a[0][2]==79 && a[1][2]==79 && a[2][2]==79) keep = false; if (a[0][0]==79 && a[1][1]==79 && a[2][2]==79) keep = false; if (a[0][2]==79 && a[1][1]==79 && a[2][0]==79) keep = false; h = 0; n++; }while(n < 5 && keep); cout << "finish! last step is :" << endl; cout << "\t\t\t| " << "|" << endl; cout << "\t\t "<<a[0][0]<<" | "<<a[0][1]<<" | "<<a[0][2]<<endl; cout << "\t\t ---|---|---" << endl; cout << "\t\t "<<a[1][0]<<" | "<<a[1][1]<<" | "<<a[1][2]<<endl; cout << "\t\t ---|---|---" << endl; cout << "\t\t "<<a[2][0]<<" | "<<a[2][1]<<" | "<<a[2][2]<<endl; cout << "\t\t\t| " << "|" << endl; if (a[0][0]==88 && a[0][1]==88 && a[0][2]==88) {cout << "you win !" << endl; p++;} else if (a[1][0]==88 && a[1][1]==88 && a[1][2]==88) {cout << "you win !" << endl; p++;} else if (a[2][0]==88 && a[2][1]==88 && a[2][2]==88) {cout << "you win !" << endl; p++;} else if (a[0][0]==88 && a[1][0]==88 && a[2][0]==88) {cout << "you win !" << endl; p++;} else if (a[0][1]==88 && a[1][1]==88 && a[2][1]==88) {cout << "you win !" << endl; p++;} else if (a[0][2]==88 && a[1][2]==88 && a[2][2]==88) {cout << "you win !" << endl; p++;} else if (a[0][0]==88 && a[1][1]==88 && a[2][2]==88) {cout << "you win !" << endl; p++;} else if (a[0][2]==88 && a[1][1]==88 && a[2][0]==88) {cout << "you win !" << endl; p++;} else if (a[0][0]==79 && a[0][1]==79 && a[0][2]==79) {cout << "you lose !" << endl; q++;} else if (a[1][0]==79 && a[1][1]==79 && a[1][2]==79) {cout << "you lose !" << endl; q++;} else if (a[2][0]==79 && a[2][1]==79 && a[2][2]==79) {cout << "you lose !" << endl; q++;} else if (a[0][0]==79 && a[1][0]==79 && a[2][0]==79) {cout << "you lose !" << endl; q++;} else if (a[0][1]==79 && a[1][1]==79 && a[2][1]==79) {cout << "you lose !" << endl; q++;} else if (a[0][2]==79 && a[1][2]==79 && a[2][2]==79) {cout << "you lose !" << endl; q++;} else if (a[0][0]==79 && a[1][1]==79 && a[2][2]==79) {cout << "you lose !" << endl; q++;} else if (a[0][2]==79 && a[1][1]==79 && a[2][0]==79) {cout << "you lose !" << endl; q++;} else {cout << "tie!" << endl; t++;} if (p == 1) cout <<"\nUp to this point you have won:\t\t" << p << " game" << endl; else cout <<"\nUp to this point you have won:\t\t" << p << " games" << endl; if ( q == 1) cout <<"The computer has won:\t\t\t" << q << " game" << endl; else cout <<"The computer has won:\t\t\t" << q << " games" << endl; if ( t == 1) cout <<"And there have been:\t\t\t" << t << " tie\n" << endl; else cout <<"And there have been:\t\t\t" << t << " ties\n" << endl; cout << "Do you want to play again?(Y/N)" << endl; cin >> answer; }while (answer == 'y' || answer == 'Y'); getch(); return 0; } [/s][/s][/i][/i][/SPOILER][i][i][s][s][/s][/s][/i][/i][/LEFT][i][i][s][s] از اونجا که من مبتدی هستم! یه چیزی حدود 200 تا If , cout داره :) فکر کنم خیلی کوتاه تر از اینم میشد نوشت. فقط امیدوارم بچه های کلاس اینجا رو پیدا نکنن و سورسه من لو نره :-" نمایی از بازی!! : [URL=http://suprfile.com/get.php?id=1a01q05][img]http://suprfile.com/src/2/1a01q05/XO.JPG[/img][/URL]] خود بازی و سورسش :[/s][/s][/i][/i] [/QUOTE]
Insert quotes…
Verification
پایتخت ایران
ارسال نوشته
صفحه اصلی
انجمنها
ساخت بازی
آموزش ساخت و توسعه بازی
آموزش زبان ++C و #C
Top
نام کاربری یا ایمیل
رمز عبور
نمایش
رمز عبور خود را فراموش کرده اید؟
مرا به خاطر بسپار
ورود
اگر میخواهی عضوی از بازی سنتر باشی
همین حالا ثبت نام کن
or ثبتنام سریع از طریق سرویسهای زیر
Twitter
Google
Microsoft