BTEC Level 5 HND Diploma in Computing Assignment 2: Procedural Programming, Summaries of Programming Languages

An assignment for a BTEC Level 5 HND Diploma in Computing student, focusing on procedural programming. The assignment involves writing a small application to manage grades for a class, including storing student IDs and grades in separate arrays, printing student IDs and grades, and determining highest and lowest grades. The document also covers problem-solving strategies, steps in program development, and designing a solution using a top-down approach.

Typology: Summaries

2021/2022

Uploaded on 06/16/2022

nguyen-tin-hoc-fgw-hcm
nguyen-tin-hoc-fgw-hcm 🇻🇳

1 document

1 / 9

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
ASSIGNMENT 2 FRONT SHEET
Qualification BTEC Level 5 HND Diploma in Computing
Unit number and title Unit 0: Procedural Programming
Submission date
Date Received 1st
submission
Re-submission Date Date Received 2nd
submission
Student Name Student ID
Class Assessor name
Student declaration
I certify that the assignment submission is entirely my own work and I fully understand the consequences of plagiarism. I understand that
making a false declaration is a form of malpractice.
Student’s signature
Grading grid
P4 P5 M3 M4 D2
pf3
pf4
pf5
pf8
pf9

Partial preview of the text

Download BTEC Level 5 HND Diploma in Computing Assignment 2: Procedural Programming and more Summaries Programming Languages in PDF only on Docsity!

ASSIGNMENT 2 FRONT SHEET

Qualification BTEC Level 5 HND Diploma in Computing Unit number and title Unit 0: Procedural Programming Submission date Date Received 1st submission Re-submission Date Date Received 2nd submission Student Name Student ID Class Assessor name Student declaration I certify that the assignment submission is entirely my own work and I fully understand the consequences of plagiarism. I understand that making a false declaration is a form of malpractice. Student’s signature Grading grid P4 P5 M3 M4 D

 Summative Feedback:  Resubmission Feedback:

Grade: Assessor Signature: Date: Lecturer Signature: 1.Introduction. 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. Objectives :  Basic concepts of problem solving  Steps involved in program development  Top-down programming  Programming languages, their types, and features Problem solving : Strategies for problem solving  There is no universal method for solving a given problem  Different strategies are good for different problems  Some of the well-known strategies are

Process : Solution technique which transforms input to output. Factorial of a number can be calculated by the formula n!=123n Use-case diagram :  Use case diagrams are used to gather the requirements of a system  So when a system is analyzed to gather its functionalities use cases are prepared and actors are identified.  The purposes of use case diagrams can be as follows:  Used to gather requirements of a system  Used to get an outside view of a system  Identify external and internal factors influencing the system  Show the interacting among the requirements are actors Activity: Draw use-case diagram : You are hired to develop FAI’s library system with following description  Admin who could

  • Manage books, readers (staff, lecturers, and students), etc.
    • Manage borrow/return books  Users (staff, lecturers, students) who could
    • View/search books
  • Reserve books
  • Borrow/return books Design :  A design is the path from the problem to a solution in code  The well designed program is likely to be:  Easier to read and understand later  Less of bugs and errors  Easier to extend to add new features  Easier to program in the first place Modular Design :  Once the problem is defined clearly, several design methodologies can be applied  An important approach is Top-Down program design  It is structured design technique  It breaks up the problem into a set of sub-problems called Modules

 It creates a hierarchical structure of the modules Developing a solution technique: Algorithm :  An algorithm is a step-by-step description of the solution to a problem  An algorithm must be  Definite  Finite  Precise and Effective  Implementation independent (only for problem not for programming languages) IV. Evaluation : The project Student Grades Management is aimed to efficiently store and retrieve student examination reports. This project in C++ is a simple console application built without any graphical Interface. In this project, users can perform typical report card related functions like print all report card student it. File handling has been effectively used to perform all these. This project will teach you how to use code and in C++, V.Debugging : What is Debugging? Debugging is a methodical process of finding and reducing the number of bugs (or defects) in a computer program, thus making it behave as originally expected. There are two main types of errors that need debugging: I Compile-time: These occur due to misuse of language constructs, such as syntax errors. Normally fairly easy to find by using compiler tools and warnings to fix reported problems. gcc -Wall -pedantic -c main.c I Run-time: These are much harder to figure out, as they cause the program to generate incorrect output (or “crash”) during execution. This lecture will examine how to methodically debug a run-time error in your C code. 2 / 31 The Runtime Debugging Process A typical lifecycle for a C/C++ bug is:

Compiling and Executing the Program  Compilation is a process of translating a source program into machine understandable form  The compiler is system software  It examines each instruction for its correctness  It does the translation  During the execution  Program is loaded into the computer’s memory  The program instructions are executed Testing  Testing is the process of executing a program with the deliberate intent of finding errors  Testing is needed to check whether the expected output matches the actual output  Testing is done during every phase of program development  Initially, requirements can be tested for its correctness  Then, the design (algorithm, flow charts) can be tested for its exactness and efficiency  Structured walk through is made to verify the design Test criteria  Programs are tested with several test criteria and the important ones are given below  Test whether each and every statement in the program is executed at least one (Basic path testing)  Test whether every branch in the program is traversed at least once (control flow)  Test whether the input data flows through the program and is converted to an output (data flow) Test criteria  Programs are tested with several test criteria and the important ones are given below  Test whether each and every statement in the program is executed at least one (Basic path testing)  Test whether every branch in the program is traversed at least once (control flow)  Test whether the input data flows through the program and is converted to an output (data flow) Debugging  Debugging is a process of correcting the errors  Programs may have logical errors which cannot be caught during compilation  Debugging is the process of identifying their root causes  One of the ways is to print out the intermediate results at strategic points of computation  Another way is to use support from the IDE  Testing vs Debugging  Testing means detecting errors  Debugging means diagnosing and correcting the root causes Maintenance

 Program maintenance  Continuing process of maintenance and modification  To keep pace with changing requirements and technologies  Maintainability of the program is achieved by  Modularizing it  Providing proper documentation for it  Following standards and conventions (naming conventions, using symbolic constants, etc.) Write a program that implements the designed solution 4 Exit : Coding standard I’m using in my program : Declare variables by noun