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
Question
Book Icon
Chapter 8, Problem 4PP
Program Plan Intro

Displaying right triangle, rectangle, and square along with their areas and perimeters

Program Plan:

Filename: Test.java

  • • Define main function.
    • ○ Create the objects for “RightTriangle”, “Rectangle”, and “Square” classes and pass the input value to the respective methods.
    • ○ Call the “drawHere” method with “RightTriangle” object “rt”.
    • ○ Call the “findArea” and “findCircumference” methods with “RightTriangle” object “rt”.
    • ○ Call the “drawHere”, and “drawAt” methods with “Rectangle” object “r”.
    • ○ Call the “findArea” and “findCircumference” methods with “Rectangle” object “r”.
    • ○ Call the “drawHere”, and “drawAt” methods with “Square” object “s”.
    • ○ Call the “findArea” and “findCircumference” methods with “Square” object “s”.
    • ○ Display the all the outputs.

Filename: RightTriangle.java

  • • Define the “RightTriangle.java” class extends from “ShapeBase” class that implements “ShapeInterface”.
  • • Declare the required variables.
  • • Define the default constructor, and constructor for the class.
  • • Define the “set” method.
    • ○ Set the value.
  • • Define “drawHere” method.
    • ○ Call the “drawTop” method.
  • • Define the “drawTop” method.
    • ○ Declare the variable “startOfLine” and assign the value of offset plus base divided by 2.
    • ○ Call the “skipSpaces()” method with “startOfLine” value.
    • ○ Display the “*” character.
    • ○ Declare the variable “lineCount” and assign the value of base divided by 2 minus 1.
    • ○ Declare the “insideWidth” with value 1.
    • ○ The “for” condition is used to display the “*” character in triangle shape.
      • ■ Decrement the “startOfLine” value.
      • ■ Call the “skipSpaces()” method with “startOfLine” value.
      • ■ Display the “*” character.
      • ■ Call the “skipSpaces()” method with “insideWidth” value.
      • ■ Display the “*” character.
      • ■ Increment the “insideWidth” value by 1.
        • ○ Call the “drawBase” method with an argument.
  • • Define “drawBase” method.
    • ○ Call the “skipSpaces()” method.
    • ○ Display the “*” character in base of the triangle.
  • • Define “skipSpaces()” method.
    • ○ Display the space.
  • • Define the “findArea” method.
    • ○ Return the area of right triangle.
  • • Define the “findCircumference” method.
    • ○ Return perimeter of the right triangle.

Filename: Rectangle.java

  • • Define the “Rectangle.java” class extends from “ShapeBase” class that implements “ShapeInterface”.
  • • Include all the methods in the Listing 8.13 in chapter 8.
  • • Define another constructor with two parameters.
    • ○ Set the values.
  • • Define the “findArea” method.
    • ○ Return the area of rectangle.
  • • Define the “findCircumference” method.
    • ○ Return perimeter of the rectangle.

Filename: Square.java

  • • Define the “Sqaure.java” class which extends from the “Rectangle” class that implements “ShapeInterface”.
  • • Declare the required variables.
  • • Define the constructor for the class.
  • • Define the accessor and mutator methods.
  • • Define the “findArea” method.
    • ○ Return the area of square.
  • • Define the “findCircumference” method.
    • ○ Return perimeter of the square.

Filename: ShapeInterface.java

Define the interface “SpaceInterface”.

  • • Declare the “setOffset()” method.
  • • Declare the “getOffset()” method.
  • • Declare the “drawAt()” method.
  • • Declare the “drawHere()” method.

Blurred answer
Students have asked these similar questions
Lab 07: Java Graphics (Bonus lab) In this lab, we'll be practicing what we learned about GUIs, and Mouse events. You will need to implement the following: ➤ A GUI with a drawing panel. We can click in this panel, and you will capture those clicks as a Point (see java.awt.Point) in a PointCollection class (you need to build this). о The points need to be represented by circles. Below the drawing panel, you will need 5 buttons: о An input button to register your mouse to the drawing panel. ○ о о A show button to paint the points in your collection on the drawing panel. A button to shift all the points to the left by 50 pixels. The x position of the points is not allowed to go below zero. Another button to shift all the points to the right 50 pixels. The x position of the points cannot go further than the You can implement this GUI in any way you choose. I suggest using the BorderLayout for a panel containing the buttons, and a GridLayout to hold the drawing panel and button panels.…
If a UDP datagram is sent from host A, port P to host B, port Q, but at host B there is no process listening to port Q, then B is to send back an ICMP Port Unreachable message to A. Like all ICMP messages, this is addressed to A as a whole, not to port P on A. (a)  Give an example of when an application might want to receive such ICMP messages. (b)  Find out what an application has to do, on the operating system of your choice, to receive such messages. (c)  Why might it not be a good idea to send such messages directly back to the originating port P on A?
Discuss how business intelligence and data visualization work together to help decision-makers and data users. Provide 2 specific use cases.

Chapter 8 Solutions

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

Ch. 8.2 - Rewrite the definition of the method reset for the...Ch. 8.2 - Can an object be referenced by variables of...Ch. 8.2 - What is the type or types of the variable(s) that...Ch. 8.2 - Prob. 14STQCh. 8.2 - Prob. 15STQCh. 8.2 - Consider the code below, which was discussed in...Ch. 8.2 - Prob. 17STQCh. 8.3 - Prob. 18STQCh. 8.3 - Prob. 19STQCh. 8.3 - Is overloading a method name an example of...Ch. 8.3 - In the following code, will the two invocations of...Ch. 8.3 - In the following code, which definition of...Ch. 8.4 - Prob. 23STQCh. 8.4 - Prob. 24STQCh. 8.4 - Prob. 25STQCh. 8.4 - Prob. 26STQCh. 8.4 - Prob. 27STQCh. 8.4 - Prob. 28STQCh. 8.4 - Are the two definitions of the constructors given...Ch. 8.4 - The private method skipSpaces appears in the...Ch. 8.4 - Describe the implementation of the method drawHere...Ch. 8.4 - Is the following valid if ShapeBaSe is defined as...Ch. 8.4 - Prob. 33STQCh. 8.5 - Prob. 34STQCh. 8.5 - What is the difference between what you can do in...Ch. 8.5 - Prob. 36STQCh. 8 - Consider a program that will keep track of the...Ch. 8 - Implement your base class for the hierarchy from...Ch. 8 - Draw a hierarchy for the components you might find...Ch. 8 - Suppose we want to implement a drawing program...Ch. 8 - Create a class Square derived from DrawableShape,...Ch. 8 - Create a class SchoolKid that is the base class...Ch. 8 - Derive a class ExaggeratingKid from SchoolKid, as...Ch. 8 - Create an abstract class PayCalculator that has an...Ch. 8 - Derive a class RegularPay from PayCalculator, as...Ch. 8 - Create an abstract class DiscountPolicy. It should...Ch. 8 - Derive a class BulkDiscount from DiscountPolicy,...Ch. 8 - Derive a class BuyNItemsGetOneFree from...Ch. 8 - Prob. 13ECh. 8 - Prob. 14ECh. 8 - Create an interface MessageEncoder that has a...Ch. 8 - Create a class SubstitutionCipher that implements...Ch. 8 - Create a class ShuffleCipher that implements the...Ch. 8 - Define a class named Employee whose objects are...Ch. 8 - Define a class named Doctor whose objects are...Ch. 8 - Create a base class called Vehicle that has the...Ch. 8 - Create a new class called Dog that is derived from...Ch. 8 - Define a class called Diamond that is derived from...Ch. 8 - Prob. 2PPCh. 8 - Prob. 3PPCh. 8 - Prob. 4PPCh. 8 - Create an interface MessageDecoder that has a...Ch. 8 - For this Programming Project, start with...Ch. 8 - Modify the Student class in Listing 8.2 so that it...Ch. 8 - Prob. 8PPCh. 8 - Prob. 9PPCh. 8 - Prob. 10PP
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
EBK JAVA PROGRAMMING
Computer Science
ISBN:9781305480537
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