Question
Book Icon
Chapter 9, Problem 3PP
Program Plan Intro

Date format converter

Program plan:

“DateFormatConverter.java”:

  • Import required packages.
  • Define the class “DateFormatConverter”.
    • Declare required variables.
    • Define an array and assign it with the months.
    • Define the “main()” method.
      • Do until the user enters other than “Y” or “y”.
        • Inside the “try” block,
          • Get the date from the user.
          • Trim the input.
          • Store the month value in a variable.
          • Check if that value is less than 0.
            • Assign “false” to “validInput”.
            • Throw an exception.
          • Check if month value is less than 1 or greater than 12.
            • Assign “false” to “validInput”.
            • Throw an exception.
          • Otherwise,
            • Get the date value and store it in a variable.
            • Call the function “dayCheck()”.
        • Catch “MonthException”.
          • Print the error message.
        • Check if the function “validInput()” returns true.
          • Print the month name and its date.
        • Get the response from the user whether the user wants to do it again or not.
    • Give function to convert string to integer for month.
      • Get the position of “/”.
      • Check if that position is equal to 2.
        • Return the value.
      • Check if that position is equal to 1.
        • Return the integer value.
      • Otherwise,
        • Return -1.
    • Give function to convert string to integer for day.
      • Get the number of characters.
      • Check if that number is equal to 2.
        • Return the value.
      • Check if that number is equal to 1.
        • Return the integer value.
      • Otherwise,
        • Return -1.
    • Function definition to convert ASCII value to integer.
      • Switch to the digit.
        • Assign the value according to the character digit.
    • Give function definition to check the day.
      • Inside the “try” block,
        • Switch to the month number.
          • If the month number is 1, 3, 5, 7, 8, 10 and 12,
            • Check if the day is less than 1 or greater than 31.
              • Assign “false” to “validInput”.
              • Print the error message.
                • Otherwise,
                  • Assign “true” to “validInput”.
                • Break the case.
          • If the month number is 4, 6, 9 and 11,
            • Check if the day is less than 1 or greater than 30.
              • Assign “false” to “validInput”.
              • Print the error message.
                • Otherwise,
                  • Assign “true” to “validInput”.
                • Break the case.
          • If the month number is 2,
            • Check if the day is less than 1 or greater than 29.
              • Assign “false” to “validInput”.
              • Print the error message.
                • Otherwise,
                  • Assign “true” to “validInput”.
                • Break the case.
      • Inside the “catch” block for “DayException”, print the error message.

“DayException.java”:

  • Define the exception class “DayException”.
    • Define a default constructor.
      • Call the parent class’s method.
    • Define two parameterized constructors.
      • Call the parent class’s method by passing a message.

“MonthException.java”:

  • Define the exception class “MonthException”.
    • Define a default constructor.
      • Call the parent class’s method.
    • Define two parameterized constructors.
      • Call the parent class’s method by passing a message.

Blurred answer
Students have asked these similar questions
I need help making this EER diagram in Chen Notation.
In Java I have an input in a text file that I can't submit here. So, please use it as input.txt
Perceptual acuity, according to Ram Charan, explains how Ted Turner became the first CEO to recognize the potential of 24-hour news and thereby created CNN. a) True  b) False

Chapter 9 Solutions

Java: An Introduction To Problem Solving And Programming Plus Mylab Programming With Pearson Etext -- Access Card Package (8th Edition)

Knowledge Booster
Background pattern image
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
EBK JAVA PROGRAMMING
Computer Science
ISBN:9781337671385
Author:FARRELL
Publisher:CENGAGE LEARNING - CONSIGNMENT
Text book image
Programming Logic & Design Comprehensive
Computer Science
ISBN:9781337669405
Author:FARRELL
Publisher:Cengage
Text book image
C++ for Engineers and Scientists
Computer Science
ISBN:9781133187844
Author:Bronson, Gary J.
Publisher:Course Technology Ptr
Text book image
EBK JAVA PROGRAMMING
Computer Science
ISBN:9781305480537
Author:FARRELL
Publisher:CENGAGE LEARNING - CONSIGNMENT