前提・実現したいこと
で0~2のランダムな数値を3つ取得し、「それぞれの数値」と「最も数値が大きい変数」の情報を表示したいです。
また「最も数値が大きい変数」が複数ある場合は複数表示したいです。
###ソースコード
JavaScript
1<!DOCTYPE html> 2<html> 3<head> 4 <meta charset="UTF-8"> 5 <title>if</title> 6</head> 7<body> 8 <script type="text/javascript"> 9 // 0~2のランダムの数字の取得 10 var rand1 = Math.floor(Math.random() * 3); 11 var rand2 = Math.floor(Math.random() * 3); 12 var rand3 = Math.floor(Math.random() * 3); 13 14 // 数値を出力 15 document.write('<p>rand1:' + rand1 + '</p>'); 16 document.write('<p>rand2:' + rand2 + '</p>'); 17 document.write('<p>rand3:' + rand3 + '</p>'); 18 19 20 //3つがすべて同じ値の場合 21 if (rand1 === rand2 && rand2 === rand3) { 22 document.write('<p>3つは同じ値です</p>'); 23 } 24 25 //rand1とrand2が同じ値の場合 26 if (rand1 === rand2) { 27 if (rand1 > rand3) { 28 document.write('<p>一番数値が大きいのはrand1とrand2です</p>'); 29 } else { 30 document.write('<p>一番値が大きいのはrand3です</p>'); 31 } 32 //rand1とrand3が同じ値の場合 33 } else if (rand1 === rand3) { 34 if (rand1 > rand2) { 35 document.write('<p>一番数値が大きいのはrand1とrand3です</p>'); 36 } else { 37 document.write('<p>一番数値が大きいのはrand2です</p>'); 38 } 39 //rand2とrand3が同じ値の場合 40 } else if (rand2 === rand3) { 41 if (rand2 > rand1) { 42 document.write('<p>一番数値が大きいのはrand2とrand3です</p>'); 43 } else { 44 document.write('<p>一番数値が大きいのはrand1です</p>'); 45 } 46 //rand1が一番値が大きい場合 47 } else if (rand1 > rand2 && rand1 > rand3) { 48 document.write('<p>一番数値が大きいのはrand1です</p>'); 49 //rand2が一番値が大きい場合 50 } else if (rand2 > rand1 && rand2 > rand3) { 51 document.write('<p>一番数値が大きいのはrand2です</p>'); 52 //rand3が一番値が大きい場合 53 } else if (rand3 > rand1 && rand3 > rand2) { 54 document.write('<p>一番値が大きいのはrand3です</p>'); 55 } 56 </script> 57</body> 58</html>
解決したいこと
rand1,rand2,rand3が同じ値になったとき「3つは同じ値です」と表示するのですが、「一番値が大きいのはrand3です」とも表示してしまします。
3つが同じ値のときは「3つは同じ値です」とだけ表示したいです、よろしくお願いいたします。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/05/17 01:42