競技かるた(PHP風)
なんとなく、競技かるたの流れをPHP言語で書いてみた。合っているかは分からないけど、多分こんな感じかな……
<?php
$myfuda = 25;
$tekifuda = 25;
$karafuda = 50;
$defuda = 50;
while($myfuda && $tekifuda){
srand((double)microtime() * 1000000);
$temp_num = rand(1, $karafuda + $defuda);
//デバッグ開始
print '$myfuda = '.$myfuda."<br>";
print '$tekifuda = '.$tekifuda."<br>";
print '$karafuda = '.$karafuda."<br>";
print '$defuda = '.$defuda."<br>";
print "--------------------------<br>";
//デバッグ終了
//空札だったとき
if($temp_num < = $karafuda){
$karafuda--;
}
//出札だったとき
else{
$defuda--;
srand((double)microtime() * 1000000);
$temp_num = rand(1, $myfuda + $tekifuda);
//自陣が出たとき
if($temp_num <= $myfuda){
$myfuda--;
if(!funcGetFuda()){
$myfuda++;
$tekifuda--;
}
}
//相手陣が出たとき
else{
$tekifuda--;
if(funcGetFuda()){
$myfuda--;
$tekifuda++;
}
}
}
switch(funcOtetsuki()){
case 1:
if($tekifuda){
$tekifuda--;
$myfuda++;
}
case 2:
if($tekifuda){
$tekifuda--;
$myfuda++;
}
break;
case 3:
if($myfuda){
$myfuda--;
$tekifuda++;
}
case 4:
if($myfuda){
$myfuda--;
$tekifuda++;
}
break;
}
}
if(!$myfuda) print $tekifuda."枚差の勝利です!";
else print $myfuda."枚差負けです……";
function funcGetFuda(){
//自分が取った場合はtrueを返す関数
//以下仮設定
srand((double)microtime() * 1000000);
return rand(0,1) ? true : false;
}
function funcOtetsuki(){
//お手つきなし……0、共お手……0
//自分が空ダブ……1、自分がお手つき……2、
//相手が空ダブ……3、相手がお手つき……4、を返す関数
//以下仮設定
srand((double)microtime() * 1000000);
$temp_num = rand(1,100);
if($temp_num == 1) return 1;
elseif($temp_num == 2) return 3;
elseif($temp_num <= 6) return 2;
elseif($temp_num <= 10) return 4;
else return 0;
}
?>
そのうち、JavaScriptやFlashなんかで競技かるたのゲームなんか作ってみたいなー。まぁ、読みソフトが完成したらの話だけど……
関連記事
同じ日の記事
- 2013-06-15 「2-8」で勝ってたのに、気が付いたら「5-2」で負けとか、かるた怖い (0)
- 2011-06-15 クイーンが母校で百人一首交流会 (4)
- 2011-06-15 競技かるたマンガ『ちはやふる』第75話感想 (4)
- 2010-06-15 全国かるた福井大会273人熱戦 三好さんA級制す (1)
- 2009-06-15 三津田高、かるたで全国へ (0)
- 2009-06-15 競技かるたマンガ『ちはやふる』第33話感想 (0)
- 2008-06-15 第32回宗像大会有段者の部 (11)
- 2006-06-15 僕が右側を払うときは薬指で札を触ります (2)
- 2004-06-15 Ultra Car (0)
5 Comments
Sorry, the comment form is closed at this time.
あ、これだと出札のときでも空ダブの状況が起こりえるな……まぁ、いっか。
暇人め。(笑)
マニアックすぎて誰もつっこんでくれないのね。
こういうギャグおれは好きだなぁ。
別に暇じゃないんですけどね~(; ̄ー ̄A
思いついたら、なんとなくやってみたくなったもので。
確かに、かるたとPHPの両方を分かっている人は少ないでしょうからね。
最後にend subっているんじゃなかった??
C言語だったかな?
『End Sub』がいるのはVB系の言語ですね。