Introduction to Java Programming and Data Structures, Comprehensive Version Plus MyProgrammingLab with Pearson EText -- Access Card Package
bartleby

Concept explainers

Question
Book Icon
Chapter 12, Problem 12.1PE
Expert Solution & Answer
Check Mark
Program Plan Intro

Program to throw the NumberFormatException exception

Program plan:

  • Import the required packages into the program.
    • Create a class Exercise12_01 to throw the NumberFormatException exception.
    • In the main() method,
      • Declare the required variables.
      • Check whether the length of argument is not equal to 3. If yes, display error message.
      • In try block, assign the first argument value to variable.
      • In catch block, catch the exception if error occurs.
      • In try block, assign the third argument value to variable.
      • In catch block, catch the exception if error occurs.
      • Match the argument 1 with character 0 using switch case.
        • If case "+" matches, then add the two numbers and stores the result.
        • If case "-" matches, then subtract the two numbers and stores the result.
        • If case "." matches, then multiply the two numbers and stores the result.
        • If case "/" matches, then divide the two numbers and stores the result.
      • Display the result.
Program Description Answer

The below program demonstrates how to operate mathematical operations and throw a NumberFormatException exception if error occurs.

Explanation of Solution

Program:

Filename: Exercise12_01.java

//Class definition

public class Exercise12_01

{

//Main method

public static void main(String[] args)

{

//Declare and initialize variables

int num1, num2, result = 0;

/*Check whether the length of argument is not equal to 3. */

if (args.length != 3) {

//Display error message

System.out.println("please use java Exercise12_01 operand1 operator operand2");

//Exit the program

System.exit(1);

}

//In try block

try {

//Assign the argument 0 as "num1"

num1 = Integer.parseInt(args[0]);

}

//In catch block

catch (NumberFormatException ex) {

//Display the exception

System.out.println("Wrong Input: " + args[0]);

return;

}

//In try block

try {

//Assign the argument 2 as "num2"

num2 = Integer.parseInt(args[2]);

}

//In catch block

catch (Exception ex) {

//Display the exception

System.out.println("Wrong Input: " + args[2]);

return;

}

//Match the argument 1 with character 0

switch (args[1].charAt(0)) {

//If case "+" matches

case '+':

/*Add the num1 and num2 and stores the result */

result = num1 + num2;

//Break the program

break;

//If case "-" matches

case '-':

/*Subtract the num2 from num1 and stores the result. *

result = num1 - num2;

;

//Break the program

break;

//If case "." matches

case '.':

/*Multiply the num1 with num2 and stores the result */

result = num1 * num2;

;

//Break the program

break;

//If case "/" matches

case '/':

/*Divide the num1 by num2 and stores the result */

result = num1 / num2;

;

}

//Display the calculated result

System.out.println(args[0] + " " + args[1] + " " + args[2] + " = " + result);

}

}

Sample Output

Command to run the program:

java Exercise12_01 4 + 5

4 + 5 = 9

Additional Output:

java Exercise12_01 4 - 5

4 – 5 = -1

java Exercise12_01 4x - 5

Wrong Input: 4x

Want to see more full solutions like this?

Subscribe now to access step-by-step solutions to millions of textbook problems written by subject matter experts!
Students have asked these similar questions
Need help writing code to answer this question in Python! (image attached)
Need help with python code! How do I simplify my code for a beginner to understand, simple fixed format and centering? Such as:  print(f"As an int variable: {age_int:^7}") print(f"In numeric binary: {age_int:^7b}") My Code:name = input("Enter your name: ")print(f"In text name is: {' '.join(name)}")decimal_values = []binary_values = []for letter in name:   ascii_val = ord(letter)   binary_val = format(ascii_val, '08b')   decimal_values.append(str(ascii_val))   binary_values.append(binary_val)# Loop through each letter:print(f"In ASCII decimal: {' '.join(decimal_values)}")print(f"In ASCII binary: {' '.join(binary_values)}")# Ageage_str = input("Enter your age: ")age_int = int(age_str)print(f"As a string \"{age_str}\": {' '.join(age_str)}")age_decimal_values = []age_binary_values = []for digit in age_str:   ascii_val = ord(digit)   binary_val = format(ascii_val, '07b')   age_decimal_values.append(str(ascii_val))   age_binary_values.append(binary_val)print(f"In ASCII decimal: {'…
Don't use chatgpt or any other AI

Chapter 12 Solutions

Introduction to Java Programming and Data Structures, Comprehensive Version Plus MyProgrammingLab with Pearson EText -- Access Card Package

Chapter 12.4, Problem 12.4.3CPChapter 12.4, Problem 12.4.4CPChapter 12.4, Problem 12.4.5CPChapter 12.4, Problem 12.4.6CPChapter 12.4, Problem 12.4.7CPChapter 12.4, Problem 12.4.8CPChapter 12.4, Problem 12.4.9CPChapter 12.4, Problem 12.4.10CPChapter 12.4, Problem 12.4.11CPChapter 12.4, Problem 12.4.12CPChapter 12.5, Problem 12.5.1CPChapter 12.6, Problem 12.6.1CPChapter 12.7, Problem 12.7.1CPChapter 12.8, Problem 12.8.1CPChapter 12.9, Problem 12.9.1CPChapter 12.9, Problem 12.9.2CPChapter 12.10, Problem 12.10.1CPChapter 12.10, Problem 12.10.2CPChapter 12.10, Problem 12.10.3CPChapter 12.11, Problem 12.11.1CPChapter 12.11, Problem 12.11.2CPChapter 12.11, Problem 12.11.3CPChapter 12.11, Problem 12.11.4CPChapter 12.11, Problem 12.11.5CPChapter 12.11, Problem 12.11.6CPChapter 12.11, Problem 12.11.7CPChapter 12.11, Problem 12.11.8CPChapter 12.12, Problem 12.12.1CPChapter 12.13, Problem 12.13.1CPChapter 12.13, Problem 12.13.2CPChapter 12, Problem 12.1PEChapter 12, Problem 12.2PEChapter 12, Problem 12.3PEChapter 12, Problem 12.4PEChapter 12, Problem 12.5PEChapter 12, Problem 12.6PEChapter 12, Problem 12.7PEChapter 12, Problem 12.8PEChapter 12, Problem 12.9PEChapter 12, Problem 12.10PEChapter 12, Problem 12.11PEChapter 12, Problem 12.12PEChapter 12, Problem 12.13PEChapter 12, Problem 12.14PEChapter 12, Problem 12.15PEChapter 12, Problem 12.16PEChapter 12, Problem 12.17PEChapter 12, Problem 12.18PEChapter 12, Problem 12.19PEChapter 12, Problem 12.20PEChapter 12, Problem 12.21PEChapter 12, Problem 12.22PEChapter 12, Problem 12.23PEChapter 12, Problem 12.24PEChapter 12, Problem 12.25PEChapter 12, Problem 12.26PEChapter 12, Problem 12.27PEChapter 12, Problem 12.28PEChapter 12, Problem 12.29PEChapter 12, Problem 12.30PEChapter 12, Problem 12.31PEChapter 12, Problem 12.32PE
Knowledge Booster
Background pattern image
Computer Science
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
Text book image
C++ Programming: From Problem Analysis to Program...
Computer Science
ISBN:9781337102087
Author:D. S. Malik
Publisher:Cengage Learning
Text book image
Microsoft Visual C#
Computer Science
ISBN:9781337102100
Author:Joyce, Farrell.
Publisher:Cengage Learning,
Text book image
Programming Logic & Design Comprehensive
Computer Science
ISBN:9781337669405
Author:FARRELL
Publisher:Cengage
Text book image
EBK JAVA PROGRAMMING
Computer Science
ISBN:9781337671385
Author:FARRELL
Publisher:CENGAGE LEARNING - CONSIGNMENT
Text book image
C++ for Engineers and Scientists
Computer Science
ISBN:9781133187844
Author:Bronson, Gary J.
Publisher:Course Technology Ptr
Text book image
Programming with Microsoft Visual Basic 2017
Computer Science
ISBN:9781337102124
Author:Diane Zak
Publisher:Cengage Learning