30 noviembre, 2023

GENERAR CÓDIGO PARA CREAR JUEGO DE SORTEO CON TYPESCRIPT

Hola a todos,

Hace unas semanas que empecé a crear a modo de pasatiempo una pequeña aplicación que funcionase como un juego que generase un sorteo. Del tipo de juego de azar como una lotería.

La idea es que la aplicación genere una combinación aleatoria del 1 al 49 de 6 números y donde el jugador apostará sobre seis números también del 1 al 49. La herramienta detectará las coincidencias (los aciertos).

Ya sé que tendría que desarrollar una parte con los premios, pero es una tarea que podréis crear utilizando un switch case (tenéis post en esta web). Y ahora vayamos al código:

function main(workbook: ExcelScript.Workbook) {
  //creamos constantes, combinación ganadora, apuesta y acertados
  const combinacion = generarCombinacion();
  const jugador = [7, 49, 21, 28, 35, 42];
  const acertados = compApuesta(jugador, combinacion); 
    // Primera función generamos la combinación ganadora
    // hasta el 49
    function generarCombinacion(): number[] {
        var apuesta: number[] = [];
      while (apuesta.length < 7) {
            const numero = Math.floor(Math.random() * 49) + 1;
        if (!apuesta.includes(numero)) {
          apuesta.push(numero);
            }
        }
      return apuesta;
    }
    // Crealizamos comparación de ambas matrices y extraemos aciertos
  function compApuesta(jugador: number[], combinacion: number[]): number[] {
        var aciertos: number[] = [];
      for (var i = 0; i < jugador.length; i++) {
        if (combinacion.includes(jugador[i])) {
          aciertos.push(jugador[i]);
            }
        }
        return aciertos;
    }
    //mostramos en la consola
  console.log(`La combinación ganadora es: ${combinacion.join(", ")}` );
  console.log(`Los números elegidos por el jugador son: ${jugador.join(", ")}`);
  console.log(`El jugador ha acertado ${acertados.length} número(s): ${acertados.join(", ")}`);
}

En este código he incorporado dos funciones, una que genera la combinación ganadora y otra que realiza la comparación con los números que hayamos elegido.

El resultado sería así:

Lo he creado para que se muestra en nuestra consola de office scripts, pero podríais fácilmente trasladar los resultados a la hoja utilizando getRange y setValue o setValues.

Y esto es todo, espero que os haya parecido interesante.

¿Te ha resultado de interés?, puedes apoyar a Excel Signum con una pequeña donación.

Donate Button with Credit Cards

¡¡Muchas gracias!!

Mediante la suscripción al blog, la realización comentarios o el uso del formulario de contacto estás dando tu consentimiento expreso al tratamiento de los datos personales proporcionados según lo dispuesto en la ley vigente (LOPD). Tienes más información al respecto en esta página del blog: Política de Privacidad y Cookies

Comparte este post

Si te ha gustado o tienes alguna duda, puedes dejar aquí tu comentario.

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información.plugin cookies

ACEPTAR
Aviso de cookies