online compiler and debugger for c/c++

code. compile. run. debug. share.
Source Code   
Language
//Cambios //Cambio 1: Moneda adicional //Cambios 2: Loop que valida si el usuario entró 1 o 0 use std::io; fn main() { //Declaracion de Variables let mut repe = 1; //Empieza programa principal while repe == 1 { println!("--------------------------------\n"); println!("Lista de Paises con su moneda:"); println!("1. Dolar = USD"); println!("2. Yen = JPY"); println!("3. Euro = EUR"); println!("4. Peso = MXN"); //Cambio 1: Se adjudicó una nueva moneda println!("5. Franco Suizo = CHF\n"); //Entrada de seleccion de pais println!("Escoja un pais: "); let mut int_input = String::new(); io::stdin().read_line(&mut int_input).expect("Failed to read line"); //Transformar a Int let selec: i32 = match int_input.trim().parse() { Ok(num) => num, Err(_) => { println!("Please enter a valid integer."); return; } }; if selec >= 1 && selec <= 5 { //Se calcula el pais escogido match selec { 1 => { println!("Escojiste USD"); //Entra los USD para convertir a otros println!("Ingrese la cantidad de dolares: "); let mut usd_input = String::new(); io::stdin().read_line(&mut usd_input).expect("Failed to read line"); //Transformar a Float let usd: f64 = match usd_input.trim().parse() { Ok(num) => num, Err(_) => { println!("Please enter a valid number."); return; } }; //Calcula el valor de USD a otros let jpy = usd * 130.0; let eur = usd * 0.92; let mxn = usd * 18.0; let chf = usd * 0.91; //Saca los valores println!("\n{} dolares son {:.2} yenes", usd, jpy); println!("{} dolares son {:.2} euros", usd, eur); println!("{} dolares son {:.2} pesos mexicanos", usd, mxn); println!("{} dolares son {:.2} francos suizos", usd, chf); }, 2 => { println!("Escojiste JPY"); //Entra los JPY para convertir a otros println!("Ingrese la cantidad de yenes: "); let mut jpy_input = String::new(); io::stdin().read_line(&mut jpy_input).expect("Failed to read line"); //Transformar a Float let jpy: f64 = match jpy_input.trim().parse() { Ok(num) => num, Err(_) => { println!("Please enter a valid number."); return; } }; //Calcula el valor de JPY a otros let usd = jpy * 0.0076; let eur = jpy * 0.0069; let mxn = jpy * 0.15; let chf = jpy * 0.0070; //Saca los valores println!("\n{} yenes son {:.2} dolares", jpy, usd); println!("{} yenes son {:.2} euros", jpy, eur); println!("{} yenes son {:.2} pesos mexicanos", jpy, mxn); println!("{} yenes son {:.2} francos suizos", jpy, chf); }, 3 => { println!("Escojiste EUR"); //Entra los EUR para convertir a otros println!("Ingrese la cantidad de euros: "); let mut eur_input = String::new(); io::stdin().read_line(&mut eur_input).expect("Failed to read line"); //Transformar a Float let eur: f64 = match eur_input.trim().parse() { Ok(num) => num, Err(_) => { println!("Please enter a valid number."); return; } }; //Calcula el valor de EUR a otros let usd = eur * 1.09; let jpy = eur * 129.0; let mxn = eur * 19.0; let chf = eur * 0.99; //Saca los valores println!("\n{} euros son {:.2} dolares", eur, usd); println!("{} euros son {:.2} yenes", eur, jpy); println!("{} euros son {:.2} pesos mexicanos", eur, mxn); println!("{} euros son {:.2} francos suizos", eur, chf); }, 4 => { println!("Escojiste MXN"); //Entra los MXN para convertir a otros println!("Ingrese la cantidad de pesos mexicanos: "); let mut mxn_input = String::new(); io::stdin().read_line(&mut mxn_input).expect("Failed to read line"); //Transformar a Float let mxn: f64 = match mxn_input.trim().parse() { Ok(num) => num, Err(_) => { println!("Please enter a valid number."); return; } }; //Calcula el valor de MXN a otros let usd = mxn * 0.049; let jpy = mxn * 6.0; let eur = mxn * 0.047; let chf = mxn * 0.048; //Saca los valores println!("\n{} pesos mexicanos son {:.2} dolares", mxn, usd); println!("{} pesos mexicanos son {:.2} yenes", mxn, jpy); println!("{} pesos mexicanos son {:.2} euros", mxn, eur); println!("{} pesos mexicanos son {:.2} francos suizos", mxn, chf); }, 5 => { println!("Escojiste CHF"); //Entra los CHF para convertir a otros println!("Ingrese la cantidad de francos suizos: "); let mut chf_input = String::new(); io::stdin().read_line(&mut chf_input).expect("Failed to read line"); //Transformar a Float let chf: f64 = match chf_input.trim().parse() { Ok(num) => num, Err(_) => { println!("Please enter a valid number."); return; } }; //Calcula el valor de MXN a otros let usd = chf * 1.10; let jpy = chf * 143.0; let eur = chf * 1.01; let mxn = chf * 20.6; //Saca los valores println!("\n{} francos suizos son {:.2} dolares", chf, usd); println!("{} francos suizos son {:.2} yenes", chf, jpy); println!("{} francos suizos son {:.2} euros", chf, eur); println!("{} francos suizos son {:.2} pesos mexicanos", chf, mxn); }, _ => { println!("Invalid selection"); } } }else { println!("Por favor ingrese un numero entre 1 y 5"); } //Cambio 2: Loop que valida si el usuario entró 1 o 0 loop{ println!("\n\nQuieres volver a usar el programa? 1 = Si, 0 = No"); let mut repe_input = String::new(); io::stdin().read_line(&mut repe_input).expect("Failed to read line"); //Transformar a Int let reperes: i32 = match repe_input.trim().parse() { Ok(num) => num, Err(_) => { println!("Please enter a valid integer."); return; } }; if reperes == 1 { repe = 1; break; } else if reperes == 0 { repe = 0; break; } else{ println!("Porfavor, ingrese 1 o 0") } } } }

Compiling Program...

Command line arguments:
Standard Input: Interactive Console Text
×

                

                

Program is not being debugged. Click "Debug" button to start program in debug mode.

#FunctionFile:Line
VariableValue
RegisterValue
ExpressionValue