[Duda] Evaluar numero en cadenas diferentes

mtz0

Hablar de más indica mucha ignorancia.
Noderador
Nodero
Noder
24 Dic 2018
594
375
Buenas, estoy haciendo un ejercicio en Python, pero me he estancado en esta parte porque no se me ocurre la manera de evaluar la posición de dos números en cadenas diferentes.

"Randomly generate a 4-digit number. Ask the user to guess a 4-digit number. For every digit that the user guessed correctly in the
correct place, they have a “cow.”

Si a alguien se le ocurre como evaluarlo me da la vida, gracias de antemano chavales.
 
  • Like
Reacciones : destapeman y KTaneR

KTaneR

Activo muy miembro
Burgués de Nodo
Noderador
Nodero
Noder
25 Oct 2019
1.387
1.863
Lista random(generada)
Lista user (pedida al usuario)

La idea es la siguiente independientemente del lenguaje:

desde i = 0 hasta lista.size-1
si random(i) == user(i) // aqui evaluamos la misma posicion en ambas listas
entonces cow+1 //y si son iguales sabemos que el usuario ha acetartado un numero en su posicion.

Python:
//Ahora solo hay que buscar la sintaxis de python:
For x in range (4)
if user(x) == random(x) :
Cow+=1



Si tambien quieres la parte de los bullS hay que añadirle a ese if este else :

elif user(x) in random : // si estamos en el else sabemos que el if ha fallado, o sea que en la misma posicion no son iguales
Bull+=1 // por eso si esto es true es que en la misma posicion no son iguales y que el numero esta en la lista
 
Última edición:

Thegjv

Moder fav <3
Miembro del equipo
Moderador
Noderador
Nodero
Noder
30 Dic 2018
1.847
554
Buenas, estoy haciendo un ejercicio en Python, pero me he estancado en esta parte porque no se me ocurre la manera de evaluar la posición de dos números en cadenas diferentes.

"Randomly generate a 4-digit number. Ask the user to guess a 4-digit number. For every digit that the user guessed correctly in the
correct place, they have a “cow.”

Si a alguien se le ocurre como evaluarlo me da la vida, gracias de antemano chavales.
Lista random(generada)
Lista user (pedida al usuario)

La idea es la siguiente independientemente del lenguaje:

desde i = 0 hasta lista.size-1
si random(i) == user(i) // aqui evaluamos la misma posicion en ambas listas
entonces cow+1 //y si son iguales sabemos que el usuario ha acetartado un numero en su posicion.

Python:
//Ahora solo hay que buscar la sintaxis de python:
For x in range (4)
if user(x) == random(x) :
Cow+=1



Si tambien quieres la parte de los bullS hay que añadirle a ese if este else :

elif user(x) in random : // si estamos en el else sabemos que el if ha fallado, o sea que en la misma posicion no son iguales
Bull+=1 // por eso si esto es true es que en la misma posicion no son iguales y que el numero esta en la lista
Mejor explicado creo q imposible xD
 

destapeman

FUCK PUSSYS, YES BADASS
Miembro del equipo
Paladín de Nodo
Jinete de Nodo
Burgués de Nodo
Moderador
Noderador
Nodero
Noder
11 Ene 2019
3.380
4.950
Lista random(generada)
Lista user (pedida al usuario)

La idea es la siguiente independientemente del lenguaje:

desde i = 0 hasta lista.size-1
si random(i) == user(i) // aqui evaluamos la misma posicion en ambas listas
entonces cow+1 //y si son iguales sabemos que el usuario ha acetartado un numero en su posicion.

Python:
//Ahora solo hay que buscar la sintaxis de python:
For x in range (4)
if user(x) == random(x) :
Cow+=1



Si tambien quieres la parte de los bullS hay que añadirle a ese if este else :

elif user(x) in random : // si estamos en el else sabemos que el if ha fallado, o sea que en la misma posicion no son iguales
Bull+=1 // por eso si esto es true es que en la misma posicion no son iguales y que el numero esta en la lista
Estáis ahí esperando a que este hombre suba dudas ajajajajajaj que grande tronco.
 
  • Like
  • Haha
Reacciones : KTaneR y mtz0

mtz0

Hablar de más indica mucha ignorancia.
Noderador
Nodero
Noder
24 Dic 2018
594
375
Lista random(generada)
Lista user (pedida al usuario)

La idea es la siguiente independientemente del lenguaje:

desde i = 0 hasta lista.size-1
si random(i) == user(i) // aqui evaluamos la misma posicion en ambas listas
entonces cow+1 //y si son iguales sabemos que el usuario ha acetartado un numero en su posicion.

Python:
//Ahora solo hay que buscar la sintaxis de python:
For x in range (4)
if user(x) == random(x) :
Cow+=1



Si tambien quieres la parte de los bullS hay que añadirle a ese if este else :

elif user(x) in random : // si estamos en el else sabemos que el if ha fallado, o sea que en la misma posicion no son iguales
Bull+=1 // por eso si esto es true es que en la misma posicion no son iguales y que el numero esta en la lista

No sé por qué me saltaba este error:

1586889324044.png


pero lo he hecho usando la funcion find:

Python:
import random
def gen_number(): number = '' for i in range(4): number = number + str(random.randint(0, 9)) return number
cow = 0
gameNumber = gen_number()
guessNumber = input("Please introduce a 4 digit number: ")
for i in gameNumber: if str(gameNumber).find(i) == str(guessNumber).find(i): cow+=1
print(cow)

Gracias de todos modos @KTaneR <3
 

KTaneR

Activo muy miembro
Burgués de Nodo
Noderador
Nodero
Noder
25 Oct 2019
1.387
1.863
No sé por qué me saltaba este error:

Ver el archivo adjunto 2824

pero lo he hecho usando la funcion find:

Python:
import random
def gen_number(): number = '' for i in range(4): number = number + str(random.randint(0, 9)) return number
cow = 0
gameNumber = gen_number()
guessNumber = input("Please introduce a 4 digit number: ")
for i in gameNumber: if str(gameNumber).find(i) == str(guessNumber).find(i): cow+=1
print(cow)

Gracias de todos modos @KTaneR <3

ya te digo que yo de python ni idea, por eso te puse el pseudocodigo, pero si ya encontraste solucion perfecto :)
 
  • Like
Reacciones : mtz0 y destapeman
Arriba Pie