整理硬碟時,找到了大二時實現的俄羅斯方塊的**。
最後修改時間是2023年4月17日16點28分。
佩服當時的自己,雖然**寫的有點稚嫩,但演算法還是比較不錯。
現在我估計也寫不出這樣的**了。
當時用的開發工具是tc2.0, 原封不動貼出來備份一下。
#define
true 1
#define
false 0
#include
<
stdio.h
>
#include
<
stdlib.h
>
#include
"lib.h
"unsigned
char
block[7][
4][2]
=,,,},
/*----
*/,,,},
/*___|
*/,,,},
/*|___
*/,,,},
/*z
*/,,,},
/*-z
*/,,,},
/*88
*/,,,}};
/*_|_
*/char
sc[12
][22
];char
cur[4][
2],next[4][
2];char
stop=0
;int
score=0
;char
gameover=0
;char
cu,ne;
main()
random();
draw(cur,
254);
while(!
gameover)
break
;case
left:
if(legal('l
'))
break
;case
right:
if(legal('r
'))
break
;case
esc :gameover=1
;break
;case''
:getkey();
break;}}
/*if(kbhit())
*/count++;
if(count
==90000
) else
if(sc[cur[i][0]
-2][cur[i][1]
-1]==
1)}if(
!stop)
elsecu=
ne;random();
stop=0
;draw(cur,
254);}}
}gotoxy(3,
11);
printf(
"game over");
sleep(1);
}turn(
char
c)draw(cur,''
);for(i=
1;i<4;i
++)
draw(cur,
254);
}init()
draw(
char
ch[2
],inta)}
random()
for(i=0
;i<4;i
++)
for(i=0
;i<4;i
++)
}legal(
char
b)else
if(b=='
r') else
if(b=='
d') else
return
true;
}check()
*/temp[0]
=cur[0][
1];temp[1]
=cur[1][
1];temp[2]
=cur[2][
1];temp[3]
=cur[3][
1];c=
1;for(i=0
;i<4;i
++)
if(p)
printf("/7
");for(k
=i;k
<4;k
++) }}
gotoxy(24,
6);printf("%d
",score);
for(i=0
;i<4;i
++)if(sc[cur[i][0]
-2][0
])}
俄羅斯方塊高階 AI俄羅斯方塊
前文回顧 致青春 python實現俄羅斯方塊 人工智慧大火的今天,如果還是自己玩俄羅斯方塊未免顯得太low,為什麼不對遊戲公升級,讓機器自己去玩俄羅斯方塊呢?有了這個想法之後利用週六週日兩天的時間去蒐集了大量的資料,在電腦宕機好多次之後終於將ai俄羅斯方塊實現了。所謂讓機器自己去玩俄羅斯方塊,就是讓...
俄羅斯方塊
俄羅斯方塊 tetris,俄文 是一款風靡全球的電視遊戲機 和掌上遊戲機遊戲,它由俄羅斯人阿列克謝 帕基特諾夫 發明,故得此名。俄羅斯方塊的基本規則是移動 旋轉和擺放遊戲自動輸出的各種方塊,使之排列成完整的一行或多行並且消除得分。由於上手簡單 老少皆宜,從而家喻戶曉,風靡世界。俄羅斯方塊的開發者是阿...
俄羅斯方塊
include include include include includeusing namespace std include include define mem a,b memset a,b,sizeof a const int sudu 40 const int dir 4 2 cons...