联系方式

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

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

日期:2020-12-29 11:24

SSK3100_Lab 6

GroupLab 7/ page 1

Faculty of Computer Science and Information Technology

SSK 3100 (Computer Programming I)

Semester I 2020/2021

Lab 6 (Week 9 & 10)

Topics:

Develop modular programs by dividing problems into sub-problems (Methods)

Learning Outcome:

At the end of this course, student should be able to :

? Construct program from PAC, IC and flowchart

? Construct program using methods

? Analyse and solve programming problem using stepwise refinement approach

Instructions:

1. Answer all questions below

2. Produce PAC, IC, flow chart and write a program for all questions.

3. Update IC and flowchart for questions 3 based on Lab Assignment 5

4. Demo question 1, 2 and 4 during lab session. Submit the assignment to the

demonstrator before the lab session ends during the submission week (Week 10)

** Copy or other forms of cheating are forbidden. The faculty has very strong rules about this,

and the penalties may be severe. The standard penalty for the first offence is to award 0 to all

parties concerned.

Questions

1. USING METHODS

Write a class that contains the following two methods:

// converts from Celcius to Fahrenheit

public static double CelciusToFahrenheit (double celcius)

// converts from Fahrenheit to Celcius

public static double FahrenheitToCelcius (double fahrenheit)

Round the result to two floating points number. The formula for conversion is:

fahrenheit = (9.0 / 5) * celcius + 32

Write a program that invokes these methods to display the following tables:

Celsius Fahrenheit | Fahrenheit Celsius

40.00 104.00 | 120.00 48.89

39.00 102.20 | 110.00 43.33

2. Write a program that reads two integer values into variables no1 and no2. Then displays

results of their differences (no2–no1 and no1–no2), quotients (no2/no1, and no1/no2) and

remainder no1%no2 and no2%no1. Create three (3) methods with two arguments which

are the two integer values and calculate the result from each process. Consider all method

no return value (void). Example output, if the numbers are 4 and 5, the line that shows their

output should displayed as:

5- 4 = 1

4 – 5 = -1

5 / 4 = 1

4 / 5 = 0

5 % 4 = 1

4 % 5 = 4

Use this format for each output line.

3. Update the following application software (continue your Lab 5, Question 4)

Assume that you are hired to develop application software which is designed specifically for

the SSK3100 Computer Programming course. The application software will be used among

the lecturers who taught the course. The application software should be able to calculate the

total marks accumulated by each student registered for the course. In order to calculate the

total marks, the lecturer need to input the marks obtained by each student for First Test,

Second Test, Assignments, and Final Examination. The following is the distribution of

percentages taken for the calculation of the total mark:

? First Test will take 20%. The full mark for the test is 50.

? Second Test will take 20%. The full mark for the test is 50.

? Assignments will take 30%. Assume that 3 assignments will be given for the student, and

each assignment carries 30 marks.

? Final Examination will take 30%. The full mark for the examination is 100.

The application software shall display all the marks for each evaluation, including total marks

in 100%. Find the grade based on the total mark. Grade is identified based on the following

table:

Total Marks (100%) Grade

Separate the problem into these following two sub problems:

a. calculate total marks (return total mark)

b. determine grade


Identify and propose another two sub problems from the main problem.

SSK3100_Lab 6

GroupLab 7/ page 3

4. Write a program with these 4 methods that does the followings:

a. Method readNumber : Reads five data (type double) from user and stores them

in variables a, b, c, d, and e.

b. Method calcTotalNumber : Calculates the total of the five data read (type double)

from question a. and stores the result in a variable named total. Return the total

to called method.

c. Method calcAverange : Calculates the average using return value from question

b. and stores the result in a variable named average. Return the average to

called method.

d. Method displayResults : Displays the all five numbers, total and average value.

Identify suitable parameters that need to be pass to the method. Use local

variables/parameters and return value for data sharing, instead of global variables.

5. Conversion Program

Write a program that asks the user to enter a money in MYR(Malaysian Ringgit). The

program will then present the following menu of selections:

1. Convert to USD (United State Dollar)

2. Convert to GBP (British Pound Sterling)

3. Convert to SAR (Saudi Riyal)

4. Quit the program

Write a void method named menuForMoneyConversion that displays the menu of

selections. This method should not accept any arguments. The program should continue to

display the menu until the user enters 4 to quit the program.

Depending on the user's selection, write an appropriate method based on the following

information:

? money convertion MYR to USD, which accepts the number of MYRMoney as an

argument. The method should display the argument converted to USDMoney. The

convertion formula: USDMoney = MYRMoney * 0.4006

? money convertion MYR to GBP, which accepts the number of MYRMoney as an

argument. The method should display the argument converted to GBPMoney. The

convertion formula: GBPMoney = MYRMoney * 0.2890

? money convertion MYR to SAR, which accepts the number of MYRMoney as an

argument. The method should display the argument converted to SARMoney. The

convertion formula: SARMoney = MYRMoney * 1.1293

? The program should not accept negative numbers for the money in MYRMoney.

? If the user selects and invalid choice from the menu, the program should display an

error message.


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