summaryrefslogtreecommitdiff
path: root/BlankConsoleLab/CST116-Lab2-Cold-Crawford.cpp
diff options
context:
space:
mode:
authorLloyd Crawford <Lloyd Crawford@LAPTOP-7HJCDLE5>2022-11-09 19:41:35 -0800
committerLloyd Crawford <Lloyd Crawford@LAPTOP-7HJCDLE5>2022-11-09 19:41:35 -0800
commit530ccd3f872d749e5c6757da99cd5f0dd701cd3e (patch)
tree17ad439d7c74c9a6d0277abfa391c586562baa7f /BlankConsoleLab/CST116-Lab2-Cold-Crawford.cpp
parentSetting up GitHub Classroom Feedback (diff)
downloadcst116-lab2-19-ruin-master.tar.xz
cst116-lab2-19-ruin-master.zip
Here is my completed Lab 2HEADmaster
Diffstat (limited to 'BlankConsoleLab/CST116-Lab2-Cold-Crawford.cpp')
-rw-r--r--BlankConsoleLab/CST116-Lab2-Cold-Crawford.cpp86
1 files changed, 86 insertions, 0 deletions
diff --git a/BlankConsoleLab/CST116-Lab2-Cold-Crawford.cpp b/BlankConsoleLab/CST116-Lab2-Cold-Crawford.cpp
new file mode 100644
index 0000000..9db8518
--- /dev/null
+++ b/BlankConsoleLab/CST116-Lab2-Cold-Crawford.cpp
@@ -0,0 +1,86 @@
+// CST 116, Lab2: Baby it's cold outside, Lloyd Crawford. This file contains the 'main' function. Program execution begins and ends there.
+//
+
+
+#include <iostream>
+#include <cmath>
+#include <iomanip>
+using namespace std;
+
+
+
+//Part 2
+
+float c_2_f(float c)
+{
+ return (9.0 / 5.0) * (c + 32);
+}
+
+void f_2_c(float f, float& c)
+{
+ c = (5.0 / 9.0) * (f - 32);
+}
+
+float GetWindChill(float temp, float windSpeed)
+{
+
+ // Calculates the wind chill in fahrenheit, and can convert it to celsius using a previous function
+
+ float windChill;
+
+ windChill = 35.74 + (0.6215 * temp) + (pow(windSpeed, 0.16) * ((0.4275 * temp) - 35.75));
+
+ return windChill; // Returns the wind chill based on what the user entered before the function has been called. Only outputs as fahrenheit.
+
+}
+
+int main()
+{
+ //Part 1
+ char convert_choice = '0';
+ float celcius = -200; // force to be out of range -62 to 49.5
+ float fahrenheit = -200; // force to be out of range -80 & 121
+ float windChill = 0;
+ float windSpeed = -1; // force to be out of range 0 and 231
+
+
+ while (convert_choice != 'C' && convert_choice != 'F') // force to be C or F
+ {
+ cout << "Enter C for Celsius to Fahrenheit or F for Fahrenheit to Celsius: ";
+ cin >> convert_choice;
+ }
+ if (convert_choice == 'C')
+ {
+ while (celcius < -62 || celcius > 49.5) // force range here -62 to 49.5
+ {
+ cout << "Enter a number for degree in Celsius from -62 to 49.5: ";
+ cin >> celcius;
+ }
+ fahrenheit = c_2_f(celcius);
+ }
+ else
+ {
+ while (fahrenheit < -80 || fahrenheit > 121) // forces fahrenheit to be between -80 & 121
+ {
+ cout << "Enter a number for degree in fahrenheit from -80 to 121: ";
+ cin >> fahrenheit;
+ }
+ f_2_c(fahrenheit, celcius); // call conversion function with pbv and pbr parameters
+ }
+
+ while (windSpeed < 0 || windSpeed > 231) {
+
+ cout << "Please enter a number for the wind speed from 0 to 231 mph.\n";
+ cin >> windSpeed;
+
+ }
+
+
+ windChill = GetWindChill(fahrenheit, windSpeed);
+
+ cout << fixed << setprecision(2) << left;
+ cout << setw(20) << "CELSIUS" << setw(20) << "FAHRENHEIT" << setw(20) << "WIND SPEED" << setw(20) << "WIND CHILL" << endl;
+ cout << setw(20) << celcius << setw(20) << fahrenheit << setw(20) << windSpeed << setw(20) << windChill << endl;
+ cout << "Here is your data. Bundle up!" << endl;
+ return 0;
+} \ No newline at end of file