freeCodeCamp/curriculum/challenges/spanish/02-javascript-algorithms-an.../basic-javascript/generate-random-whole-numbe...

2.9 KiB

id title challengeType videoUrl localeTitle
cf1111c1c12feddfaeb1bdef Generate Random Whole Numbers with JavaScript 1 Generar números enteros al azar con JavaScript

Description

Es genial que podamos generar números decimales aleatorios, pero es aún más útil si lo usamos para generar números enteros aleatorios.
  1. Usa Math.random() para generar un decimal aleatorio.
  2. Multiplica ese decimal aleatorio por 20 .
  3. Use otra función, Math.floor() para redondear el número a su número entero más cercano.
Recuerda que Math.random() nunca puede devolver un 1 y, como estamos redondeando, es imposible obtener 20 . Esta técnica nos dará un número entero entre 0 y 19 . Poniendo todo junto, así es como se ve nuestro código: Math.floor(Math.random() * 20); Llamamos a Math.random() , multiplicamos el resultado por 20 y luego Math.floor() el valor a la función Math.floor() para redondear el valor al número entero más cercano.

Instructions

Utilice esta técnica para generar y devolver un número entero aleatorio entre 0 y 9 .

Tests

tests:
  - text: El resultado de <code>randomWholeNum</code> debe ser un número entero.
    testString: 'assert(typeof randomWholeNum() === "number" && (function(){var r = randomWholeNum();return Math.floor(r) === r;})(), "The result of <code>randomWholeNum</code> should be a whole number.");'
  - text: Debería estar usando <code>Math.random</code> para generar un número aleatorio.
    testString: 'assert(code.match(/Math.random/g).length > 1, "You should be using <code>Math.random</code> to generate a random number.");'
  - text: Debería haber multiplicado el resultado de <code>Math.random</code> por 10 para que sea un número entre cero y nueve.
    testString: 'assert(code.match(/\s*?Math.random\s*?\(\s*?\)\s*?\*\s*?10[\D]\s*?/g) || code.match(/\s*?10\s*?\*\s*?Math.random\s*?\(\s*?\)\s*?/g), "You should have multiplied the result of <code>Math.random</code> by 10 to make it a number that is between zero and nine.");'
  - text: Debe usar <code>Math.floor</code> para eliminar la parte decimal del número.
    testString: 'assert(code.match(/Math.floor/g).length > 1, "You should use <code>Math.floor</code> to remove the decimal part of the number.");'

Challenge Seed

var randomNumberBetween0and19 = Math.floor(Math.random() * 20);

function randomWholeNum() {

  // Only change code below this line.

  return Math.random();
}

After Test

console.info('after the test');

Solution

// solution required