From d60fd485e8af6176d9877cc3949ba7b022ea7e82 Mon Sep 17 00:00:00 2001 From: clonbg Date: Mon, 19 Jun 2023 11:04:13 +0200 Subject: [PATCH] reto06 piedra papel tijera lagarto spook --- ejercicios/reto06/src/main.rs | 22 +++++++++++++++------- 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/ejercicios/reto06/src/main.rs b/ejercicios/reto06/src/main.rs index 76ce068..77412d6 100644 --- a/ejercicios/reto06/src/main.rs +++ b/ejercicios/reto06/src/main.rs @@ -24,21 +24,29 @@ Reglas del juego piedra papel tijera lagarto Spock. use rand::Rng; fn main() { - let simbolos: Vec<&str> = vec!["piedra", "papel", "tijera", "lagarto", "spock"]; + let simbolos: Vec<&str> = vec!["piedra", "lagarto", "spook", "tijera", "papel"]; // random jugadas let num1 = rand::thread_rng().gen_range(0..simbolos.len()); let num2 = rand::thread_rng().gen_range(0..simbolos.len()); let jugada: Vec<&str> = vec![simbolos[num1], simbolos[num2]]; println!("{} {}", jugada[0], jugada[1]); - if jugada[0] == jugada[1] { - println!("Empate"); - } else if jugada.contains(&"piedra") - && (jugada.contains(&"tijera") || jugada.contains(&"lagarto")) - { - if jugada[0] == "piedra" { + if jugada[0] != jugada[1] { + let mut ordenado: Vec<&str> = Vec::new(); + let mut index = simbolos.iter().position(|&r| r == jugada[0]).unwrap(); + // println!("{} {}", index, jugada[0]); + for _ in 0..5 { + if index == simbolos.len() { + index = 0 + } + ordenado.push(simbolos[index]); + index = index + 1; + } + if ordenado[1] == jugada[1] || ordenado[3] == jugada[1] { println!("Player 1"); } else { println!("Player 2"); } + } else { + println!("Empate"); } }