RBE104TC C/C++Programming Language Assignment 1

Hello, if you have any need, please feel free to consult us, this is my wechat: wx91due

RBE104TCC/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 inC/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-5screenshots that show the code and running results as evidence, particularly highlighting any errors or situations you believe are valuable to document. The corresponding 3-5versions 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 cncountered or unexpected crrors, and your solutions to thosc issucs.
  • 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 ONEC 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 adecimal form of “678.345” is “2A6.5851EB";
3)The double number with the hexadecimal form is represented by a string (or a character y), 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.5C), which should be within the range of 34.0°
    • A height in centimeters (e.g. 177cm), which should be within the range of 140cm to C to 44.0℃. 230cm, with an accuracy of lcm.
    • 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.0C will be considered sick);
  • Calculate the patient'sBMI(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°℃, 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:
BMI=weight (kg)/height (m)²


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, cncompassing 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 Guidelinesavailable on the Learning Mall system.
  • The report must be saved inPDF 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 subscquent format:
    • StudentID_LastNameFirstName_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.


发表评论

电子邮件地址不会被公开。 必填项已用*标注