jsで1から10までの整数をランダムで30個ぐらい出して
それぞれ何個ずつ出たのかを表示したいのですが、
たとえばランダムで1,4,3,3,7と出た場合
1=1
2=0
3=2
....
7=1
8=0
9=0
10=0
のように表示させたいです。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答3件
0
ベストアンサー
大体こんな感じでしょうか
http://jsfiddle.net/ritouka/tacu3q04/
javascript
1function randomInts(count) { 2 var ints = [] 3 for (var i = 0; i < count; i++) { 4 var randomInt = Math.ceil(Math.random() * 10) 5 ints.push(randomInt) 6 } 7 return ints 8} 9 10function countInts(ints) { 11 var counter = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] 12 for (var i = 0; i < ints.length; i++) { 13 counter[ints[i]]++ 14 } 15 return counter 16} 17 18function printCounter(counter) { 19 var result = '' 20 for (var i = 1; i < 10; i++) { 21 result += '' + i + ' = ' + counter[i] + '\n' 22 } 23 return result 24} 25 26var count = 30 27var ints = randomInts(count) 28console.log(ints) 29var counter = countInts(ints) 30var result = printCounter(counter) 31console.log(result)
投稿2015/10/13 13:55
総合スコア46
0
オブジェクトのキーに対象、値に回数を保持して、求めることが出来ます。
js
1var items= []; 2for(var i=0; i<30; i++){ 3 items.push(Math.ceil(Math.random()*10)); 4}; 5console.log(items); 6// [10, 2, 9, 6, 6, 3, 9, 0, 2, 8, 1, 6, 8, 0, 7, 8, 5, 7, 2, 6, 5, 5, 9, 2, 9, 10, 5, 10, 8, 1] 7 8var count= {} 9items.forEach(function(item){ 10 count[item]= (count[item] | 0) + 1; 11}); 12console.log(count); 13// {0: 2, 1: 2, 2: 4, 3: 1, 5: 4, 6: 4, 7: 2, 8: 4, 9: 4, 10: 3}
投稿2015/10/13 13:47
編集2015/10/13 13:59総合スコア452
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
こういうことですか?
javascript
1var arr = [0,0,0,0,0,0,0,0,0,0]; 2arr[0]++; 3arr[3]++; 4arr[2]++; 5arr[2]++; 6arr[6]++; 7 8var str = ""; 9for(var i=0; i<arr.length; i++){ 10 str+= (i+1) + "=" + (arr[i]) + "\n"; 11} 12alert(str);
出力部分を追記 22:35
投稿2015/10/13 13:18
編集2015/10/13 13:35総合スコア2068
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2015/10/13 14:08
2015/10/13 14:44