1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
|
#include <iostream>
using namespace std;
float C_to_F(float x);
void getUserInputs(float& value, float min, float max, string type);
float calculate(float mph, float degrees);
//m is min; M is max
//Fahrenheit Constants
const float Fm = -80;
const float FM = 121;
//Celcius Constants
const float Cm = -62;
const float CM = 49.5;
//Wind Speed Constants
const float Wm = 0;
const float WM = 231;
/*
Function: C_to_F
Input: Celcius(float)
Return: Fahrenheit(float)
Purpose: Converts celius to fahrenheit
*/
float C_to_F(float x)
{
x *= 1.8;
x += 32;
return x;
}
/*
Function: GetUserInputs
Input: variable(float), min value(float) max value(float), variable's type(string)
Return: None
Purpose: Ask user for the value of type between min and max
*/
void getUserInputs(float& value, float min, float max, string type)
{
while (value <= min || value >= max)
{
cout << "What is the value of " << type << "?" << endl;
cout << "(Enter a value between " << min << " & " << max << ")" << endl;
cin >> value;
}
}
/*
Function: calculate
Input: MPH(float), degrees F(float)
Return: Wind Chill(float)
Purpose: To calculate wind chill from wind speed and temperature
*/
float calculate(float mph, float degrees)
{
return (35.74 + (0.6215 * degrees) - (35.75 * pow(mph, 0.16)) + (0.4275 * degrees * pow(mph, 0.16)));
}
/*
Function: main()
Input:None
Return:None
Purpose: Ask user what degree they will enter temp in and run functions based off that
*/
int main()
{
string CorF;
float temp;
float wSpeed;
float windChill;
while (CorF != "C" && CorF != "F")
{
cout << "Do you want to enter in Fahrenheit (F) or Celsius (C)" << endl;
cin >> CorF;
}
if (CorF == "F")
{
getUserInputs(temp, Fm, FM, "Fahrenheit");
}
else
{
getUserInputs(temp, Cm, CM, "Celcius");
temp = C_to_F(temp);
cout << "That is " << temp << " degrees in Fahrenheit" << endl;
}
getUserInputs(wSpeed, Wm, WM, "Wind Speed");
windChill = calculate(wSpeed, temp);
cout << "At " << temp << " degrees Fahrenheit and at a wind speed of " << wSpeed << "MPH, the windchill is " << windChill << ".";
}
|