diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..75d6eff --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +/*/target +**/*.rs.bk diff --git a/temperature b/temperature deleted file mode 100755 index a41e69a..0000000 Binary files a/temperature and /dev/null differ diff --git a/temperature/Cargo.lock b/temperature/Cargo.lock new file mode 100644 index 0000000..3bfe782 --- /dev/null +++ b/temperature/Cargo.lock @@ -0,0 +1,6 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +[[package]] +name = "temperature" +version = "0.1.0" + diff --git a/temperature/Cargo.toml b/temperature/Cargo.toml new file mode 100644 index 0000000..c8a71a4 --- /dev/null +++ b/temperature/Cargo.toml @@ -0,0 +1,9 @@ +[package] +name = "temperature" +version = "0.1.0" +authors = ["Pecha "] +edition = "2018" + +# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html + +[dependencies] diff --git a/temperature/src/main.rs b/temperature/src/main.rs new file mode 100644 index 0000000..d86a8b8 --- /dev/null +++ b/temperature/src/main.rs @@ -0,0 +1,38 @@ +use std::io; + +fn main() { + println!("Welcome to Pecha's Temperature Converter! 0u0!"); + loop { + let mut scale = String::new(); + let mut temperature = String::new(); + let mut o_scale = String::new(); + + println!("Please enter a scale to convert from- Farenheit (F) or Celsius (C)"); + io::stdin().read_line(&mut scale) + .expect("ALERTA ALERTA ANTIFASCISTA"); + + scale = scale.trim().to_string(); + if scale != "F" && scale != "C" { + println!("No recognised scale, please try again"); + continue; + } + + o_scale = o_scale.trim().to_string(); + if scale == "F" {o_scale = "C".to_string();} + if scale == "C" {o_scale = "F".to_string();} + + println!("Please enter a temperature"); + io::stdin().read_line(&mut temperature) + .expect("ALERTA ALERTA ANTIFASCISTA"); + let mut temperature: f32 = temperature.trim().parse().unwrap(); + + // [°C] = ([°F] - 32) x 5/9 + //[°F] = [°C] x 9/5 + 32 + if scale == "F" { + temperature = (temperature - 32.0)*5.0/9.0; + } else { + temperature = (temperature*9.0/5.0)+32.0; + } + println!("Your new temperature is {} degrees °{}",temperature,o_scale) + } +}