- 締切済み
条件分岐
JavaScriptで、「if文を使用して0~9のランダムな数字を取得して出た数字と偶数か奇数かの2つの情報を表示する」 「0~2のランダムな数値を3つ取得して、それぞれの数値と最も数値が大きい変数の情報を表示する(最も数値が大きい変数が複数ある時は複数表示)」 プログラムはそれぞれどのようになりますか?
- みんなの回答 (6)
- 専門家の回答
みんなの回答
- babu_baboo
- ベストアンサー率51% (268/525)
問1を忘れていました。 let c = 10 * Math.random()|0; if(console.log(c+'は'+"偶奇"[c&1]+"数")); 課題は貴方のためのもの!
- babu_baboo
- ベストアンサー率51% (268/525)
複数表示が示せていないなんて… let a = [...Array(3)].map(n=>3*Math.random()|0), b = a.sort().reduceRight((a,b)=>(a[0]||0)<=b?[b,...a]:a,[]); console.log(a, b);
- AsarKingChang
- ベストアンサー率46% (3467/7474)
おまけ。。 h=a>b?a>c?a:c:b>c?b:c; これがわかりにくい!って言われたら、 オーバーヘッドはやや大きいが関数で、 h=[a,b,c].sort()[2]; 配列数3個のabcのarrayを作ると同時にソートして、 0オリジンの為、末尾は2の配列を返す=最大値取得 は、一発でできますんで。ケースバイケースで
- AsarKingChang
- ベストアンサー率46% (3467/7474)
2番捕捉(if分を使えと書いてないので。。) 出力部は、こんな感じで。 document.write("a="+a+(a==h?" is high":"")+"<br>\n"); document.write("b="+b+(b==h?" is high":"")+"<br>\n"); document.write("c="+c+(c==h?" is high":"")+"<br>\n"); 改行は、ブラウザ用と、コンソール用を2つ入れてるので、好みで。
- AsarKingChang
- ベストアンサー率46% (3467/7474)
2番の捕捉(2番にはifを使えとは書いていない為) 変数a,b,cの3個に数字が入っていると仮定して、hに最大値を取り出す。 h=a>b?a>c?a:c:b>c?b:c; など
- AsarKingChang
- ベストアンサー率46% (3467/7474)
「if文を使用して0~9のランダムな数字を取得して出た数字と偶数か奇数かの2つの情報を表示する」 https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Operators/Logical_Operators 1でANDをとれば、それが偶数か奇数がわかるので、元の数字と併せて出力。 2つ目は、a<b の結果abを求め、ab<cの結果で、どれが大きかったかわかるので、その数字と同じものをもとの数字と併せて出力