Crea "Piedra, Papel o Tijeras" //#5 !Las dos son iguales¡


#1

Hola a todos tengo duda en esta lección dejare mi código pero me gustaría es que alguien colocara el suyo y que este se confirme como correcto he conseguido el de otras fuentes y a pesar de las observaciones no consigo aprobar esta parte

Link: www.codecademy.com/es/courses/javascript-beginner-es-xhc8p/1/1?curriculum_id=53a32b14fed2a896c6000001#

var usuarioElige = prompt("piedra, papel o tijera?");
var computadoraElige = Math.random();
if (computadoraElige <0,34){
computadoraElige = "piedra";
}else if(computadoraElige <=0.67){
computadoraElige = "papel";
}else{
computadoraElige = "tijera";
}:

var comparar = function (eleccion1,eleccion2){
if (eleccion1 === eleccion2){
return"!Es un empate¡";
}

Necesito el código correcto para comparar los detalles erroneos Gracias y saludos comunidad..


#2

Yo coloqué el código de esta manera y me funcionó:

var usuarioElige = prompt("¿Piedra, papel o tijera?");
var computadoraElige = Math.random();
var piedra = "piedra";
var papel = "papel";
var tijera = "tijera";
console.log(computadoraElige);
if ( 0 < computadoraElige <= 0.33 )
{
computadoraElige = piedra;
}
else if(0.34 < computadoraElige <= 0.66 )
{
computadoraElige = papel;
}
else(0.67 < computadoraElige <= 1 );
{
computadoraElige = tijera;
}


#3

ok gracias por el aporte pero ese no es, es el siguiente en el que se te solicita lograr un empate agregando la función


#4

Intenta lo siguiente...
var usuarioElige = prompt("piedra, papel o tijera?");
var computadoraElige = Math.random();
if (computadoraElige <0,34){
computadoraElige = "piedra";
}else if(computadoraElige <=0.67){
computadoraElige = "papel";
}else{
computadoraElige = "tijera";
}: (ELIMINA ESOS DOS PUNTOS FINALES y DEJA SOLO })

var comparar = function (eleccion1,eleccion2){
if (eleccion1 === eleccion2){
return"!Es un empate¡";
}
AGREGA
};


#5

Gracias por el aporte pero no avanza me arroja lo siguiente:

¡Uy! Probá otra vez. Tu función comparar no retorna '¡El resultado es un empate!' cuando hay un empate.


#6

var comparar = function(eleccion1, eleccion2) {

if(eleccion1 === eleccion2) {

return "¡Es un empate!";
}
};


#7

Yo logré terminar el programa así.. No sé si te sea de ayuda.
var usuarioElige = prompt("piedra, papel o tijera?");
var computadoraElige = Math.random();
var comparar = function (eleccion1, eleccion2){

if(eleccion1 === eleccion2)
{
return "Es un empate, eligan de nuevo!";

}
if (eleccion1 === "piedra")
{
    if (eleccion2 === "tijera")
    {
        return "Piedra gana!";
    }
    else if(eleccion2 === "papel")
    { 
        return "papel gana";
    }
}
else if (eleccion1 === "papel")
{
    if (eleccion2 === "piedra")
    {
        return "gana papel";
    }
    else if(eleccion2 === "tijera")
    { 
        return "gana tijera";
    }
}
else if (eleccion1 ==="tijera")
{
    if (eleccion2 === "piedra")
    {
        return "gana piedra";
    }
    else if(eleccion2 === "papel")
    {
        return "gana tijera";
    }
}

};
if (computadoraElige <0.34){
computadoraElige = "piedra";
}else if(computadoraElige <=0.67){
computadoraElige = "papel";
}else{
computadoraElige = "tijera";
}
console.log("La computadora eligió" + " " + computadoraElige);
console.log("El usuario eligió" + " " + usuarioElige);
comparar(usuarioElige, computadoraElige);


#8

Pase el programa de la siguiente manera:

var usuarioElige = prompt("piedra, papel o tijera ?");
var computadoraElige = Math.random();
//Esta es la forma de mostrar a "computadoraElige" en pantalla
console.log(computadoraElige);
// Valores de la computadora
if (computadoraElige <= 0.33) {
console.log("piedra==>" + " " + computadoraElige);
computadoraElige = "piedra";
} else if (computadoraElige <= 0.66) {
console.log("papel==>" + " " + computadoraElige);
computadoraElige = "papel";
} else {
console.log("tijera==>" + " " + computadoraElige);
computadoraElige = "tijera";
}
//Funcion comparar
var comparar = function(eleccion1,eleccion2) {
if (eleccion1 === eleccion2) {
return "¡Es un empate!";
}
if (eleccion1 === "piedra") {
if (eleccion2 === "tijera") {
return "PIEDRA GANA";
} else if (eleccion2 === "papel") {
return "PAPEL GANA";
}
}
else if (eleccion1 === "papel") {
if (eleccion2 === "piedra") {
return "PAPEL GANA";
} else if (eleccion2 === "Tijera") {
return "TIJERA GANA";
}
}
else if (eleccion1 === "tijera") {
if (eleccion2 === "piedra") {
return "PIEDRA GANA";
} else if (eleccion2 === "papel") {
return "TIJERA GANA";
}
}
};
//
console.log("La computadora eligió:" + " " + computadoraElige);
console.log("El usuario eligió:" + " " + usuarioElige);
comparar(usuarioElige,computadoraElige);

Lo ejecute 3 a 4 veces y funciono. Espero haber ayudado.


#10

Gracias, pude entender donde estaba mi error a causa de su colaboración full agradecido con ustedes


#11

Cual es el codigo que va?
estoy trabado


#12

Hola Damian disculpa la demora espero que hubieras podido solventar si en tal caso es todo lo contrario el codigo que me dio correcto en el ejercicio es el siguiente:

var usuarioElige = prompt("piedra, papel o tijera?");
var computadoraElige = Math.random();
if (computadoraElige <0,34){
computadoraElige = "piedra";
}else if(computadoraElige <=0.67){
computadoraElige = "papel";
}else{
computadoraElige = "tijera";
}
//Funcion comparar
var comparar = function(eleccion1,eleccion2) {
if (eleccion1 === eleccion2) {
return "¡Es un empate!";
}
};

Espero te ayude con tu practica saludos..


#13

Según yo lo único que tenias que cambiar es el orden correcto de los signos de admiración. ¡Es un empate!

¡Saludos!


#14

ELSE NO LLEVA CONDICIONAL solo ejecuta el codigo que hay entre las llaves cuando la condicional
en "if" no es "true" es basicamente el plan "B" por esa razon todo numero decimal despues de 0.67
hasta 1 lo puedes asignar a "tijeras" ya que Math.random genera un numero decimal desde el 0 hasta el 1 segun tengo entendido.

una funcion es codigo reusable si no le indicas cual es el punto de cierre se genera el armagedon.
primero borra los dos puntos que tienes despues de la llave eso jamas debe ocurrir:
tienes que cerrar la funcion asi "};" sin las comillas.

var comparar = function (eleccion1,eleccion2){
if (eleccion1 === eleccion2){
return"!Es un empate¡";
}
}; <<<<<<< si no cierras asi la funcion te dara error

para que pueda existir una comparacion de valores los parametros necesitan datos.
Tienes que llamar a la funcion y darle datos, asignarle, inyectarle o como lo quieras llamar

comparar(usuarioElige,computadoraElige); >>>>>> colocalo debajo de la funcion luego que la hayas cerrado/finalizado claro.

RECUERDA siempre finalizar una funcion como se te indica despues de la llave va el punto y coma ;

Todo bloque de codigo que se encuentre dentro de las llaves en una sentencia "if,else if, else) debe terminar con un punto y coma ";" sin las comillas.
Saludos


#15

Solo te faltaba al final " }; "