Friday, September 30, 2016

// // 1 comment

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:
 * 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(;

        // 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");

Click here to see other solutions to Introduction to Java Programming.

1 comment:

  1. Looks like there's a lot of bad copy & paste in that program. Several references to area.


DISCLAIMER: Opinions expressed in comments are those of the comment writers alone and does not reflect or represent the views of the post author. We reserve the right to delete any post deemed inappropriate or offensive and/or spammy. Please do not use abusive words/hate speech.

I Appreciate your valuable Feedback. So, Please DO NOT SPAM - Spam comments will be deleted immediately.

Don't use brand name in name field and you're not allowed to use links in comments unless it's necessary. Such comments will be removed immediately. To get notified of replies or follow-up comments, click the box next to notify me.