diff --git a/ejercicios/reto13/src/main.rs b/ejercicios/reto13/src/main.rs index f3e6b5a..1e6efc8 100644 --- a/ejercicios/reto13/src/main.rs +++ b/ejercicios/reto13/src/main.rs @@ -30,7 +30,7 @@ fn creapalabra(palabra: &str, vectorocultas: &mut Vec) -> String { for i in vectorfinal { palabrafinal = palabrafinal + &i.to_string(); } - + // TODO eliminar acentos palabrafinal.to_string() } @@ -43,6 +43,7 @@ async fn main() -> Result<(), Box> { .await?; let vector: Vec<&str> = html.as_str().split("").collect(); let mut palabra: String = String::from(""); + let mut vectorpalabra: Vec<&str> = Vec::new(); for i in vector.iter() { if i != &"[" && i.to_string() != "]" @@ -50,6 +51,7 @@ async fn main() -> Result<(), Box> { && i.chars().last().unwrap() != '"' { palabra = palabra + i; + vectorpalabra.push(*i); } } // Ya tenemos la palabra @@ -63,14 +65,34 @@ async fn main() -> Result<(), Box> { vectorocultas.push(num); } } - let mut intentos = 10; - let mut entrada = String::new(); - while intentos > 0 { - entrada = "".to_string(); + loop { + let mut intentos: i32 = 10; + let mut entrada = "".to_string(); println!("Intentos: {}", intentos); println!("Palabra: {}", creapalabra(&palabra, &mut vectorocultas)); println!("Ingrese una letra o la solución: "); - io::stdin().read_line(&mut entrada).unwrap(); + let lector: io::Stdin = io::stdin(); + lector.read_line(&mut entrada).expect("Fallo lectura"); + let vectorentrada: Vec = entrada.chars().collect(); + if vectorentrada.len() == 2 { + // Si es una letra + println!("Es una letra {}, {}", vectorentrada[0], palabra); + for i in vectorocultas.iter() { + println!("{}", vectorpalabra[*i]); + if vectorpalabra[*i].to_string() == vectorentrada[0].to_string() { + // Hay que eliminar del vector + // y volver a generar la palabra + } + } + } + if entrada.len() == palabra.len() { + // Si es una palabra + } + + if intentos == 0 { + println!("Perdiste!"); + break; + } } Ok(()) }