# Java Wind-chill Temperature Calculator

The program below is the solution to Liang's Introduction to Java Programming (9th Edition) Chapter 2 Exercise 2.17.

Question: How cold is it outside? The temperature alone is not enough to provide the answer. Other factors including wind speed, relative humidity, and sunshine play important roles in determining coldness outside. In 2001, the National Weather Service (NWS) implemented the new wind-chill temperature to measure the coldness using temperature and wind speed. The formula is:
twc = 35.74 + 0.6215ta - 35.75v0.16 + 0.4275tav0.16
where ta is the outside temperature measured in degrees Fahrenheit and v is the speed measured in miles per hour. twc is the wind-chill temperature. The formula cannot be used for wind speeds below 2 mph or temperatures below -58oF or above 41oF. Write a program that prompts the user to enter a temperature between -58oF and 41oF and a wind speed greater than or equal to 2 and displays the wind-chill temperature. Use Math.pow(a, b) to compute v0.16.

```/**
*
* @Author: Aghatise Osazuwa
* Website: www.cscprogrammingtutorials.com
*
* Exercise 2.17 - Science: wind-chill temperature
*
*/

import java.util.Scanner;

public class Ex02_17 {

public static void main(String[] args) {

// Display Program Information
System.out.println("This Program Calculates Wind-chill Temperature.\n");

// create Scanner
Scanner input = new Scanner(System.in);

// prompt user to enter details
System.out.println("Enter the outside temperature in Fahrenheit "
+ "(between -58 and 41 degrees):");
double temperature = input.nextDouble();
System.out.println("Enter the wind speed in miles per hour "
+ "(greater than or equal to 2 mph):");
double speed = input.nextDouble();

// calculate area using the formula
//twc = 35.74 + (0.6215 * ta) - (35.75 * Math.pow(v, 0.16)) + (0.4275 * ta * Math.pow(v, 0.16))
// where twc = wind-chill temperature
// ta = outside temperature measured in degrees Fahrenheit
// v = v is the speed measured in miles per hour
// Note that formula cannot be used for wind speeds below 2 mph or
// temperatures below -58 degrees Fahrenheit or above 41 degrees Fahrenheit
double windChillTemperature = 35.74 + (0.6215 * temperature) - (35.75
* Math.pow(speed, 0.16)) + (0.4275 * temperature * Math.pow(speed, 0.16));
// format area to five decimal places
windChillTemperature = (int) (windChillTemperature * 100000) / 100000.0;

// display the result
System.out.println("The area of the hexagon is " + windChillTemperature + "\n");
}
}
```