Java: An Introduction to Problem Solving and Programming (7th Edition)
Java: An Introduction to Problem Solving and Programming (7th Edition)
7th Edition
ISBN: 9780133766264
Author: Walter Savitch
Publisher: PEARSON
bartleby

Videos

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

Lap Timer using Applet

Program Plan:

Filename: “LapTimerApplication.java”

  • Import the required packages.
  • Declare the class “LapTimerApplication”.
    • Declare the required variables.
    • Define the constructor.
      • Set the window size
      • Close the window.
      • Create an object for “Container” class.
      • Initially set the background color as white.
      • Set the layout.
      • Create the buttons.
      • Add the action to these buttons.
      • Add the buttons on the window screen.
      • Create the object for the labels.
      • Add the label on the window screen.
      • Create an object for the “LapTimer” class.
    • Declare the “actionPerformed” method.
      • Declare the required variables with the values.
      • If the action command is start, then execute the “if” condition.
        • Inside the “try” block, call the method “start ()” and set the labels.
        • In catch block, set the error message.
          • If the action command is lap, then execute the “if” condition.
            • Inside the “try” block, call the method “markLap ()” and set the labels.
            • In catch block, set the error message.
    • Declare the “main ()” method.
      • Create an object for “LapTimer” class.
      • Show the window.

Filename: “LapTimer.java”

  • Import required package
  • Define the class “LapTimer”.
    • Declare required private variables “running”, “startTime”, “lapStart”, “lapTime”, “totalTime”, “lapsCompleted”, “lapsInRace”.
    • Define the constructor.
      • Assign the values.
    • Define the method “start ()”.
      • Check the condition “running == true || lapsCompleted > 0”.
        • Throw “TimerException” exception with a message.
          • Assign “true” to the variable “running”.
          • Calculate the value of “startTime”.
          • Assign the value of “startTime” to “lapStart”.
    • Define the method “markLap ()”.
      • Check if value of “running” is “false”.
        • Check if laps completed are equal to 0.
          • Throw “”TimerException exception with a message.
            • Increment the value of “lapsCompleted”.
            • Get the current time and store it in a variable “currentTime”.
            • Calculate “lapTime” by subtracting “lapStart” from “currentTime”.
            • Calculate “totalTime” by subtracting “startTime” from “currentTime”.
            • Assign the value of “currentTime” to “lapStart”.
            • Check if the value of “lapsCompleted” and “lapsInRace” are equal.
              • Assign “false” to “running”.
    • Define the method “getLapTime ()”.
      • Check if “lapsCompleted” is 0.
        • Throw “”TimerException exception with a message.
            • Return “lapTime”.
    • Define the method “getTotalTime ()”.
      • Check if “lapsCompleted” is 0.
        • Throw “”TimerException exception with a message.
            • Return “totalTime”.
    • Define the method “getLapsRemaining ()”.
      • Return the value.
    • Define the “main ()” function.
      • Declare a variable and assign it with a value.
      • Create an object for the class “LapTimer”.
      • Call the function “start ()”.
      • Call the function “markLap ()”.
      • Print the number of laps.
      • Print the lap time by calling the function “getLapTime ()”.
      • Print the total time by calling the function “getTotalTime ()”.
      • Print the remaining number of laps by calling the function “getLapsRemaining ()”.

Filename: “TimerException.java”

  • Define an exception class named “TimerException”.
    • Define a parameterized constructor for the class.
      • Call the parent class’s method by passing a message.

Blurred answer
Students have asked these similar questions
We are considering the RSA encryption scheme. The involved numbers are small, so the communication is insecure.  Alice's public key (n,public_key) is (247,7). A code breaker manages to factories  247 = 13 x 19  Determine Alice's secret key. To solve the problem, you need not use the extended Euclid algorithm, but you may assume that her private key is one of the following numbers 31,35,55,59,77,89.
Consider the following Turing Machine (TM). Does the TM halt if it begins on the empty tape? If it halts, after how many steps? Does the TM halt if it begins on a tape that contains a single letter A followed by blanks? Justify your answer.
Pllleasassseee ssiiirrrr soolveee thissssss questionnnnnnn

Chapter 9 Solutions

Java: An Introduction to Problem Solving and Programming (7th Edition)

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
Database System Concepts
Computer Science
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:McGraw-Hill Education
Text book image
Starting Out with Python (4th Edition)
Computer Science
ISBN:9780134444321
Author:Tony Gaddis
Publisher:PEARSON
Text book image
Digital Fundamentals (11th Edition)
Computer Science
ISBN:9780132737968
Author:Thomas L. Floyd
Publisher:PEARSON
Text book image
C How to Program (8th Edition)
Computer Science
ISBN:9780133976892
Author:Paul J. Deitel, Harvey Deitel
Publisher:PEARSON
Text book image
Database Systems: Design, Implementation, & Manag...
Computer Science
ISBN:9781337627900
Author:Carlos Coronel, Steven Morris
Publisher:Cengage Learning
Text book image
Programmable Logic Controllers
Computer Science
ISBN:9780073373843
Author:Frank D. Petruzella
Publisher:McGraw-Hill Education
6 Stages of UI Design; Author: DesignerUp;https://www.youtube.com/watch?v=_6Tl2_eM0DE;License: Standard Youtube License