Código de JavaScript - Juego del mastermind

Imágen de perfil
Val: 3.506
Oro
Ha mantenido su posición en JavaScript (en relación al último mes)
Gráfica de JavaScript

Juego del mastermindgráfica de visualizaciones


JavaScript

Publicado el 31 de Marzo del 2020 por Joel (150 códigos)
4.471 visualizaciones desde el 31 de Marzo del 2020
Cada vez que se empieza el juego, el programa cuatro números (sin repetirse), que será el código que el jugador debe adivinar en la menor cantidad de intentos posibles. Cada intento consiste en una propuesta de un código posible que escribe el jugador, y una respuesta del programa.

Las respuestas le darán pistas al jugador para que pueda deducir el código:
- La cantidad de aciertos: Es la cantidad de dígitos que propuso el jugador que también están en el código en la misma posición.
- La cantidad de coincidencias: Es la cantidad de dígitos que propuso el jugador que también están en el código pero en una posición distinta.

mastermind

1

Publicado el 31 de Marzo del 2020gráfica de visualizaciones de la versión: 1
4.472 visualizaciones desde el 31 de Marzo del 2020
estrellaestrellaestrellaestrellaestrella
estrellaestrellaestrellaestrella
estrellaestrellaestrella
estrellaestrella
estrella

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
<!DOCTYPE html>
<html>
 
<head>
    <meta charset="utf-8">
</head>
 
<body>
 
    <h1>Bienvenido/a al Mastermind!</h1>
 
    <h3>Tienes que adivinar un numero de 4 cifras distintas</h3>
 
    <form>
        Que numero propones: <input type="text" size="4" maxlength="4" id="propuesta">
        <input type="submit" value="enviar">
    </form>
 
    <div id="resultado"></div>
 
</body>
 
</html>
 
<script>
const random = (n) => {
    let elem=Array.from({length: 10}, (v, i) => i);
    return Array.from({length: n}).reduce((acum) => {
        acum.push(elem.splice(Math.floor(Math.random()*elem.length), 1)[0]);
        return acum;
    }, []).join("");
};
 
const codigo=random(4);
let intentos=0;
document.querySelector("form").addEventListener("submit", function(e) {
    e.preventDefault();
    const propuesta=document.getElementById("propuesta").value;
    if (propuesta.length!=4) {
        return;
    }
 
    intentos += 1
    let aciertos = 0
    let coincidencias = 0
    for (let i=0; i<4; i++) {
        if (propuesta[i]==codigo[i]) {
            aciertos++;
        } else if (codigo.indexOf(propuesta[i])!=-1) {
            coincidencias++;
        }
    }
    let resultado="";
    if (aciertos==4) {
        resultado="<div>Felicitaciones! Adivinaste el codigo en "+intentos+" intentos.<div>";
    } else {
        resultado="<div>Tu propuesta ("+propuesta+") tiene "+aciertos+" aciertos y "+coincidencias+" coincidencias.</div>";
    }
    document.getElementById("resultado").insertAdjacentHTML("afterEnd", resultado);
});
</script>



Comentarios sobre la versión: 1 (0)


No hay comentarios
 

Comentar la versión: 1

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad

http://lwp-l.com/s6074