Evaluando propuestas

Mastermind automático

Publicado el 09 Diciembre, 2022 en Programación y Tecnología

Sobre este proyecto

Abierto

Busco alguien que realice un Mastermind a más tardar para la tarde del sábado 9 de diciembre que pueda resolverse solo en menos de 8 intentos a partir del siguiente código:

import numpy as np

class juego:
    def __init__(self):
        self.codigo = []
        for i in range(4):
            self.codigo.append(np.random.randint(1,9))
        self.resuelto = False
    def intento(self,Lista):
        a=0 #Numero correcto en posicion correcta
        b=0 #Numero correcto en posicion incorrecta
        revisados = []
        for i,c in zip(Lista,self.codigo):
          if(i==c):
              a+=1
              revisados.append(True)
          else:
              revisados.append(False)
        for i in range(4):
            for j in range(4):
                if(not i==j):
                    if(not revisados[j]):
                        if(Lista[i]==self.codigo[j]):
                            b+=1
                            revisados[j]=True
                 
        if(a==4):
            self.resuelto=True
        return a,b
 

def juega():
    j1 = juego()
    while (not j1.resuelto):
    #aqui iria el programa que resuelva el juego de arriba

La idea es que el juego se resuelva a partir de listas y funciones siguiendo la lógica de la imagen, es decir
Iniciando una lista con los valores [1,1,1,1] que estos se comparen y si encuentra uno en a o b mantenga 1 en la primera posición de la lista y sustituya los demás por 2 es decir [1,2,2,2] siguiendo el mismo proceso hasta encontrá la combinación de números correcta
Las funciones para probar el juego en consola son
#generar juego
j1 = juego ()
#ver el código que se debe encontrar
j1.codigo
#realizar intentó
j1.intento([Lista de 4 valores int de 1 a 9 separados por coma])
Por supuesto lo que se busca es que el programa resuelva el juego solo

Contexto general del proyecto

La idea es que el juego se resuelva a partir de listas y funciones siguiendo la lógica de la imagen, es decir Iniciando una lista con los valores [1,1,1,1] que estos se comparen y si encuentra uno en a o b mantenga 1 en la primera posición de la lista y sustituya los demás por 2 es decir [1,2,2,2] siguiendo el mismo proceso hasta encontrá la combinación de números correcta Las funciones para probar el juego en consola son #generar juego j1 = juego () #ver el código que se debe encontrar j1.codigo #realizar intentó j1.intento([Lista de 4 valores int de 1 a 9 separados por coma]) Por supuesto lo que se busca es que el programa resuelva el juego solo

Categoría Programación y Tecnología
Subcategoría Otros
Tamaño del proyecto Pequeño
¿Es un proyecto o una posición? Un proyecto
Actualmente tengo Tengo una idea
Disponibilidad requerida Según se necesite

Plazo de Entrega: No definido

Habilidades necesarias