Пытаясь найти правильный путь, но я не мог - PullRequest
0 голосов
/ 05 января 2019
  • У пользователя 1000 INR при запуске игры
  • Каждая попытка (нажмите на старт) оплачивается 100 INR
  • Игра заканчивается, если у пользователя менее 100 INR
  • Каждая попытка генерирует три случайных числа, каждое случайное число находится в диапазоне 0-9
  • Если все числа нечетные / четные (например, 2 4 6), пользователь получает 300 INR
  • Если числа в последовательности с разницей 1 в любом порядке (например, 2 3 4 или 3 2 4 или 4 6 5), пользователь получает 800 INR
  • Если все числа одинаковы (например, 4 4 4), пользователь получает 1000 INR
  • Иначе пользователь не получает денег

    function randomNum(min, max) {
      var YourMoney = 100
      var MoneyLeft
      var n = []
      for (i = 0; i < 3; i++) {
        n.push(Math.floor(Math.random() * max) + min)
      }
      document.getElementById("randomNumbers").innerHTML = n;
    
      YourMoney = YourMoney - 100
      document.getElementById("remain").innerHTML = YourMoney
    
      if (YourMoney < 100) {
        document.getElementById("lost").innerHTML = "You have lost ";
      }
    
    }
    

1 Ответ

0 голосов
/ 05 января 2019

Я написал этот код за 1 час! уф! :) .. надеюсь, это поможет .. также удалите всю консоль, когда вы поймете полный код!

var points = 1000;
 document.getElementById("points").innerHTML = points
function randomNum() {
 // var YourMoney = 100
  //var MoneyLeft
  if(points.toString() == "100"){
   alert("you have lost!");
  }else{
  points = points-100;
   document.getElementById("points").innerHTML = points

  var n = []
  var number = 0;
var digits = '';

for (i = 0; i < 3; i++) {
    number = Math.floor(Math.random() * 10);
    digits = digits + number.toString();
}
console.log("digits--",digits)
  document.getElementById("randomNumbers").innerHTML = digits;
let x = String(digits).split('')
console.log("x--",x)
// for(var i =0; i<x.length; i++){
// if(Math.abs(i % 2) == 1){
// console.log("no is odd");
// }
// })
// if( i % 2 == 0){
// console.log("no is even");
// }
// }
var result = [];
for(var i =0; i<x.length; i++){
console.log("Math.abs(i % 2)--",Math.abs(i % 2))
if(Math.abs(x[i] % 2) == 1){
console.log("no is odd");
result.push('odd');
}else if(Math.abs(x[i] % 2) == 0){
console.log("no is even");
result.push('even');
}
}

var matches = [""]; digits.split("").forEach(function(val){ 
  var lastNum = 0;
  if ( matches[matches.length-1].length > 0 )
  {
    lastNum = parseInt(matches[matches.length-1].slice(-1),10);
  }
  var currentNum = parseInt(val,10);
  if ( currentNum == lastNum + 1 ) 
  { 
    matches[matches.length-1] += String(currentNum); 
  }
  else 
  { 
    if ( matches[matches.length-1].length > 1 ) 
    { 
       matches.push(String(currentNum)) 
    } 
    else 
    { matches[matches.length-1] = String(currentNum); 
    } 
  }
});
matches = matches.filter(function(val){ return val.length > 1 }) //outputs ["6789", "123"]
console.log("matchg",matches.length);
//document.body.innerHTML += JSON.stringify(matches,0,4);
console.log("arrarrarr",result,"--",result.every( (val, i, arr) => val === arr[0] ));
if(result.every( (val, i, arr) => val === arr[0] )){
//same values
points = points+300;
alert("congratulation you have won "+300+ "points")
   document.getElementById("points").innerHTML = points
 
}else if(matches.length == 3){
//sequence
points = points+800;
alert("congratulation you have won "+800+ "points")
   document.getElementById("points").innerHTML = points

}else if (x.every( (val, i, arr) => val === arr[0] )){
//all values are same
points = points+1000;
alert("congratulation you have won "+1000+ "points")
   document.getElementById("points").innerHTML = points
}else{
alert("better luck next time!");
}
  }
  }
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div>Your points:<b id="points"></b></div>
<button onclick="randomNum()">START</button><div>Your Lucky no: <b id="randomNumbers"></b></div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...