联系方式

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

您当前位置:首页 >> C/C++编程C/C++编程

日期:2024-10-15 09:28

RBE104TC C/C++ Programming Language

Assignment 1

Contribution to the Overall Marks 30%

Issue Date

Submission Deadline 13th October 2024

Assignment Overview:

This assignment is geared towards assessing fundamental coding concepts in C/C++ and

initiating the process of code development using the software development process (SDP)

discussed in relevant lectures.

In composing the SDP report [in English], we request you to fulfil the following criteria:

• Design: Clearly explain your understanding of the given problem and specify a sequence of

steps necessary to accomplish the task (illustrated through flowcharts).

• Coding Progress: Attach 3-5 screenshots that show the code and running results as evidence,

particularly highlighting any errors or situations you believe are valuable to document. The

corresponding 3-5 versions of the C code should also be saved. All files must clearly

demonstrate the progression of your programming task from the initial stage to the final version.

• Analysis: Describe the files submitted in the Coding Progress section. Discuss the expected

results, any encountered or unexpected errors, and your solutions to those issues.

• Implementation: The C code must be submitted in a separate file. Please specify the file

name and provide instructions for user operation.

• Testing: Describe how you tested and validated your code for required functionalities, as

well as its robustness.

Exercise 1 (50%):

Write ONE C Program to accomplish the following task: Convert a double number to its

hexadecimal form.

Constraints:

1). The double number x is located between 0 and 1000 (0 <= x < =1000), e.g. 678.345;

2). The double number with the hexadecimal form contains 6 significant digits. e.g. The

hexadecimal form of “678.345” is “2A6.5851EB”;

3). The double number with the hexadecimal form is represented by a string (or a character

array), e.g. “2A6.5851EB”.

4). If illegal user input is detected, the software should be capable of informing the user and

enabling re-input to meet the software robustness requirement;

Advice:

It is strongly suggested that you should read the relevant lecture notes on the Learning Mall

before you write down your own codes. The note will help you design a correct program,

especially the design of loop structures and the usage of the arrays.

The possible steps are as follows:

1). Split a double number into the integer part and the fractional part;

2). Convert the integer part into its hexadecimal form;

3). Convert the fractional part into its hexadecimal form;

4). Combine both parts into a string;

Exercise 2 (50%):

Write a C program that can perform the following operations:

• Read the following from the keyboard and store them in appropriate variables:

• A full name (e.g. John Smith);

• A telephone number (e.g. 12345678900) assume all phone numbers are with 11 digits;

• A 2-digit decimal number as the Patient ID (e.g. 45);

• A temperature in degrees Celsius (e.g. 36.5°C), which should be within the range of 34.0°

C to 44.0°C.

• A height in centimeters (e.g. 177cm), which should be within the range of 140cm to

230cm, with an accuracy of 1cm.

• A weight in kilograms (e.g. 85.0kg), which should be within the range of 40.0kg to

140.0kg.

• Print the patient's ID on the screen in decimal, octal, and hexadecimal formats (e.g., 45,

55, 2D);

• Convert the temperature from degrees Celsius to degrees Fahrenheit and degrees Kelvin,

store the values in appropriate variables rounded to the nearest whole number, and print

them on the screen (e.g., 10°C, 50°F, 283K);

• Determine if the patient is sick based on their temperature (temperatures higher than

37.2°C or lower than 36.0°C will be considered sick);

• Calculate the patient's BMI (Body Mass Index) and determine if they are severely

overweight, overweight, normal, underweight, or severely underweight;

• Print a conclusion, for example: "The patient's name is John Smith, his phone number is 12345678900, his patient ID is 45. His current temperature is 36.5°C, not sick. His height

is 177mm, weight is 85.0kg. He is overweight."

If illegal user input is detected, the software should be capable of informing the user and

enabling re-input to meet the software robustness requirement;

Hint:

The BMI formula is:

The BMI Categorization is:

Less than 16 Severely Underweight

Between 16 and 18.5 Underweight

Between 18.5 and 25 Normal

Between 25 and 30 Overweight

Large than 30 Severely Overweight

 

What should be submitted?

• You should submit the followings two:

1. A concise report (with text spanning a few pages) accompanied by C source codes. This

report should delve into the specifics for each question:

- Detail SDP steps 1 to 3 within the report (Design + Coding Progress + Analysis),

accounting for 30% of the evaluation.

- Encompass SDP step 4 (Implementation + Robustness) with your source code. Your code

should correspond with the final screenshot provided in the Coding Progress section and

include appropriate comments. Implementation contributes 35% while Robustness adds

5%.

- Elaborate on SDP step 5 (Testing), elucidating how you validated the correctness,

robustness, and thoroughness of your codes. Employ screenshots and ample explanations

as verification, encompassing 20% of the evaluation.

- The overall quality of the report accounts for 10% of the evaluation.

2. All C/C++ source code files, including files from different stages corresponding to the

screenshots.

• For a comprehensive grading scheme, please consult the Marking Guidelines available on

the Learning Mall system.

• The report must be saved in PDF format. Place the report in the same folder with source code

files and compress the folder into a single zipped file. Your final submission should include:

- Zipped file containing:

- The report

- The source codes

• The naming convention for the submitted Report and source code files should adhere to the

subsequent format:

- StudentID_LastName_FirstName_AssignmentID.pdf

- StudentID_AssignmentNumber_ExerciseID_SSScreenShotNumber.c/cpp

- StudentID_LastName_FirstName_AssignmentID.zip

As an illustration:

The report and C source files would be placed in the same folder as follows:

The folder would be compressed to the ultimate zipped submission file, and it would be named: • 1234567_Albert_Einstein_1.zip

How the work should be submitted?

Submission should take place electronically through the Learning Mall system, enabling us to

execute your software during the assessment. Additionally, feedback will be provided via the

same Learning Mall system.


相关文章

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

python代写
微信客服:codinghelp