联系方式

  • QQ:99515681
  • 邮箱:99515681@qq.com
  • 工作时间:8:00-23:00
  • 微信:codinghelp

您当前位置:首页 >> Java编程Java编程

日期:2023-11-13 10:51

CS170 – Computer Applications for Business

Fall 2023 ? Assignment 8

Functions, Loops & Arrays

Due Date: Before 11:59 p.m. on Friday, November 10th

, 2023

Accept Until: Before 11:59 p.m. on Friday, November 17th, 2023

Evaluation: 25 points

Submit to Canvas: Assignment8.html file

Related Materials: JavaScript Reference Guide

Need help? TA office hours and Lab Support Schedule posted in Canvas

YOU ARE ON YOUR HONOR TO COMPLETE THIS ASSIGNMENT WITHOUT ASSISTANCE. You may

use your text and resources available to you through Canvas. You MAY NOT ask any human for

assistance, give assistance to anyone, or use any online tutoring service.

Use only the coding syntax taught to you during classes and recitations. The use of other

coding syntax may result in your work being marked for further review due to possible

unauthorized assistance.

Learning Objectives:

In general, this assignment is designed to practice JavaScript concepts from Chapters 17 top 20 of the

textbook. In particular, the following items will be useful for this assignment:

1. Creating functions

2. Calling functions

3. Creating and initializing arrays

4. Creating and using loops

5. Using Number() function to ensure values are treated as numbers and not strings

6. Using concatenation to add currency or percent symbols

7. Using toFixed(2) method to round to 2 decimal places

8. Reading and understanding the use of comments

To earn credit for this assignment:

1 You will create JavaScript code – embedded on an HTML file - according to the requirements listed

on the next pages.

2 Upload and submit a single html file (.html extension) containing the code required.

For your assignment to be graded, please include the following statement as a comment in the

<head> section of the program:

“ On my honor, I have neither received nor given any unauthorized assistance on this assignment.”

Page 1 of 6

PROBLEM DESCRIPTION

The Pet House provides pet boarding services. Pet owners can contract their services for a given number of

days while they are away on vacation or a business trip. As an option, the Pet House provides veterinarian

checkup. Their prices are as follows:

Pet Price per Day ($)

Dog 25

Cat 15

Hamster 10

Veterinarian Checkup (optional): $120 (fixed rate) regardless of the number of days contracted.

Sales Tax Rate: the Sales Tax for the program will be 7%.

You are required to implement the interface shown below which will use JavaScript to calculate the price for

each transaction. In addition, the program shall generate a report showing some statistical information.

A video of a sample run of this completed assignment is available on the assignment’s webpage on Canvas.

Note: See the illustration above and the sample video for examples of the inputs and

outputs required.

Page 2 of 6

Inputs needed:

Pet Type: one of the following three: dog, cat, hamster.

Number of Days: the number of boarding days contracted.

Veterinarian Checkup: optional service.

Output required (produced by the Process button):

Price: Number of Days x Price per Day (according to the table on this page) + Veterinarian Fee (if contracted).

Final Price: Price + applicable Sales Tax.

Note: Watch the Sample Video posted on Canvas (on the assignment 8 page)

After all the inputs are processed, the “Process Statistics” button will be clicked on to generate a

report.

The Report will be displayed on a separate webpage

Note: See the Sample Report on the following page

The Report will contain the following parts:

A Heading section with the following on separate lines:

The Pet House (as heading)

Statistics Report (as subheading)

The Date/Time of the Invoice

Below the Heading, the transactions listed with the following on each line:

Transaction: a sequential number starting with 1

Pet

Days

Vet Checkup

Transaction Price $

Final Price $

Below the transactions:

Total Transactions (before tax)

Average Transaction (before tax)

Total Days: total number of days contracted for all pets

Average Number of Days: average number of days contracted for all pets

Additional Note:

The document.write function should be used heavily to generate the report.

Requirements:

Arrays:

Use four additional parallel array to hold the information that will be displayed on the report: pet type, days

contracted, veterinarian checkup choice, price per transaction.

Page 3 of 6

Functions

Functions are required to:

Initialize the four parallel arrays that will hold the transaction data: one array to hold pet types, another

one to hold days contracted, the next one to hold the veterinarian checkup choice and the last one to

hold the price of the transaction.

? Since some arrays will contain strings and some other arrays will contain numbers, two functions will be

required to initialize arrays: one to set element of array to empty strings and another to set elements of

an array to 0. In addition, a third function that adds up the elements of an array will be needed.

Use loops to process the elements of the arrays.

SAMPLE TEST DATA and RESULTS

Inputs Pet Type Number of

Days

Veterinarian

Checkup

Dog 3 Yes

Cat 2 No

Hamster 5 Yes

Sample Report (based on inputs above):

Page 4 of 6

Additional Information:

? Be sure to include a comment with your name and section in the <head> part of your HTML code

program.

? To enter the date on the report use the syntax: var d = new Date(); which captures current Date/Time

on the d variable.

? Since the content of a text box which requires a number may be used in mathematical operations, use

the function Number() to ensure that the numeric input is treated as numeric data. Syntax example:

x = prompt(“Enter some number”);

x = Number(x);

Syntax example to round up a number to 2 decimals. Just add .toFixed(2) to the variable name

containing the number. Syntax example:

someNumber.toFixed(2)

To simplify the comparison of text data entered by the user, it is often easier to convert this

text to upper case using the notation below. Syntax example:

textVariable = textVariable.toUpperCase();

? Examples related to radio buttons (these are examples only, the name, id and onclick

content should be related to your code):

? Using radio buttons:

? <input type="radio" name="size” id="large" onclick='sizeData="L"'>

? <input type="radio" name="size” id="small" onclick='sizeData="S"'>

? In the example above, the two associated radio buttons, load the appropriate value to the variable

sizeData based on the user’s selection.

? Clearing radio buttons:

? The radio buttons in the previous example may be cleared by using the following syntax in a

program:

? large.checked = false;

? small.checked = false;

? Notice that the IDs of the radio buttons are used when clearing a radio button.


Point Values

Student name inserted as comment in the head section 1

Variable declarations and initializations 2

Inputs 3

Outputs 2

Arrays 4

Loops 3

Functions 3

IF statements 2

Program execution 5

Page 5 of 6

References:

Recitation sessions

Lectures

Fluency textbook Chapters 17 to 20

JavaScript Reference Guide

Page 6 of 6


版权所有:留学生编程辅导网 2020 All Rights Reserved 联系方式:QQ:99515681 微信:codinghelp 电子信箱:99515681@qq.com
免责声明:本站部分内容从网络整理而来,只供参考!如有版权问题可联系本站删除。 站长地图

python代写
微信客服:codinghelp