King Saud University College of Computer & Information Science CSC111 Lab04 Conditional Statements All Sections ------------------------------------------------------------------- Instructions Web-CAT submission URL: http://10.131.240.28:8080/web-cat/webobjects/web- CAT.woa/wa/assignments/eclipse Objectives: 1- Student should learn how to program using selection statements with combined conditions. 2- Student should learn how to combine conditions using logical operators (!, &&, and ) 3- Student should learn how to write expressions using the conditional expression
Lab Exercise 1 How cold is it outside? Temperature by itself is not enough. In 2001, the National Weather Service (NWS) in United States implemented the new wind-chill temperature to measure the coldness using temperature and wind speed. The formula is where is the outside temperature measured in degrees Fahrenheit and is the speed measured in miles per hour. is the wind-chill temperature. The formula cannot be used for wind speeds below 2 mph or temperatures below o F or above 41 o F. Write a program that prompts the user to enter a temperature and a wind speed. The program displays the wind-chill temperature if the input is valid; otherwise, it displays a message indicating whether the temperature and/or wind speed is invalid. Here are sample runs: Enter the temperature in Fahrenheit: 32 Enter the wind speed miles per hour: 30 The wind chill index is 17.59665069469402 Enter the temperature in Fahrenheit: 80 Temperature must be between -58F and 41F
Enter the temperature in Fahrenheit: 20 Enter the wind speed miles per hour: 1 Speed must be greater than or equal to 2 Solution 1- Create a new project in eclipse and name it lab04 2- Create a new class and name it WindChill. Make sure you choose the public static void main option. 3- Write the program as following (you can ignore comments): import java.util.*; public class WindChill { /** * @param args */ public static void main(string[] args) { // TODO Auto-generated method stub Scanner s=new Scanner(System.in); System.out.print("Enter the temperature in Fahrenheit:"); double ta = s.nextdouble(); if(ta>=-58 && ta<=41) { System.out.println("Enter the wind speed miles per our:"); double v=s.nextdouble(); if(v>=2) { double twc = 35.74 + 0.6215*ta - 35.75*Math.pow(v, 0.16) + 0.4275*ta*Math.pow(v, 0.16); System.out.println("The wind chill index is "+twc); else System.out.println("Speed must be greater than or equal to 2"); else System.out.println("Temperature must be between -58F and 41F");
4- When you are done, save your program and run it. Make sure it prints the output as shown above. 5- Submit your program to WebCAT through. Ask your TA for help. Lab Exercise 2 The two roots of a quadratic equation using the following formula: can be obtained and is called the discriminant of the quadratic equation. If it is positive, the equation has two real roots. If it is zero, the equation has one root. If it is negative, the equation has no real roots. Write a program that prompts the user to enter values for a, b, and c and displays the result based on the discriminant. If the discriminant is positive, display two roots. If the discriminant is 0, display one root. Otherwise, display The equation has no real roots. Note that you can use Math.pow(x, 0.5) to compute.
Enter a, b, c: 1 3 1 The equation has two roots -0.3819660112501051 and - 2.618033988749895 Enter a, b, c: 1 2 1 The equation has one root -1.0 Enter a, b, c: 1 2 3 The equation has no real roots Here are some sample runs: Solution 6- Use the same project lab04 that you created before 7- Create a new class and name it QuadEquation. Make sure you choose the public static void main option. 8- Write the program as following (you can ignore comments):
import java.util.scanner; public class QuadEquation { /** * @param args */ public static void main(string[] args) { Scanner s=new Scanner(System.in); System.out.println("enter a, b, c:)"); double a=s.nextdouble(); double b=s.nextdouble(); double c=s.nextdouble(); double disc=b*b-4*a*c; double r1,r2; if(disc<0) System.out.println("the equation has no real roots"); else if(disc==0) { r1=-b/(2*a); System.out.println("The equation has one root "+ r1); else { r1=(-b+math.sqrt(disc))/(2*a); r2=(-b-math.sqrt(disc))/(2*a); System.out.println("The equation has two roots :"+r1+" and "+r2);
9- When you are done, save your program and run it. Make sure it prints the output as shown above. 10- Submit your program to WebCAT through. Ask your TA for help. Lab Exercise 3 Write a program that reads an unspecified number of integers, determines how many positive and negative values have been read, and computes the total and average of the input values (not counting zeros). Your program ends with the input 0. Display the average as a floatingpoint number. Enter integers ending with 0: 1 2-1 3 0 The number of positives is 3 The number of negatives is 1 The total is 5 The average is 1.25 Here are some sample runs: Enter integers ending with 0: 0 no numbers are entered except 0 Solution 1- Create a new project in eclipse and name it lab04
2- Create a new class and name it CountPosNeg. Make sure you choose the public static void main option. 3- Write the program as following (you can ignore comments): 4- When you are done, save your program and run it. Make sure it prints the output as shown above. 5- Submit your program to WebCAT through. Ask your TA for help.
Lab Exercise 4 Write a program that prompts the user to enter the number of students and each student s name and score (at least two students), and finally displays the student with the highest score and the student with the second-highest score. Here is a sample runs: Enter the number of students: 4 Enter a student name: Mohammed Enter a student score: 75 Enter a student name: Ali Enter a student score: 85 Enter a student name: Fahad Enter a student score: 98 Enter a student name: Khalid Enter a student score: 65 Top two students: Fahad's score is 98.0 Ali's score is 85.0 Solution 11- Use the same project lab04 that you created before 12- Create a new class and name it HighScore. Make sure you choose the public static void main option. 13- Write the program as following (you can ignore comments):
6- When you are done, save your program and run it. Make sure it prints the output as shown above. 7- Submit your program to WebCAT through. Ask your TA for help. Done
Ex-3 Solution import java.util.scanner; public class integers { public static void main(string[] args) { Scanner s=new Scanner(System.in); System.out.println("Enter integers ending with 0:"); int x,pos=0,neg=0,sum=0; do{ x=s.nextint(); sum+=x; if(x>0) pos++; else if(x<0) neg++; while(x!=0); double avg=(double)sum/(pos+neg); System.out.println("pos="+pos+" neg="+neg); System.out.println(avg); System.out.println(sum);