JavaScriptっぽい。

『JavaScriptっぽい。』の更新情報やJavaScriptに関する日記。

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
  1. --/--/--(--) --:--:--|
  2. スポンサー広告|
  3. トラックバック(-)|
  4. コメント(-)

トランプ3枚当てスクリプト(その10)

1月18日正解発表分。


<script type="text/javascript">
/*
*1.マークはすべて異なる。		
*2.1枚目は黒いマークで絵札
*3.2枚目は赤いマークで5以上の数字
*4.3枚目は黒いマークで5以下
*5.偶数は3枚中2枚ある。

	1.1枚目の記号は["spade","club"]のランダム
	2.1枚目の数字は[11,12,13]のランダム
	3.2枚目の記号は["heart","dia"]のランダム
	4.2枚目の数字は1枚目が偶数なら[5,6,7,8,9,10,11,12,13]のランダム
	5.2枚目の数字が1枚目が奇数なら[6,8,10,12]のランダム
	6.3枚目の記号は黒の1枚目じゃない方
	7.3枚目の数字は1枚目が奇数なら[2,4]のランダム
	8.3枚目の数字は1枚目が偶数で2枚目が奇数なら[2,4]のランダム
	9.3枚目の数字が1枚目が偶数で2枚目が偶数なら[1,3,5]のランダム	

*/

Array.prototype.random_num = null;
Array.prototype.random_elm = function(){
	this.random_num = Math.floor ( Math.random() * this.length );
	return this [this.random_num];
}

function choice_card(){
	var black_mark = ["spade","club"];
	var red_mark = ["heart","dia"];
	var first_ary = [11,12,13];
	var second_ary1 = [5,6,7,8,9,10,11,12,13];
	var second_ary2 = [6,8,10,12];
	var third_even_ary = [2,4];
	var third_odd_ary = [1,3,5];
	var card = [];

	var first_mark = black_mark.random_elm();
	var first_num = first_ary.random_elm();
	var bool = (first_num % 2 ==1);

	var second_mark = red_mark.random_elm();
	var second_num = bool ? second_ary2.random_elm() : second_ary1.random_elm();

	var third_mark = (first_mark == "spade") ? "club" : "spade";
	var third_num = (bool || second_num % 2 == 1) ? third_even_ary.random_elm() : third_odd_ary.random_elm();

	card[0] = first_mark + first_num;
	card[1] = second_mark + second_num;
	card[2] = third_mark + third_num;
	return card.join(",");	
}

var choiced_card = [];
var i , i_max;

for( i = 0 , i_max = 20 ; i < i_max ; i++ ){
	choiced_card[i] = choice_card();
}

var choiced_str = choiced_card.join(",");
var reg_exp;
var str = "";

for( i = 0 ; choiced_card[i] ; i++ ){
	reg_exp = new RegExp( choiced_card[i] , "g" );
	if( ( choiced_str.match( reg_exp ) ).length > 1 ) {
		if( str.indexOf( choiced_card[i] ) > -1 ) {
			choiced_card.splice( i , 1 );
			i--;		//spliceするとインデックス番号がずれるのを修正
		}
		str += choiced_card[i];	
	}
}

var joint_array = choiced_card.join("<br>");
document.write ( joint_array );

</script>
スポンサーサイト
  1. 2006/01/21(土) 19:03:17|
  2. トランプ3枚当て|
  3. トラックバック:0|
  4. コメント:1
<<あどぶいら・カウントダウンをiframeに表示してみる。 | ホーム | トランプ3枚当てスクリプト(その9)>>

コメント

承認待ちコメント

このコメントは管理者の承認待ちです
  1. 2009/01/24(土) 09:12:49 |
  2. |
  3. #
  4. [ 編集]

コメントの投稿

管理者にだけ表示を許可する

トラックバック

トラックバックURLはこちら
http://javascript.blog3.fc2.com/tb.php/36-5f91c01b

PUREST

04 | 2017/05 | 06
Sun Mon Tue Wed Thu Fri Sat
- 1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31 - - -

Recent Entries

Recent Comments

Recent Trackbacks

Archives

Category

Links

Search

Recommend

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。