JavaScriptっぽい。

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

スポンサーサイト

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

Mr.トランプマンのトランプが当たりました。

card0

Mr.トランプマンという携帯用サイトでトランプ3枚当てをしているわけですが、当たった人が大勢いる場合は当然抽選になってしまいます。

そんなわけで、なかなか3万円は当たらないわけですが、この前敗者復活みたいなゲームでトランプが当たりました。

スクリプトとか使わずに勘でやった方が当たりやすいみたいです(爆)。

それにしても、もっと更新しないとね…。

card1


スポンサーサイト
  1. 2006/07/17(月) 20:47:22|
  2. トランプ3枚当て|
  3. トラックバック:0|
  4. コメント:0

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

3月15日正解発表分。今回は場合分けがややこしくて何回かバグ修正しました。


<script type="text/javascript">
/*
*1.2枚は同じマーク。(マークは2種類)		
*2.2枚は同じ数字。(数字は2種類)
*3.マークは赤と黒。
*4.ハートは含まれない。
*5.1枚目の数字は1。

	1.1枚目の記号は["dia","spade","club"]のランダム
	2.1枚目の数字は1
	3.1枚目がsapdeかclubのとき、記号の配列から当該記号を削除して、2枚目の記号はランダム
	4.2枚目の数字は[1,2,3,4,5,6,7,8,9,10,11,12,13]のランダム
	5.3枚目の記号は1枚目と2枚目が同じ場合は異なる色で、赤ならdia、黒ならランダム
	6.3枚目の数字は1枚目か2枚目と同じ数字
	
*/

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

function choice_card(){
	var mark = ["dia","spade","club"];
	var num_ary = [1,2,3,4,5,6,7,8,9,10,11,12,13];
	var card = [];

	var first_mark = mark.random_elm();
	var first_num = 1;

	var bool = ( first_mark != "dia" );
	if ( bool ) mark = ["dia",first_mark];
	
	var second_mark = mark.random_elm();
	var bool2 = ( first_mark == second_mark );
	if ( bool ) num_ary.splice ( first_num , 1 );
	var second_num = num_ary.random_elm();

	var third_mark;
	if ( bool2 ) third_mark = bool ? "dia" : ( mark = ["spade","club"] ).random_elm();
	else third_mark = ( mark = [first_mark,second_mark] ).random_elm();
	var third_num;
	if ( first_num != second_num ){
		if ( bool2 ) third_num = ( num_ary = [first_num,second_num] ).random_elm();
		else  third_num = ( first_mark == third_mark ) ? second_num : first_num;
	}
	else {	
		if ( !bool ) num_ary.splice ( first_num , 1 );
		third_num = num_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>

どうでもいいけど、最近JavaScriptの勉強とか全然していない。というか、WebどころかPC全般についてまったく勉強らしいことをしていないっす。

  1. 2006/03/19(日) 18:24:11|
  2. トランプ3枚当て|
  3. トラックバック:1|
  4. コメント:2

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

3月1日正解発表分。

今まで Array.prototype.random_num ってやってたけど、よく考えたらrandom_numはインスタンスごとに違うべきなので、単に this.random_num を設定できる場所があるのならそうするべきでした。

<script type="text/javascript">
/*
*1.すべてマークは黒。		
*2.絵札は1枚。
*3.3枚目が3枚の中で一番大きな数字。(3枚目が絵札)
*4.スペード>クラブ。(枚数?それとも数字?枚数にしとくか…)
*5.2枚目の数字は郵便番号の桁。

	1.1枚目の記号は黒のランダム
	2.1枚目の数字は[1,2,3,4,5,6,7,8,9,10]のランダム
	3.2枚目の記号は1枚目が6の場合は1枚目ではない記号、6じゃない場合は黒のランダム
	4.2枚目の数字は6
	5.3枚目の記号は1枚目と2枚目が同じ場合は異なる記号、異なる場合はクラブ
	6.3枚目の数字は[11,12,13]のランダム
	
*/

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

function choice_card(){
	var mark = ["spade","club"];
	var num_ary = [1,2,3,4,5,6,7,8,9,10];
	var pic_array = [11,12,13];
	var card = [];

	var first_mark = mark.random_elm();
	var first_num = num_ary.random_elm();
	var bool;
	var rest_mark = ( bool = ( first_mark == "club" ) ) ? "spade" : "club";

	var second_mark = ( first_num == 6 ) ? rest_mark : ( bool ? "spade" : mark.random_elm() ) ;
	var second_num = 6;

	var third_mark = ( first_mark == second_mark ) ? mark.random_elm() : "spade";
	var third_num = pic_array.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/03/05(日) 20:16:31|
  2. トランプ3枚当て|
  3. トラックバック:0|
  4. コメント:2

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

2月8日正解発表分。

超久しぶりになったけど、あんまり条件分岐が多すぎると作る気がしないので…


<script type="text/javascript">
/*
*1.絵札はない。		
*2.マークは2種類。
*3.奇数は2枚。
*4.マークは黒と赤。
*5.2枚目の数字は8。

	1.1枚目の記号はランダム
	2.1枚目の数字は[1,3,5,7,9]のランダム
	3.2枚目の記号は1枚目の記号か1枚目と違う色のランダム
	4.2枚目の数字は8
	5.3枚目の記号は1枚目と2枚目が同じ場合は違う色のランダム、違う場合は1枚目と2枚目のランダム
	6.3枚目の数字は1枚目と同じ記号の場合はその数字を抜いた[1,3,5,7,9]のランダム、違う記号の場合は[1,3,5,7,9]のランダム
	
*/

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 mark = ["heart","dia","spade","club"];
	var num_ary = [1,3,5,7,9];
	var card = [];

	var first_mark = mark.random_elm();
	var first_num = num_ary.random_elm();

	var bool = ( first_mark == "heart" || first_mark == "dia" );
	if ( bool ) (mark = ["spade","club"]).push( first_mark );
	else (mark = ["heart","dia"]).push( first_mark );

	var second_mark = mark.random_elm();
	var second_num = 8;

	if ( first_mark == second_mark ) mark = bool ? ["spade","club"] : ["heart","dia"];
	else (mark = []).push( first_mark , second_mark );

	var third_mark = mark.random_elm();
	
	if ( first_mark == third_mark ) num_ary.splice( num_ary.random_num ,1 );
	
	var third_num = num_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/02/11(土) 22:10:57|
  2. トランプ3枚当て|
  3. トラックバック:0|
  4. コメント:0

トランプ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
次のページ

PUREST

12 | 2017/03 | 01
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ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。