Write a java console application for a lawn-mowing service for N lawns.

Assignment 1

Due date: Week 6 Friday (24-Aug-2017) 11:45 PM AEST

Weighting: 20%

Assignment task Write a java console application for a lawn-mowing service for N lawns. N should be declared as a constant

and it should be equal to the largest digit of your student ID number (e.g. if your ID number is S143261 then

N should be equal to 6 and you can declare it as final int N=6). The weekly fee for mowing a lawn is shown

below in Table 1.

Table 1. Weekly Fee for Lawn Mowing

Lawn Area Weekly Fee ($)

Lawn under 500 square meter 40

500 square meter or more but under 900 square meter 60

900 square meter or more but under 1500 square meter 75

1500 square meter or over 100

The application should ask the user to enter the area for each lawn (total N lawns) and calculate the weekly

fee for lawn mowing. The application should display the fee for each lawn as shown in the example below.

At the end of the Nth lawn, the details such as total weekly fee, lowest weekly fee, highest weekly fee, and

lawn number with highest monthly fee should be displayed. The lowest fee is calculated by finding the

lowest value from weekly fee for N lawns. The highest monthly fee is calculated by finding the highest

value from weekly fee for N lawns. The average lawn moving fee is calculated by dividing the total weekly

fee with the total number of lawns. The monthly fee is calculated by multiplying the weekly fee by 4.

Example for N=4

Enter the area for lawn 1: 450

The weekly fee for lawn 1 is $40

Enter the area for lawn 2: 600

The weekly fee for lawn 2 is $60

Enter the area for lawn 3: 1200

The weekly fee for lawn 3 is $75

Enter the area for lawn 4: 3000

The weekly fee for lawn 4 is $100

————————————————–Report—————————————————–

Total weekly lawn mowing fee: $275

Lowest weekly lawn mowing fee: $40

Highest weekly lawn mowing fee: $100

Average weekly lawn mowing fee: $68.75

Lawn number with highest monthly fee: 4

——————————————————————————————————————-

Your application is to follow the same format for input and output as in the example above, but with

customised welcome and exit messages.

The application is to use the following classes.

public class Lawn

{

public Lawn()

{

// constructor }

public double lawnMowingFee(double area)

{

// code to calculate lawn mowing fee goes here

}

public int lawnNumber(double fee)

{

// code to determine lawn number with highest monthly fee

}

}

public class LawnTest

{

public static void main(String[] args)

{

// local variable declarations go here

// display welcome message

// loop to input area, calculate and display fee

// generate and display report

// display exit message

}

}

Submission

You must submit the following three files using the Moodle online submission system.

 Lawn.java

 LawnTest.java

 Report.docx (this file contains a brief report that includes student name, student ID number, course

name, course code and test results (screenshots/test cases with results to show that your application is

working correctly))

Important Note

 You should start your assignment as early as possible. Your tutor will be checking your progress in

weeks 4 and 5.

 You should not show your source code and report to any other student. You should not ask anyone to do

your assignment. Please read CQU’s plagiarism guidelines.

Marking Criteria

Criteria

Marks

Allocated

1 Variables, constants and types

Declaring and using variables and constants /2

2 Objects and classes

Creating/declaring and using objects and classes /1

3 Loops

Using loops and conditions /1

4 If statements

Using if statements and conditions /1

5 Methods

Declaring and using methods /2

6 Inputs and Outputs

Reading input /1

Displaying results /1

7 Overall logic and program

Calculating quantities (0 mark if program doesn’t compile) /5

Spacing and indentation conventions /1

Naming conventions /1

Comments /1

8 Report

Test results (0 mark if program doesn’t compile) /2

Presentation(fonts, spaces, information, language) /1

Sub-Total /20

Penalties

Late submission : 5% (1 mark) / day or part of a day

Total /20