CariDotMy

 Forgot password?
 Register

ADVERTISEMENT

View: 2567|Reply: 6

Camner nak wat game tic tac toe pki C??

[Copy link]
Post time 29-9-2006 10:40 AM | Show all posts |Read mode
aku nak mintak tlg kat sesaper yg tau camnetr nak wat game tic tac toe pki C...

dis is 4 my project...bg tau camner nak wat pun leh gak...laie bes kalo korang bg jer coding dia...huhuhu

apa2 pun tq in advance yaa...
Reply

Use magic Report


ADVERTISEMENT


Post time 29-9-2006 11:06 AM | Show all posts
hmmm... assignment yer :bgrin:
dah cuba buat sendiri ke belum?
Reply

Use magic Report

Post time 29-9-2006 11:11 AM | Show all posts

Dah Google ke belum?

bersepah-sepah coding untuk tic-tac-toe ada kat internet.
saya buat simple google search je dah dapat source code.

:hmm:
Reply

Use magic Report

 Author| Post time 29-9-2006 03:37 PM | Show all posts
wat nak panduan jer...yg tgk dr byk sumber..ader jumpa kat buku tp meleret sgt coding dia...
Reply

Use magic Report

Post time 29-9-2006 03:59 PM | Show all posts
no difference if you ask here or search thru the net.

hmmmmm... takpe yang ni saya bagi free. next time try usaha sendiri. :jeling:

try and copy/paste this code.


  1. #include<stdio.h>
  2. #include<conio.h>
  3. #include<stdlib.h>

  4. int board[10] = {2,2,2,2,2,2,2,2,2,2};
  5. int turn = 1,flag = 0;
  6. int player,comp;

  7. void menu();
  8. void go(int n);
  9. void start_game();
  10. void check_draw();
  11. void draw_board();
  12. void player_first();
  13. void put_X_O(char ch,int pos);


  14. main()
  15. {
  16.         clrscr();
  17.         _setcursortype(_NOCURSOR);
  18.         menu();
  19.         getch();
  20.         return(0);
  21. }

  22. void menu()
  23. {
  24.         int choice;
  25.         printf("\n--------MENU--------");
  26.         printf("\n1 : Play with X");
  27.         printf("\n2 : Play with O");
  28.         printf("\n3 : Exit");
  29.         printf("\nEnter your choice:>");
  30.         scanf("%d",&choice);

  31.         turn = 1;
  32.         switch (choice)
  33.         {
  34.                 case 1:
  35.                         player = 1;
  36.                         comp = 0;
  37.                         player_first();
  38.                         break;
  39.                 case 2:
  40.                         player = 0;
  41.                         comp = 1;
  42.                         start_game();
  43.                         break;
  44.                 case 3:
  45.                         exit(0);
  46.                 default:
  47.                         menu();
  48.         }
  49. }

  50. int make2()
  51. {
  52.         if(board[5] == 2)
  53.                 return 5;
  54.         if(board[2] == 2)
  55.                 return 2;
  56.         if(board[4] == 2)
  57.                 return 4;
  58.         if(board[6] == 2)
  59.                 return 6;
  60.         if(board[8] == 2)
  61.                 return 8;
  62.         return 0;
  63. }

  64. int make4()
  65. {
  66.         if(board[1] == 2)
  67.                 return 1;
  68.         if(board[3] == 2)
  69.                 return 3;
  70.         if(board[7] == 2)
  71.                 return 7;
  72.         if(board[9] == 2)
  73.                 return 9;
  74.         return 0;
  75. }

  76. int posswin(int p)
  77. {
  78. // p==1 then X   p==0  then  O
  79.         int i;
  80.         int check_val,pos;

  81.         if(p == 1)
  82.                 check_val = 18;
  83.         else
  84.                 check_val = 50;

  85.         i = 1;
  86.         while(i<=9)//row check
  87.         {
  88.                 if(board[i] * board[i+1] * board[i+2] == check_val)
  89.                 {
  90.                         if(board[i] == 2)
  91.                                 return i;
  92.                         if(board[i+1] == 2)
  93.                                 return i+1;
  94.                         if(board[i+2] == 2)
  95.                                 return i+2;
  96.                 }
  97.                 i+=3;
  98.         }

  99.         i = 1;
  100.         while(i<=3)//column check
  101.         {
  102.                 if(board[i] * board[i+3] * board[i+6] == check_val)
  103.                 {
  104.                         if(board[i] == 2)
  105.                                 return i;
  106.                         if(board[i+3] == 2)
  107.                                 return i+3;
  108.                         if(board[i+6] == 2)
  109.                                 return i+6;
  110.                 }
  111.                 i++;
  112.         }

  113.         if(board[1] * board[5] * board[9] == check_val)
  114.         {
  115.                 if(board[1] == 2)
  116.                         return 1;
  117.                 if(board[5] == 2)
  118.                         return 5;
  119.                 if(board[9] == 2)
  120.                         return 9;
  121.         }

  122.         if(board[3] * board[5] * board[7] == check_val)
  123.         {
  124.                 if(board[3] == 2)
  125.                         return 3;
  126.                 if(board[5] == 2)
  127.                         return 5;
  128.                 if(board[7] == 2)
  129.                         return 7;
  130.         }
  131.         return 0;
  132. }

  133. void go(int n)
  134. {
  135.         if(turn % 2)
  136.                 board[n] = 3;
  137.         else
  138.                 board[n] = 5;
  139.         turn++;
  140. }

  141. void player_first()
  142. {
  143.         int pos;

  144.         check_draw();
  145.         draw_board();
  146.         gotoxy(30,18);
  147.         printf("Your Turn :> ");
  148.         scanf("%d",&pos);

  149.         if(board[pos] != 2)
  150.                 player_first();

  151.         if(pos == posswin(player))
  152.         {
  153.                 go(pos);
  154.                 draw_board();
  155.                 gotoxy(30,20);
  156.                 textcolor(128+RED);
  157.                 cprintf("Player Wins");
  158.                 getch();
  159.                 exit(0);
  160.         }

  161.         go(pos);
  162.         draw_board();
  163.         start_game();
  164. }

  165. void start_game()
  166. {
  167.         // p==1 then X   p==0  then  O
  168.         if(posswin(comp))
  169.         {
  170.                 go(posswin(comp));
  171.                 flag = 1;
  172.         }
  173.         else
  174.         if(posswin(player))
  175.                 go(posswin(player));
  176.         else
  177.         if(make2())
  178.                 go(make2());
  179.         else
  180.                 go(make4());
  181.         draw_board();

  182.         if(flag)
  183.         {
  184.                 gotoxy(30,20);
  185.                 textcolor(128+RED);
  186.                 cprintf("Computer wins");
  187.                 getch();
  188.         }
  189.         else
  190.                 player_first();
  191. }

  192. void check_draw()
  193. {
  194.         if(turn > 9)
  195.         {
  196.                 gotoxy(30,20);
  197.                 textcolor(128+RED);
  198.                 cprintf("Game Draw");
  199.                 getch();
  200.                 exit(0);
  201.         }
  202. }

  203. void draw_board()
  204. {
  205.         int j;

  206.         for(j=9;j<17;j++)
  207.         {
  208.                 gotoxy(35,j);
  209.                 printf("|       |");
  210.         }
  211.         gotoxy(28,11);
  212.         printf("-----------------------");
  213.         gotoxy(28,14);
  214.         printf("-----------------------");

  215.         for(j=1;j<10;j++)
  216.         {
  217.                 if(board[j] == 3)
  218.                         put_X_O('X',j);
  219.                 else
  220.                 if(board[j] == 5)
  221.                         put_X_O('O',j);
  222.         }
  223. }

  224. void put_X_O(char ch,int pos)
  225. {
  226.         int m;
  227.         int x = 31, y = 10;

  228.         m = pos;

  229.         if(m > 3)
  230.         {
  231.                 while(m > 3)
  232.                 {
  233.                         y += 3;
  234.                         m -= 3;
  235.                 }
  236.         }
  237.         if(pos % 3 == 0)
  238.                 x += 16;
  239.         else
  240.         {
  241.                 pos %= 3;
  242.                 pos--;
  243.                 while(pos)
  244.                 {
  245.                         x+=8;
  246.                         pos--;
  247.                 }
  248.         }
  249.         gotoxy(x,y);
  250.         printf("%c",ch);
  251. }
Copy the Code
Reply

Use magic Report

Post time 29-9-2006 04:37 PM | Show all posts
Kebanyakan coding sememangnya meleret... leretannya kadang2 menyebabkan otak kita meleret-leret...hehehe.
Reply

Use magic Report

Follow Us
 Author| Post time 1-10-2006 09:56 AM | Show all posts
Originally posted by shahnazz at 29-9-2006 03:59 PM
no difference if you ask here or search thru the net.

hmmmmm... takpe yang ni saya bagi free. next time try usaha sendiri. :jeling:

try and copy/paste this code.


#include<stdio.h>
...



tq 4 da code...nak crk reference byk2 so leh la compare utk create sumthing new.....bukan la nak mintak pasal nak copy paste bulat2 n then trus antar but nak tgk camner dia wat jer...dh la lemah programming2 nie....

minat2 mmg minat tp susah laa nak xplain...
Reply

Use magic Report

You have to log in before you can reply Login | Register

Points Rules

 

ADVERTISEMENT


Forum Hot Topic
...BYE 2024, HELLO 2025...
seribulan...BYE 2024, HELLO 2025...
Views : 54993 Replies : 13
...AZAM TAHUN 2025...
seribulan...AZAM TAHUN 2025...
Views : 55522 Replies : 25
[Netflix 2021] SQUID GAME Season 1,2,3 - Lee Jung Jae, Lee Byung Hun, Wi Ha Joon, Gong Yoo ~ 26 Dec 2024 (Season 2), 2025 (Final Season)
Rahah[Netflix 2021] SQUID GAME Season 1,2,3 -
Views : 29125 Replies : 254
...CHAT HUMANITARY...HAPPY NEW YEAR...
seribulan...CHAT HUMANITARY...HAPPY NEW YEAR...
Views : 44248 Replies : 29
V82: HANIS HAIZI B. ABD HAMID Melarikan Diri Dari Bayar Cukai LHDN Ke Los Angeles CA
anony-mousV82: HANIS HAIZI B. ABD HAMID Melarikan
Views : 11125 Replies : 449
New Chapter 01: FATTAH AMIN ~ Bebaskanlah mimpi-mimpi terindah
codenamedreamNew Chapter 01: FATTAH AMIN ~ Bebaskanla
Views : 47200 Replies : 1958
siri ikonik Korea, Squid Game 2 ditayangkan di Neflix hari ini
YgBenarsiri ikonik Korea, Squid Game 2 ditayang
Views : 13087 Replies : 5
Instafamous Rempit (kak yah, kak zah & the geng) part 3
hotmakInstafamous Rempit (kak yah, kak zah & t
Views : 232317 Replies : 1832
madu gula tok matahari
aaanf14madu gula tok matahari
Views : 109982 Replies : 1152
Acikpor vs. Ngai, isu tajaan MARA dikorek
maklukpenggodaAcikpor vs. Ngai, isu tajaan MARA dikore
Views : 52274 Replies : 1477

 

ADVERTISEMENT


 


ADVERTISEMENT
Follow Us

ADVERTISEMENT


Mobile|Archiver|Mobile*default|About Us|CariDotMy

28-12-2024 06:41 AM GMT+8 , Processed in 0.052030 second(s), 20 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

Quick Reply To Top Return to the list