0% found this document useful (0 votes)
18 views5 pages

PF Open Ended Lab

The document is a laboratory manual for a Programming Fundamentals course, specifically for an open-ended lab where students will develop a Student Grade Management System and an Employee Attendance Management System using C++. It outlines the lab objectives, required tools, tasks to be completed, deliverables, and assessment criteria. The lab focuses on applying programming concepts such as control statements, loops, arrays, functions, and file handling.

Uploaded by

hadihorizon47
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
18 views5 pages

PF Open Ended Lab

The document is a laboratory manual for a Programming Fundamentals course, specifically for an open-ended lab where students will develop a Student Grade Management System and an Employee Attendance Management System using C++. It outlines the lab objectives, required tools, tasks to be completed, deliverables, and assessment criteria. The lab focuses on applying programming concepts such as control statements, loops, arrays, functions, and file handling.

Uploaded by

hadihorizon47
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

Programming Fundamentals

(CL1002)

LABORATORY MANUAL
Spring 2025

LAB: 12
OPEN ENDED LAB

________________________________________ __________ ____

STUDENT NAME ROLL NO SEC

______________________________________

LAB ENGINEER'S SIGNATURE & DATE


Fasih Ahmad
Nimra Fatima

MARKS AWARDED: /20


______________________________________________________________________
NATIONAL UNIVERSITY OF COMPUTER AND EMERGING SCIENCES (NUCES), ISLAMABAD
Prepared by: Fasih Ahmad, Nimra Fatima Version: 1.0

Date
Verified by: Shahid Qureshi Mar 10, 2025
Edited:
Open Ended Lab LAB: 12
Lab Learning Objectives:
In this lab session you will develop a Student Grade Management System using C++. You
will apply control statements, loops, arrays, functions and file handling to manage the
program efficiently.

Tools needed:
1. PC running Windows Operating System (OS)
2. DevC++ (installed)

Turn on the PC and log into it using your student account information.

Note:
The information and concepts discussed in this
lab manual are in sufficient detail but are
still not exhaustive. It is assumed that all
these concepts are already taught to you in your
PF theory class.

Domain/
Lab Learning Outcomes Taxonomy PLO
Level

Develop a well-structured program using


1 simple functions, loops, char arrays, and one- C5 3
dimensional and two-dimensional static arrays.

Analyze the concept of Memory addresses,


2 C4 5
Pointers, and file handling (text file).

Employee Attendance Management System

You are required to create an Employee Attendance Management System. The


system will store and manage attendance records for multiple employees, track their
working days, and generate reports.

1. Record Employee Attendance

 Create an array to store attendance records for at least 10 employees.


 Prompt the user to enter the total number of working days.
 For each employee, prompt the user to enter their daily attendance (P for
Present, A for Absent).

PF LAB NUCES, ISLAMABAD Page 2 of 5


Open Ended Lab LAB: 12
 If an invalid input is entered, prompt the user to re-enter the correct value.

2. Calculate Attendance Percentage and Status

 Create a function that takes an employee’s attendance record and the total
number of working days as input. This function should calculate and return the
attendance percentage.
 Create another function that assigns an attendance status based on the
following criteria:
o Excellent: 90% and above
o Good: 75%–89%
o Needs Improvement: 50%–74%
o Critical: Below 50%

3. Save Data

 Implement file handling to store attendance records in a file named


employee_attendance.txt.
 The file should contain:
o Employee number
o Attendance record (P/A for each day)
o Attendance percentage
o Attendance status

4. Generate Attendance Report

Write a function that generates an attendance report for each employee, displaying:

 The individual attendance record


 The total working days
 The attendance percentage
 The attendance status
 A warning message if the attendance percentage is below 50%

Deliverables

Submit a clean, well-organized C++ program that implements all required


functionalities. The program should allow for data input, output, file saving, and
report generation. It should also handle edge cases, such as invalid input and file
handling errors.

Bonus Task

On program start, check if the file employee_attendance.txt exists. If it does, load


the data from the file and display it. If the file does not exist, display a message
stating that no attendance records exist and prompt the user to enter new data
manually.

PF LAB NUCES, ISLAMABAD Page 3 of 5


Open Ended Lab LAB: 12

PF LAB NUCES, ISLAMABAD Page 4 of 5


Open Ended Lab LAB: 12
Assessment Rubrics:

Criteria Exemplary Proficient Developing Beginning Marks


(76%-100%) (51%-75%) (26%-50%) (0%-25%)
Understanding of Demonstrates an Shows a solid un Displays a basic u Limited underst 4
Problem Stateme exceptional und derstanding of a nderstanding, wit anding, with co
nt erstanding of att ttendance trackin h some gaps in pro nfusion in core
endance tracking g but may miss blem identification concepts and in
concepts, clearly minor aspects of and solution appro correct problem
identifying core f user requirement ach. interpretation.
unctionalities and s.
user needs.
Implementation o Precise and effic Effective use of Basic usage, with s Limited grasp, 4
f Functions & Ar ient use of functi functions and arr ome incorrect impl frequent syntax
rays ons and arrays, e ays, with good st ementations or red errors, or failure
nsuring modulari ructure but mino undant code. to implement co
ty, readability, an r inefficiencies. re logic correctl
d maintainability. y.
Error Handling Excellent error Proper input va Some validation p Lacks validatio 4
& Validation handling, ensuri lidation and err resent, but lacks ro n, leading to fre
ng input validatio or handling, tho bustness against m quent incorrect i
n and smooth exe ugh minor edge c ultiple error scenari nputs, crashes, o
cution with mini ases may be over os. r unreliable exe
mal to no crashe looked. cution.
s.
File Handling & Flawless file han Proper file han Basic implementa Incorrect or mi 4
Data Persistence dling, ensuring c dling, correctly s tion, able to save a ssing file handl
orrect reading, w aving and retriev nd load data but wi ing, failing to st
riting, and retriev ing data with mi th occasional errors ore or retrieve at
al of attendance d nor inefficiencie or lack of optimiza tendance record
ata. Efficiently lo s. tion. s properly.
ads and saves dat
a.
Creativity & Inno Implements crea Includes some e Minimal enhance No enhanceme 4
vation tive enhanceme nhancements be ments, sticking mo nts, only fulfilli
nts, such as grap yond basic requir stly to the basic fun ng the bare mini
hical representati ements, improvi ctionality. mum requireme
on of attendance, ng usability. nts.
automated alerts,
or additional feat
ures.

PF LAB NUCES, ISLAMABAD Page 5 of 5

You might also like