Analysis and Design of a Procedural Programming Solution for Grade Management, Essays (university) of Introduction to Computing

Procedural Programming greenwich

Typology: Essays (university)

2019/2020

Uploaded on 09/08/2021

thong-ha-1
thong-ha-1 🇻🇳

5

(1)

1 document

1 / 13

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
1
Assignment Brief 1 (RQF)
Higher National Certificate/Diploma in Computing
Unit Number and Title
Unit 0: IT Fundamental & Procedural Programming
Academic Year
2021
Unit Tutor
Assignment Title
Analysis and Design a solution for procedural programming
problem
Issue Date
Submission Date
27/6/2021
IV Name & Date
Learning Outcomes and Assessment Criteria
Pass
Merit
Distinction
LO1 Understand the principles of procedural programming
LO2 Be able to design procedural programming solutions
P1 Provide an introduction
to procedural programming
M1 Discuss on
characteristics and features
of procedural programming
D1 Critically evaluate
the design of your
solution against the
characteristics and
features of procedural
programming.
P2 Identify the program
units and data and file
structures required to
implement a given design
M2 Review the design of a
procedural programming
solution.
P3. Design a procedural
programming solution for a
given problem
Assignment Brief
Scenario:
A math teacher wants to manage grades of a class. He asks you to help him to write a small
application to do that. He needs to enter student IDs, student’s grades and store these
information into 2 separate arrays (integer array for IDs and float array for grades). Then
he needs to print all student IDs together with their grades. Finally, he needs to know
which student has highest grade and lowest grade. Your program should be menu based
pf3
pf4
pf5
pf8
pf9
pfa
pfd

Partial preview of the text

Download Analysis and Design of a Procedural Programming Solution for Grade Management and more Essays (university) Introduction to Computing in PDF only on Docsity!

Assignment Brief 1 (RQF)

Higher National Certificate/Diploma in Computing

Unit Number and Title Unit 0: IT Fundamental & Procedural Programming Academic Year 2021 Unit Tutor Assignment Title Analysis and Design a solution for procedural programming problem Issue Date Submission Date 27/6/ IV Name & Date Learning Outcomes and Assessment Criteria Pass Merit Distinction LO1 Understand the principles of procedural programming LO2 Be able to design procedural programming solutions P1 Provide an introduction to procedural programming M1 Discuss on characteristics and features of procedural programming D 1 Critically evaluate the design of your solution against the characteristics and features of procedural programming. P2 Identify the program units and data and file structures required to implement a given design M2 Review the design of a procedural programming solution. P3. Design a procedural programming solution for a given problem Assignment Brief Scenario: A math teacher wants to manage grades of a class. He asks you to help him to write a small application to do that. He needs to enter student IDs, student’s grades and store these information into 2 separate arrays (integer array for IDs and float array for grades). Then he needs to print all student IDs together with their grades. Finally, he needs to know which student has highest grade and lowest grade. Your program should be menu based

with the options above. When an option is done, the program should go back to the main menu so he can choose another option. There should be an option to quit program. Task 1 To prove your programming ability to be appointed to this small project, please prepare an illustrated guide on programming in general and a particular emphasis on procedural programming. Here you will need to include introduction to computer programming languages and discuss key features of procedural programming. Task 2 Your next task is to do the analysis for the scenario mentioned above by doing the following subtasks

  • Identify the variables and data types required in the program.
  • Identify and describe 2 different selection structures, including the condition(s) to check; state why they are needed and where they can be used in the context of the scenario.
  • Identify and describe any iteration constructs.
  • Split the program into functions (sub-functions) and draw a hierarchy diagram to illustrate the structure of your program. Task 3 You need to use a drawing tool to draw design diagram for your program, includes:
  • A use case diagram for actions required
  • Flow chart diagrams for: menu operation, printing IDs and grades, finding max grade and finding min grade.
  • Review / evaluate your design, state clearly pros vs cons and which needs to improve, using characteristics of procedural programming as bases to discuss. Write a report for 3 tasks above and submit the report to CMS in PDF format. Submission Format The submission is in the form of an individual written report. This should be written in a concise, formal business style using single spacing and font size 12. You are required to make use of headings, paragraphs and subsections as appropriate, and all work must be supported with research and referenced using the Harvard referencing system. Please also provide a bibliography using the Harvard referencing system.

I. Introduce This post written about understanding of Procedural Programming. How to use the C language in your opinion. II. Body

1. Procedural Programming ✓ Fundamentally, the procedural code is the one that directly instructs a device on how to finish a task in logical steps. This paradigm uses a linear top-down approach and treats data and procedures as two different entities. Based on the concept of a procedure call, Procedural Programming divides the program into procedures, which are also known as routines or functions, simply containing a series of steps to be carried out. Simply put, Procedural Programming involves writing down a list of instructions to tell the computer what it should do step-by-step to finish the task at hand [1] Figure 1 : Procedural Programming [2]Characteristics - A large program is broken down into small manageable procedures or functions - Functions can change global data - Top-down methodology.[ 3 ] ✓ Advantages of Procedural Programming

  • The coding is easy and simple.
  • The codes have the ability to be reused in several parts of the program.
  • The programming paradigm consumes less memory on the computer.
  • It is easier for tracking the flow of the codes in the program written in the procedural programming paradigm.
  • The programming paradigm is regarded best for general programming to learn and implement.[4] ✓ Disadvantages of procedural programming
  • Focus on functions rather than data.
  • In large program, it is difficult to identify the belonging of global data.
  • The use of global data is error-prone and it could be an obstacle in case of maintenance and enhancements.
  • The modification of global data requires the modification of those functions using it.
  • Maintaining and enhancing program code is still difficult because of global data.
  • The procedural programming paradigm does not model the real-world problem very well since functions are action-oriented and do not really correspond to the elements of the problem.[5] 2. Problem statement A math teacher wants to manage grades of a class. He asks you to help him to write a small application to do that. He needs to enter student IDs, student’s grades and store these information into 2 separate arrays (integer array for IDs and float array for grades). Then he needs to print all student IDs together with their grades. Finally, he needs to know which student has highest grade and lowest grade. Your program should be menu based with the options above. When an option is done, the program should go back to the main menu so he can choose another option. There should be an option to quit program. III. Analysis List data type, the variable in program : List student name and grade:
  • Data type: Array
  • char name[3000][250];
  • int s_Total = 0;
  • float Grade[ 10 ];
  • int Length S_name[3000]; Name Type Explanations Input name String - I chose this because the name has Est length

IV. Design 3.1 WBS

Main Name

Show menu Choose options Choose service

Input information

Input name of student Storage name’s student Input student's grade Storage grade’s student View all information

View list students

Get a feedback

Show result

Find highest, lowest

students

View highest, lowest

students

Close program Diagram 1 : Software

3.2 Flow charts Use-case Diagram 2 : Use-case

Diagram 2: Use case

Diagram 4: Print IDs and grade

Diagram 5: Find Highest grade

V. Conclusion Consumer, It is necessary to understand algorithms and procedural programming in order to write code easily and logically. Besides, it is also very important to break the problem down into small problems References [1] : Sagar Bhatia, 2021, >hackr.io, Procedural Programming [Definition], Available at: https://hackr.io/blog/procedural-programming (06/2021) [ 2 ]: 2021, Learn Computer Science, Procedural Programming, Available at : https://www.learncomputerscienceonline.com/procedural-programming/ (06/2021) [ 3 ]: Lightbringer, 2019, Tuan Nguyen’s Blog, Programming paradigms – what is procedural programming?, Available at: https://www.tuannguyen.tech/2019/05/programming-paradigms-what- is-procedural-programming/ (06/2021) [4]: Lightbringer, 2019, Tuan Nguyen’s Blog, Programming paradigms – what is procedural programming?, Available at: https://www.tuannguyen.tech/2019/05/programming-paradigms-what- is-procedural-programming/ (0 7 /2021) [5]: Lightbringer, 2019, Tuan Nguyen’s Blog, Programming paradigms – what is procedural programming?, Available at: https://www.tuannguyen.tech/2019/05/programming-paradigms-what- is-procedural-programming/ (0 7 /2021) [ 6 ]: CPP, 2016, <#EXAINCLUDE>, Procedure-Oriented Programming Language(POP), Available at : http://www.hexainclude.com/procedure-oriented-programming-language/ (06/2021)