reto13 while intentos>0
This commit is contained in:
@@ -14,6 +14,25 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
use rand::Rng;
|
use rand::Rng;
|
||||||
|
use std::io;
|
||||||
|
|
||||||
|
fn creapalabra(palabra: &str, vectorocultas: &mut Vec<usize>) -> String {
|
||||||
|
let vector: Vec<char> = palabra.chars().collect();
|
||||||
|
let mut vectorfinal: Vec<char> = Vec::new();
|
||||||
|
for (index, i) in vector.iter().enumerate() {
|
||||||
|
if vectorocultas.contains(&index) == false {
|
||||||
|
vectorfinal.push(*i);
|
||||||
|
} else {
|
||||||
|
vectorfinal.push('_');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
let mut palabrafinal: String = String::from("");
|
||||||
|
for i in vectorfinal {
|
||||||
|
palabrafinal = palabrafinal + &i.to_string();
|
||||||
|
}
|
||||||
|
|
||||||
|
palabrafinal.to_string()
|
||||||
|
}
|
||||||
|
|
||||||
#[tokio::main]
|
#[tokio::main]
|
||||||
async fn main() -> Result<(), Box<dyn std::error::Error>> {
|
async fn main() -> Result<(), Box<dyn std::error::Error>> {
|
||||||
@@ -34,14 +53,8 @@ async fn main() -> Result<(), Box<dyn std::error::Error>> {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
// Ya tenemos la palabra
|
// Ya tenemos la palabra
|
||||||
println!("palabra: {}", palabra);
|
|
||||||
// calcula el 60% de la palabra
|
// calcula el 60% de la palabra
|
||||||
let ocultas = palabra.len() * 6 / 10;
|
let ocultas = palabra.len() * 6 / 10;
|
||||||
println!(
|
|
||||||
"ocultas: {} {}%",
|
|
||||||
ocultas,
|
|
||||||
ocultas as f32 / palabra.len() as f32 * 100.0
|
|
||||||
);
|
|
||||||
// los números de caracter que va a ocultar
|
// los números de caracter que va a ocultar
|
||||||
let mut vectorocultas: Vec<usize> = Vec::new();
|
let mut vectorocultas: Vec<usize> = Vec::new();
|
||||||
while vectorocultas.len() != ocultas {
|
while vectorocultas.len() != ocultas {
|
||||||
@@ -49,7 +62,14 @@ async fn main() -> Result<(), Box<dyn std::error::Error>> {
|
|||||||
if vectorocultas.contains(&num) == false {
|
if vectorocultas.contains(&num) == false {
|
||||||
vectorocultas.push(num);
|
vectorocultas.push(num);
|
||||||
}
|
}
|
||||||
println!("num: {}", num);
|
}
|
||||||
|
let mut intentos = 10;
|
||||||
|
while intentos > 0 {
|
||||||
|
let mut entrada = String::new();
|
||||||
|
println!("Intentos: {}", intentos);
|
||||||
|
println!("Palabra: {}", creapalabra(&palabra, &mut vectorocultas));
|
||||||
|
println!("Ingrese una letra o la solución: ");
|
||||||
|
io::stdin().read_line(&mut entrada).unwrap();
|
||||||
}
|
}
|
||||||
Ok(())
|
Ok(())
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user