Primary U.S. interstate highways are numbered 1-99. Odd numbers (like the 5 or 95) go north/south, and evens (like the 10 or 90) go east/west. Auxiliary highways are numbered 100-999, and service the primary highway indicated by the rightmost two digits. Thus, I-405 services I-5, and I-290 services I-90. Given a highway number, indicate whether it is a primary or auxiliary highway. If auxiliary, indicate what primary highway it serves. Also indicate if the (primary) highway runs north/south or east/west. Ex: If the input is: 90 the output is: I-90 is primary, going east/west. Ex: If the input is: 290 the output is: I-290 is auxiliary, serving I-90, going east/west. Ex: If the input is: 0 or any number not between 1 and 999, the output is: 0 is not a valid interstate highway number. This is the code I am using, but something is not functioning properly. import java.util.Scanner; public class LabProgram{ public static void main(String[] args) { Scanner scnr = new Scanner(System.in); int highwayNumber; int primaryNumber=0; highwayNumber = scnr.nextInt(); if (highwayNumber >= 1 && highwayNumber <= 999) if (highwayNumber <= 99) { if (highwayNumber % 2 == 0) System.out.println("I-" + highwayNumber + " is primary, going east/west."); else System.out.println("I-" + highwayNumber + " is primary, going north/south."); } else { primaryNumber = highwayNumber; highwayNumber %= 100; System.out.println(primaryNumber + " is an auxiliary highway, serving primary highway " + highwayNumber); } else { System.out.println(primaryNumber + " is not a valid interstate highway number."); } } } These are the results I am getting:   Input 90 Your output I-90 is primary, going east/west.   Expected output I-90 is primary, going east/west.   Input 290 Your output 290 is an auxiliary highway, serving primary highway 90 Expected output I-290 is auxiliary, serving I-90, going east/west.   Input 0 Your output 0 is not a valid interstate highway number. Expected output 0 is not a valid interstate highway number.   Input 5 Your output I-5 is primary, going north/south. Expected output I-5 is primary, going north/south.     Input 405 Your output 405 is an auxiliary highway, serving primary highway 5 Expected output I-405 is auxiliary, serving I-5, going north/south.     Input 1000 Your output 0 is not a valid interstate highway number. Expected output 1000 is not a valid interstate highway number.

C++ Programming: From Problem Analysis to Program Design
8th Edition
ISBN:9781337102087
Author:D. S. Malik
Publisher:D. S. Malik
Chapter8: Arrays And Strings
Section: Chapter Questions
Problem 21PE
icon
Related questions
icon
Concept explainers
Question

Primary U.S. interstate highways are numbered 1-99. Odd numbers (like the 5 or 95) go north/south, and evens (like the 10 or 90) go east/west. Auxiliary highways are numbered 100-999, and service the primary highway indicated by the rightmost two digits. Thus, I-405 services I-5, and I-290 services I-90.

Given a highway number, indicate whether it is a primary or auxiliary highway. If auxiliary, indicate what primary highway it serves. Also indicate if the (primary) highway runs north/south or east/west.

Ex: If the input is:

90

the output is:

I-90 is primary, going east/west.

Ex: If the input is:

290

the output is:

I-290 is auxiliary, serving I-90, going east/west.

Ex: If the input is:

0

or any number not between 1 and 999, the output is:

0 is not a valid interstate highway number.

This is the code I am using, but something is not functioning properly.

import java.util.Scanner;

public class LabProgram{
public static void main(String[] args) {
Scanner scnr = new Scanner(System.in);
int highwayNumber;
int primaryNumber=0;

highwayNumber = scnr.nextInt();


if (highwayNumber >= 1 && highwayNumber <= 999)

if (highwayNumber <= 99) {


if (highwayNumber % 2 == 0)

System.out.println("I-" + highwayNumber + " is primary, going east/west.");

else

System.out.println("I-" + highwayNumber + " is primary, going north/south.");
}

else
{
primaryNumber = highwayNumber;
highwayNumber %= 100;
System.out.println(primaryNumber + " is an auxiliary highway, serving primary highway " + highwayNumber);



}
else
{

System.out.println(primaryNumber + " is not a valid interstate highway number.");
}

}
}

These are the results I am getting:
 
Input
90
Your output
I-90 is primary, going east/west.
 
Expected output
I-90 is primary, going east/west.
 
Input
290
Your output
290 is an auxiliary highway, serving primary highway 90
Expected output
I-290 is auxiliary, serving I-90, going east/west.
 
Input
0
Your output
0 is not a valid interstate highway number.
Expected output
0 is not a valid interstate highway number.
 
Input
5
Your output
I-5 is primary, going north/south.
Expected output
I-5 is primary, going north/south.
 
 
Input
405
Your output
405 is an auxiliary highway, serving primary highway 5
Expected output
I-405 is auxiliary, serving I-5, going north/south.
 
 
Input
1000
Your output
0 is not a valid interstate highway number.
Expected output
1000 is not a valid interstate highway number.
Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 3 steps with 7 images

Blurred answer
Knowledge Booster
Control Structure
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
C++ Programming: From Problem Analysis to Program…
C++ Programming: From Problem Analysis to Program…
Computer Science
ISBN:
9781337102087
Author:
D. S. Malik
Publisher:
Cengage Learning
C++ for Engineers and Scientists
C++ for Engineers and Scientists
Computer Science
ISBN:
9781133187844
Author:
Bronson, Gary J.
Publisher:
Course Technology Ptr
COMPREHENSIVE MICROSOFT OFFICE 365 EXCE
COMPREHENSIVE MICROSOFT OFFICE 365 EXCE
Computer Science
ISBN:
9780357392676
Author:
FREUND, Steven
Publisher:
CENGAGE L