หน้าแรก
 การบ้าน
  C/C++ new
  Java new
 Sourcecode.TV
  Android
  Blackberry
  C/C++
  Java
  Linux
  Windows Phone
  แจ้งเรื่องที่ต้องการ
 บทความ
  .NET
  Android
  Blackberry
  C++Builder
  Delphi
  Java
  Mobile
  Open Source
  Pocket PC
  Visual Basic
  Web
  Windows Phone
  Others
 แบบเรียนฟรี
  ASP
  ASP.NET Webmatrix
  C++
  eVB
  J2ME
  Java
  PHP
 ซอร์สโค้ด
  Android
  ASP
  C++
  VC++
  CGI-Perl
  Delphi
  Java
  jQuery
  PHP
  Visual Basic
  .NET
 บริการจากเรา
  เปิดท้าย... ขายโค้ด
  DoodeeHosting
  รับออกแบบ พัฒนาเว็บไซต์
  Freeware
  อัตราค่าโฆษณา
  รายชื่อลูกค้า
  สถิติผู้เข้าเว็บ
 ดาว์นโหลด
 ค้นหาข้อมูล
 กระดานสนทนา
  .NET
  C/C++
  Delphi
  Java
  Palm/PocketPC
  Visual Basic
  Web
  อื่นๆ
 กระดานงาน
 ลิงค์เว็บ
 เกี่ยวกับผม
 อัตราค่าโฆษณา
Social Network

Facebook  Twitter  YouTube
 New Article
 Webboard
 Freelanceboard
Freeware
โปรแกรมเบอร์ดี (BerDee)
โปรแกรมเบอร์ดี (Android)
เกมส์เป่ายิ้งฉุบ
เกมส์เป่ายิ้งฉุบ(Android)
WebcamMonitor
WebcamMonitor(Windows)
scSendMail
scSendMail(Windows)
MSN Caption
MSN Caption(Windows)
  Freelance comment
  ติดต่อสอบถา...
2015-07-29 13:35:58
  ถ้าผมต้องกา...
2015-01-18 15:33:54
  ถ้าผมต้องกา...
2015-01-18 15:32:51
  ติดต่อสอบถา...
2014-01-06 12:47:38
  ถ้ายังหาคนส...
2013-07-06 01:04:37
  สนใจส่งขอบเ...
2013-03-24 18:54:20
  ถ้ายังไม่มี...
2012-12-16 19:18:14
  สนใจคะ ติดต่...
2012-11-12 11:07:46
  รับทำโปรเจ็...
2012-10-29 03:10:46
  sukit_te34@hotmail.com...
2012-10-29 03:09:36
  Webboard comment
  ระบบจองตั...
2017-11-18 15:42:48
  โปรแกรมจอ...
2017-11-18 15:40:29
  ผมลอง gotoxy แ...
2017-08-28 11:45:52
  ลองสร้างต...
2017-08-27 20:09:01
  #define GLUT_DISABLE_ATEXIT...
2017-08-27 12:53:17
  ผมมีคลิปส...
2017-08-27 10:50:02
  รับ สอน matlab ...
2017-06-03 16:27:23
  เฉพาะทางข...
2017-05-25 16:18:08
  โห เครื่อ...
2017-05-25 16:12:47
  ถ้าเขียน ph...
2017-04-20 01:04:20
  Homework comment
  โค้ดตัวอย่...
2017-11-26 14:50:05
  คำนวณค่าน้...
2017-11-20 23:15:26
  ขอบคุณมากค...
2017-08-16 18:27:25
  ทำเอง งง เอ...
2017-04-18 18:40:46
  ทำเอง งง เอ...
2017-04-18 18:37:54
  ประเด็นแรก...
2017-04-18 17:43:33
  อยากได้ flowchar...
2017-04-18 16:25:29
  kungking คำถามคื...
2017-03-18 23:28:36
  จงเขียนโปร...
2017-03-06 10:56:25
  ก็โค้ดทำงา...
2016-09-06 01:00:12
  Article comment
  มีcode ของ VB ไห...
2017-09-28 16:50:02
  น่าจะได้คร...
2017-07-11 09:59:35
  สามารถใช้ต...
2017-07-05 10:12:35
  ครับ คุณ "ติ...
2016-06-18 15:21:09
  vs2008 c# ครับ ขอ...
2016-06-17 14:39:30
  ผมใช้ vs c# ทำ...
2016-06-17 14:37:44
  ต้องวิเครา...
2016-03-12 23:36:05
  ผมส่งข้อคว...
2016-03-12 18:25:42
  โปรแกรม Terminal...
2016-02-16 11:02:01
  โปรแกรม Terminal...
2016-02-16 05:58:21
  9Mcode comment
  อยากได้...
2014-02-21 08:52:19

Link Exchange

อัตราค่าโฆษณา
Statistics of Sourcecode in Thailand
 
 Webboard

- - - - - - - - - - - - - - ผู้ให้การสนับสนุน- - - - - - - - - - - - - -

กระทู้ #3439 [C]

ปัญหาเกมงูกินหาง

#include<stdio.h>
#include<conio.h>
#include<windows.h>
#include<time.h>
#include <stdlib.h>
void random();
void grid();
void grid2();
void check();
void delay(unsigned int mseconds);
void SetColorAndBackground(int ForgC, int BackC);
void gotoxy(int x,int y);
COORD coord={0,0};
void game();
void game2();
int x2,y2,tail=0,x=20,y=10;
char ch_rand[]="CPE";

main()
{
char ch;
int choice=1;
do
{
system("cls");
gotoxy(10,3);
if(choice==1){SetColorAndBackground(15,2);}
printf("GAME");
SetColorAndBackground(15,0);

gotoxy(10,4);
if(choice==2){SetColorAndBackground(15,2);}
printf("XO Game ");
SetColorAndBackground(15,0);

gotoxy(10,5);
if(choice==3){SetColorAndBackground(15,2);}
printf("Menu 3 ");
SetColorAndBackground(15,0);

gotoxy(10,6);
if(choice==4){SetColorAndBackground(15,2);}
printf("EXIT ");
SetColorAndBackground(15,0);

ch=getch();
switch(ch)
{
//Up
case 72: choice=choice-1; break;
//down
case 80: choice=choice+1; break;
}

if(choice>4)choice=1;
if(choice<1)choice=4;

if(ch==13)
{
switch(choice)
{
case 1: game();break;
case 2: game2();break;
//case 3:
case 4: return 0; break;
}
}
}while(ch!=27);

}
void game()
{
int c,i,right;
c=strlen(ch_rand);
system("cls");
char ch;
do
{
gotoxy(0,1);
printf("ESC to Exit");
random();
do
{
grid();
gotoxy(35,2);
printf("\t\t\tX %d Y : %d C : %d",x,y,c);
ch=getch();
gotoxy(x,y);
printf(" ");
check();

switch(ch)
{
case 72:y--;break; //up
case 80:y++;break; //down
case 75:x--;break; //left
case 77:x++;break; //right
case 27:return 0;break;
}
gotoxy(x,y);
printf("*");

}while((x!=x2)||(y!=y2));
gotoxy(30+tail,2);
printf("%c",ch_rand[tail]);

if(tail==c-1)
{
system("cls");
printf("FINISH! ");
for(i=0;i<25;i++)
{
delay(50);
printf("*");
delay(50);
}
return 0;
}
tail++;
}while(ch!=27);
}
void game2()
{
char ch;
system("cls");
do
{
grid2();

gotoxy(16,5);
gotoxy(16,6);
printf(" # #\n");
gotoxy(16,7);
printf(" # #\n");
gotoxy(16,8);
printf("# #\n");

ch=getch();

}while(ch!=27);
}

void grid2()
{
int i;
for(i=0;i<18;i++)
{
gotoxy(15,i+4);
printf("|");
gotoxy(48,i+5);
printf("|");
gotoxy(26,i+5);
printf("|");
gotoxy(37,i+5);
printf("|");
}

for(i=0;i<34;i++)
{
gotoxy(15+i,4);
printf("-");
gotoxy(15+i,22);
printf("-");
gotoxy(15+i,10);
printf("-");
gotoxy(15+i,16);
printf("-");
}
}
void grid()
{
int i;
for(i=0;i<17;i++)
{
gotoxy(5,i+4);
printf("*");
gotoxy(72,i+5);
printf("*");
}
for(i=0;i<68;i++)
{
gotoxy(5+i,4);
printf("*");
gotoxy(5+i,21);
printf("*");
}
}
void random()
{
srand (time(NULL));
x2=rand()%55+10;
y2=rand()%14+6;
gotoxy(x2,y2);
printf("%c",ch_rand[tail]);
gotoxy(30,3);
printf("POINT X: %d Y: %d",x2,y2);
}

void delay(unsigned int mseconds)
{
clock_t goal = mseconds + clock();
while (goal > clock());
}

void SetColorAndBackground(int ForgC, int BackC)
{
WORD wColor = ((BackC & 0x0F) << 4) + (ForgC & 0x0F);;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), wColor);
return;
}
void gotoxy(int x,int y)
{
coord.X=x;
coord.Y=y;
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),coord);
}
void check()
{

if((x<7)||(x>70))
{
if(x<7)
x=7;
else
x=70;
}
if((y>20)||(y<5))
{
if(y>20)y=20;
else
y=5;
}
}

เกม 1 นะครับ ผมมีปัญหาเกมงูกินหาง ขอแนวคิดกินตัวอักษรแล้วหางยาวนะครับ
จากคุณ : ธงไชย / freedomkingoo@hotmail.co.th [2013-09-11 11:27:11]  

101.108.221.98 ความคิดเห็น #28899 (จาก IP: 101.108.221.98)
ผมก็มีแนวคิด แต่ไม่รู้ว่าจะดีหรือเปล่าลองเอาไปคิดดูก่อนทำครับ
คือ เก็บตำแหน่งของ งู ไว้เป็น array(A,x,y) , A คือความยาวของงู แปลว่างูยิ่งยาวก็ยิ่งมีการเก็บหลายตำแหน่ง x,y จะเป็นค่าตำแหน่งของแต่ละข้อของงู

วิธีคือมีการคำนวณค่า A ตำแหน่งเสมอตามรอบ โดยนำค่ามาจากการควบคุมของ user ว่าให้ไปซ้ายขวาหรือตรง สำหรับค่า A ที่อยู่ตำแหน่งหลังสุด ก็ให้ลบทิ้งเพราะหางงูจะเหลื่อนหายไปเสมอ

อาจจะยังไม่ดีพอก็ลองคิดๆวิธีอื่นดูก็ดีครับ
จากคุณ : maddog [2013-09-15 01:32:52]
ตอบกระทู้
  • ห้ามการโฆษณา หากต้องการติดต่อหาลูกค้า ติดต่อโฆษณาโดยตรงได้ที่ webmaster@sourcecode.in.th
  • ห้ามใช้คำหยาบและคำพูดที่ไม่เหมาะสม
  • ขอสงวนสิทธิหากตรวจพบ ข้อความที่ไม่เหมาะสม ข้อความนั้นจะถูกลบทันที
ชื่อ
อีเมล์
รายละเอียด

- - - - - - - - - - - - - - ผู้ให้การสนับสนุน- - - - - - - - - - - - - -

 
 
สายต่อจอ สำหรับเครื่อง macbook pro 2016 (usb-c to HDMI)
สายต่อจอ สำหรับเครื่อง macbook pro 2016 (usb-c to HDMI) ความละเอียดระดับ 4K
หัวแปลง Mini DisplayPort to HDMI Adapter หัวแปลง Mini DisplayPort to HDMI Adapter สำหรับเครื่อง macbook air/pro, mac mini
หัวแปลง Mini DisplayPort to HDMI Adapter สำหรับเครื่อง macbook air/pro, mac mini
สายต่อหูฟัง และชาร์จไฟ สำหรับ iPhone 7 และ 7 Plus
สายต่อหูฟัง และชาร์จไฟ สำหรับ iPhone 7 และ 7 Plus
หัวแปลงจาก USB-C Type ไปเป็น USB 3.1 สำหรับ MacBook
หัวแปลงจาก USB-C Type ไปเป็น USB 3.1 สำหรับ MacBook
ไขควงสำหรับเครื่อง Macbook Air/Pro
ไขควง สำหรับแกะเครื่อง Macbook Air/Pro (300บาท)
HDMI เข้า 3 ออก  1 มีรีโมท
HDMI เข้า 3 ออก 1 มีรีโมท (350บาท)
คลิปสอนเขียนโปรแกรม
เรียนเขียนโปรแกรมดอทเน็ต
เรียนเขียนโปรแกรมแอนดรอยด์
เรียนเขียนโปรแกรมเบล็คเบอร์รี่
เรียนเขียนโปรแกรมซี ซีพลัสพลัส
เรียนเขียนโปรแกรมจาวา
เรียนการใช้งานลินุกส์
เรียนการเขียนโปรแกรมวินโดว์โฟน
เรียนการเขียนโปรแกรมพีเฮชพี มายเอสคิวเอล
9M Blog บอกเล่าเรื่องราว การเขียนโปรแกรมของ นายเอ็ม
บริการ ถ่ายภาพรับปริญญา
OrmSin.com: ขายหนังสืองานฝีมือไทย-ญี่ปุ่น-จีน (country crafts)
อัตราค่าโฆษณา
 
Tutorial
eVB Tutorial
ASP.NET Webmatrix Tutorial
J2ME Tutorial
C++  Tutorial
Java  Tutorial
PHP Tutorial
ASP Tutorial
 
แบบสำรวจ
Freelance รับพัฒนาโปรแกรม

Home - Article - Tutorial - Sourcecode - Dev Handbook - Search - WebBoard - Links - About Us

สงวนลิขสิทธิ์ ห้ามคัดลอก ทำซ้ำ แก้ไข ดัดแปลง ไม่ว่าในรูปแบบใด โดยไม่ได้รับอนุญาตเป็นลายลักษณ์อักษร
เลขทะเบียนพาณิชย์อิเล็กทรอนิกส์จากกระทรวงพาณิชย์: 7100503002000
Copyright 2001 SourceCode.in.th