2007年07月25日(水) [長年日記]
■ [c][dev] m〜nまでの乱数
Cのrand()を使ってm〜nまでの整数の乱数を得るには次の計算で合っているだろうか。
(int)(rand() / (RAND_MAX + 1.0) * (n - m + 1)) + m
n - m < RAND_MAX でないと困りそう。
自信がないので次のプログラムで試した。
#include <stdio.h> #include <stdlib.h> int my_random(int m, int n) { return (int)(rand() / (RAND_MAX + 1.0) * (n - m + 1)) + m; } int main() { int i; int m = 10; int n = 29; int counter[20] = {0}; printf("RAND_MAX=%d\n", RAND_MAX); for (i = 0; i < 100000; i++) { int r = my_random(m, n); if (r < m || r > n) { printf("error : %d is returned.\n", r); break; } counter[r - m]++; } for (i = 0; i < n - m + 1; i++) { printf("%4d : %d\n", m + i, counter[i]); } return 0; }
実行結果が次のようになったので、計算式は合っていそう。
RAND_MAX=2147483647 10 : 4918 11 : 5075 12 : 4934 13 : 4998 14 : 5007 15 : 5182 16 : 5044 17 : 4972 18 : 5023 19 : 4885 20 : 5026 21 : 5018 22 : 5033 23 : 4926 24 : 5008 25 : 4917 26 : 4917 27 : 5100 28 : 5011 29 : 5006
■ [サッカー] アジアカップ 日本vsサウジアラビア
準決勝。日本の先発は変わらず。気合の入った中澤の表情が印象的。解説にセルジオ越後さんが加わって、悪くなかった。
むしゃくしゃするのでオレの日本代表メンバーを選出するー。
播戸(佐藤) 高原(前田) 松井(山瀬,二川) 俊輔(太田,水野) 遠藤(小野) 阿部(鈴木) 相馬(中田) 闘莉王(山口) 中澤(岩政) 駒野(市川) 川口(川島)
今回一番物足りないのはサイドバックで、左は相馬に期待したい。縦に走れー。右は人材難。加地には可能性を感じない。市川はダメなのかなあ。FWは高原の相棒が問題だがやはり人材難。今なら播戸がいいと思うけどガンバでレギュラーでもないからなあ。得点ランキングを見ると佐藤か大久保になっちゃうのか。達也の復活が待たれる。大黒はどうしているのか。2列目は人材たくさん。野沢も使ってみたいしなあ。パスするだけでなく飛び出せる奴がいいんだけど。遠藤は憲剛の所で使いたい。鈴木は不動の活躍だが阿部を上げる方が魅力あるのではないか。小野もなあ。小笠原は鹿島で機能すれば可能性あるか。センターバックに岩政も試したい。坪井は足痙攣するからダメ。キーパーはよく分からないや。うーん、メンバー選びするなら3バックの方がいいかもしれん。
■ 新聞メモ
7月25日の産経新聞より。
韓国 過熱する海外布教
「韓国にはプロテスタントを中心に人口の約3分の1にあたる1500万人ものキリスト教徒がいるといわれる。」とのこと。キリスト教が韓国でそんなに広まっているとは知らなかった。不思議。
■ やること
- ズボンを洗う