「fc2~工房」ランダム記事のミスについて。でも、まず動画を見よう。


やべえww

笑わずにいられねえWWW



ということで、ランダム記事のミス(?)を訂正( ゚∀゚)o彡゜


まずはこれを見てください。
元のソースです。
images[]に代入された画像URLから、ランダムに画像を表示させるスクリプトです。
<script language="JavaScript">
var images = new Array();

images[0] = "画像1のURL";
images[1] = "画像2のURL";
images[2] = "画像3のURL";

var rnd = Math.floor((Math.random() * 100)) % images.length;
document.write('<img src=',images[rnd],' border="0">');
</script>

緑色の文字の部分が、気になっている箇所です。

文の意味は、
Math.random()で取得した値に100をかけ、
その値をMath.floor(その値)で切り捨てします。
そして、それをimages.length(=画像数)で割って、
その余りを変数rndに代入。


説明へったくそww


とりあえず指摘したいことは、
・カッコが余計にある。
・確率が一定でない。
です。


***カッコについて***
var rnd = Math.floor((Math.random() * 100)) % images.length;
このカッコは明らかにいりません。


***確率について***
Math.random()から出力される値は、0以上、1未満です。(0.0000・・・ ~ 0.9999・・・)
つまり、この文だと
(切り捨て([0.0000~0.9999] * 100))を[画像数]で割った余り
=[0~99]を[画像数]で割った余り

となります。

これだと、[画像数]が[90]だった場合、
[90~99]がでると[0~9]が出力されます。

結論 [0~9]が[10~89]より2倍出やすい


これは・・・(ノ゚ο゚)ノ
実際にfor文で1万回くらい回して確かめたら
この結論通りの結果になりました。


ということで
確率を全て一定にする文として
var rnd = Math.floor(Math.random() * images.length);
となります。

この文だと、
切り捨て([0.0000~0.9999]*[画像数])
=0~([画像数]-1)

となります。
※ [画像数]-1となってますが、0から始まっているので・・・云々

つまり、全て一定の確率になります。


では、まとめです!

少し改良したソースです。
<script language="JavaScript">
var images = new Array();

images[0] = "画像1のURL";
images[1] = "画像2のURL";
images[2] = "画像3のURL";

var rnd = Math.floor(Math.random() * images.length);
document.write('<img src=',images[rnd],' border="0">');
</script>




この記事をみて納得した方は
是非このソースを試してみてください( ゚∀゚)o彡゜






じゃあのOh!Yeah!!

スポンサーサイト

コメント

ヒガタク

ブログのTOP画をこぅみたくランダム変化するやつにしたいんだけど、そもそもTOP画の変え方からわからないっす^q^;;

こぅ >ひがっち


おお
諦めて国に帰るんだな








CSSの書き方にもよるけど、
「テンプレート編集」⇒「HTML編集」に<div id="header"></div>で囲まれたところがある。
その囲まれた要素は、「画像表示」と「タイトル・サブタイトル表示」の2つがあると思う。
その「画像表示」の部分を入れ替える 的なみたいな

普通の画像ランダムならそこを<script type="text/javascript">ソース</script>と入れ替えるだけでOK( ゚∀゚)o彡゜
わかんなかったらスカで!!

ひつじ

初めまして

 偶然見て使わせてもらいました。やってみたかったので非常に助かりました^^

 ありがとうございます!

こぅ >ひつじさん

(ノ゚ο゚)ノ オオォォォ-
ブログを見に行くと、きちんとできてますね( ゚∀゚)o彡゜
どういたしまして!

コメントの投稿

トラックバック


この記事にトラックバックする(FC2ブログユーザー)

-

管理人の承認後に表示されます
今日のこぅくん
テニスと映画とプログラムが好きです
頑張るぞー( ゚∀゚)o彡゜
リンク先の更新!
プロフィール

こぅです(゜∀゚()
REDSTONEの青鯖にいます。
ギルドラオス共和国に所属。

引退してます。

九州住みの大学生です(  ̄^ ̄)ゝ

・Twitter: koukunRS
・Skype: yamadashi_skype
・Discord: kou#9204
・Gmail: koukun0120@...



赤石( ゚∀゚)o彡゜
リンク
いつもより余計に回っております


こっそり