lOMoARcPSD|40073723
Cpp - project
Computer engineer (Padmashree Dr. D.Y. Patil Vidyapith)
Scan to open on Studocu
Studocu is not sponsored or endorsed by any college or university
Downloaded by Coc franky (frankycoc667@gmail.com)
lOMoARcPSD|40073723
Micro Project Report
On
“STUDENTS ATTENDANCE MANAGEMENT SYSTEM”
Submitted by
Kakade Pratibha Subhash
Ingale Sujata
Sonavane Tushar
Sonavane Suhas
Underthe guidance of
PROF.Shirsath Y.S
Academicyear:2022-23
KAI. SAU. SUNITATAI EKNATHRAO DHAKANE
POLYTECHNIC COLLEGERAKSHI
MAHARASHTRA STATE BOARD OF TECHNICAL
EDUCATIONMUMBAI 2022-2023
i
Downloaded by Coc franky (frankycoc667@gmail.com)
lOMoARcPSD|40073723
KAI. SAU. SUNITATAI EKNATHRAO DHAKANE
POLYTECHNICCOLLEGE, RAKSHI
DEPARTMENTOFCOMPUTERENGINEERING
CERTIFICATE
This is to certify that Miss.Kakade Pratibha Subhashof third semester of diploma in
Computer Engineering of Institute K.S.S.E.D. Polytechnic college Rakshi Shevgaon has successfully
completed the micro-project in the subject “Object Oriented Programmings C++” for
academic year2022– 2023 as prescribed in the curriculum.
Place: - Rakshi Enrollment No: ---------------
Date: ------------- Exam.Seat:-----------
SUBJECTTEACHER HOD PRINCIPAL
Downloaded by Coc franky (frankycoc667@gmail.com)
lOMoARcPSD|40073723
ACKNOWLEDGEMENT
Whenever we are standing on most difficult step of the dream of our life.We often Remind the great
god for his blessing and kind help, & many people have contributed with Encouragement& technical
advice.With all respect and gratitude, we would like to thank all People who have help edusdirectly or
indirectly for the completion of this project work.
First& fore most,I grateful to Prof.Shirsath Y.S Faculty Member of COMPUTER
Engineering Department, K.S.S.E.D.Polytechnic College of Engineering,For guiding us to Understand
the work conceptually and also for his constant encouragement to complete this Project work
on“STUDENTS ATTENDANCE MANAGEMENT SYSTEM”We also Express our thanks to Prof.
MARKAD M.S Head of COMPUTER Engineeering Department for his Valuable recommendation&
suggestions.
With the deep sense of gratitude we thank to our Principal, Prof. DR.ATTAR H.R,also Thankful to
Management of institute for providing facilities.
Lastbutnotleastwe thankful to all the teaching staff & Non teaching staff Members of COMPUTER
ENGINEERING Department. We are ending this acknowledgement with deepindebtednessto our
friends and Parents to support us to pursue the technical Education.
Downloaded by Coc franky (frankycoc667@gmail.com)
lOMoARcPSD|40073723
INDEX
SR.NO. CONTENTS PageNo
1 Abstact 5
2 Introduction 6
3 Objectives 8
4 features 10
5 Source Code 11
6 OutPut 22
7 Conclusion 25
8 Reference 26
Downloaded by Coc franky (frankycoc667@gmail.com)
lOMoARcPSD|40073723
ABSTRACT
Nowadays, manual class attendance still use and sometimes when teachers are too busy
they always forget to bring it. This system will develop to ease every teacher to take their
class attendance without using pen and paper. There have several objective of this project.
First of the objective is to design a management school attendance system that can make
via online. Second is to implement the mobile computing in the system and the lastly is to
develop the functional of the system in helping the user to manage the class attendance.
For this project mobile computing is the one of technique that use in this project to
develop this system being mobile application. There has technical challenges that mobile
computing must surmount to achieve its potential are hardly trivial. The issues to be dealt
with stem from essential properties of mobile computing.
Downloaded by Coc franky (frankycoc667@gmail.com)
lOMoARcPSD|40073723
Introduction
School attendance is a list of name in every class that use for all teachers to take their
student attendance in every days. This is to help teachers to enter the attendance of student.
However, in school now is lack of new technology by using in online attendance system.
School Attendance Management System is a mobile computing system that can be used in
order to gain the data of student attendance in school. The system will be able to store list
of student name in systematic and collect the number of attendance for each student. This
new system will replace the old approach the attendance management and increase
efficiency of work done using an appropriate tools and technique. This system must
conduct all the basic function likes add name of student and collect number of attendance.
2 Finally, the system provide high ability to store student name into database so it will
stored in a more organized manner. The system can be helpful to the teacher using the
keyboard without using the paper and pen to write the names of student and it will help out
the management in managing the work.
Downloaded by Coc franky (frankycoc667@gmail.com)
lOMoARcPSD|40073723
Problem Statement
Mostly management attendance is done manually,
where all data is collected using paper and it being kept in the register book. This
approaches cause a lot of problem to the teachers to handle the student data manually.
Besides that, in a manual system will be also take times for teacher to write back all name
of student in their register book. The data also been some duplicate when done manually.
In addition, teacher also have a problem by searching the data of the attendance based on
the specific such as searching the student name in specific date. This approach is no
effective and systematic in handling the process of manage record of the attendance. This
system will become more easily and systematically for teacher using in technology.
Downloaded by Coc franky (frankycoc667@gmail.com)
lOMoARcPSD|40073723
Objectives
Generally, the objective to develop the new system is to replace the manually management
system for school attendance, which not efficient to be used in today’s environment. For
the main objectives of this project have been identified as follows:
a) To design a management school attendance system that can make via online.
b) To implement the mobile computing in the system.
c) To develop the functional of the system in helping the user to manage the class
attendance
Downloaded by Coc franky (frankycoc667@gmail.com)
lOMoARcPSD|40073723
System Framework
TEACHER STUDENT
LOGIN
INTERFACE STUDENTS ATTENDANCE MANAGEMENT
SYSTEM
EDIT PROFILE ENROLL CLASS
MANAGE ATTENDANCE
CRUD
VIEW TOTAL ATTENDANCE
MANAGE REPORT
VIEW REPORT
TOTAL ATTENDANCE
MANAGE STUDENT
MANAGE TEACHER
MANAGE CLASS
INTERFACE SCHOOL ATTENDANCE MANAGEMENT SYSTEM
LOGIN ADMIN
Downloaded by Coc franky (frankycoc667@gmail.com)
lOMoARcPSD|40073723
Features
This project manages attendance of students
Admin can register students and create username & password for student
Student can login, mark attendance of same day & also can see history of attendance
Please note Admin username is : "admin" , password is "admin@2"
Compiled on TURBO C++
10
Downloaded by Coc franky (frankycoc667@gmail.com)
lOMoARcPSD|40073723
Source Code
#include <iostream>
#include <string>
#include <fstream>
#include <cstring>
using namespace std;
int adminView();
int studentView();
int studentLogin();
int checkCredentials(string userName, string password);
int getAllStudentsbyRollNo();
int deleteAllStudents();
int deleteStudentbyRollno();
int checkListOfStudentsRegistered();
int checkPresenseCountbyRollno();
int getListOfStudentsWithTheirPresenseCount();
int registerStudent();
int adminLogin();
int registerStudent();
int markMyAttendance(string username);
int countMyAttendance(string username);
int delay();
int delay()
{
for(int i = 0; i<3; i ++)
{
cout<<"\n Saving Records ...";
for(int ii = 0; ii<20000; ii ++)
{
for(int iii = 0; iii<20000; iii ++)
{}
}
}
cout<<"\n Exiting Now ...";
for(int i = 0; i<3; i ++){
for(int ii = 0; ii<20000; ii ++) {
for(int iii = 0; iii<20000; iii ++){
11
Downloaded by Coc franky (frankycoc667@gmail.com)
lOMoARcPSD|40073723
}
}
}
return 0;
}
int adminView()
{
int goBack = 0;
while(1)
{
system("cls");
cout<<"\n 1 Register a Student";
cout<<"\n 2 Delete All students name registered";
cout<<"\n 3 Delete student by rollno";
cout<<"\n 4 Check List of Student registered by userame";
cout<<"\n 5 Check presense count of any student by Roll No";
cout<<"\n 6 Get List of student with their attendance count";
cout<<"\n 0. Go Back <- \n";
int choice;
cout<<"\n Enter you choice: ";
cin>>choice;
switch(choice)
{
case 1: registerStudent();break;
case 2: deleteAllStudents(); break;
case 3: deleteStudentbyRollno(); break;
case 4: checkListOfStudentsRegistered(); break;
case 5: checkPresenseCountbyRollno(); break;
case 6: getListOfStudentsWithTheirPresenseCount(); break;
case 0: goBack = 1;break;
default: cout<<"\n Invalid choice. Enter again ";
getchar();
}
if(goBack == 1)
{
break; //break the loop
}
12
Downloaded by Coc franky (frankycoc667@gmail.com)
lOMoARcPSD|40073723
return 0;
}
int studentLogin()
{
system("cls");
cout<<"\n -------- Student Login ---------";
studentView();
delay();
return 0;
}
int adminLogin()
{
system("cls");
cout<<"\n --------- Admin Login --------";
string username;
string password;
cout<<"\n Enter username : ";
cin>>username;
cout<<"\n Enter password : ";
cin>>password;
if(username=="admin" && password=="admin@2")
{
adminView();
getchar();
delay();
}
else
{
cout<<"\n Error ! Invalid Credintials..";
cout<<"\n Press any key for main menu ";
getchar();getchar();
}
return 0;
}
13
Downloaded by Coc franky (frankycoc667@gmail.com)
lOMoARcPSD|40073723
int checkStudentCredentials(string username, string password)
{
// read file line by line & check if username-password.dat exist?
// if it exsist return 1 else 0
ifstream read;
read.open("db.dat");
if (read) {
// The file exists, and is open for input
int recordFound = 0;
string line;
string temp = username + password + ".dat";
cout<<"\n file name is : "<<temp;
while(getline(read, line)) {
if(line == temp)
{
recordFound = 1;
break;
}
}
if(recordFound == 0)
return 0;
else
return 1;
}
else
{
return 0;
}
}
int getAllStudentsbyName()
{
cout<<"\n List of All Students by their Name \n";
cout<<"\n Please any key to continue..";
getchar();getchar();
14
Downloaded by Coc franky (frankycoc667@gmail.com)
lOMoARcPSD|40073723
return 0;
}
int getAllStudentsbyRollNo()
{
cout<<"\n List of All Students by their Roll No \n";
cout<<"\n Please any key to continue..";
getchar();getchar();
return 0;
}
int deleteStudentbyRollno()
{
cout<<"\n Delete any Student by their Roll No \n";
cout<<"\n Please any key to continue..";
getchar();getchar();
return 0;
}
int checkPresenseCountbyRollno()
{
cout<<"\n Check presense count of any Student by Roll No \n";
cout<<"\n Please any key to continue.." ;
getchar();getchar();
return 0;
}
int checkAllPresenseCountbyRollno()
{
cout<<"\n Check presense count of All Students by Roll No & Name \n";
cout<<"\n Please any key to continue.." ;
getchar();getchar();
return 0;
}
15
Downloaded by Coc franky (frankycoc667@gmail.com)
lOMoARcPSD|40073723
int studentView()
{
cout<<"\n ------- Student Login-------- \n";
string username, password;
cout<<"\n Enter username : ";
cin>>username;
cout<<"\n Enter password : ";
cin>>password;
int res = checkStudentCredentials(username, password);
if(res == 0)
{
cout<<"\n Invalid Credentials !!";
cout<<"\n Press any key for Main Menu..";
getchar(); getchar();
return 0;
}
int goBack = 0;
while(1)
{
system("cls");
cout<<"\n 1 Mark Attendance fo Today ";
cout<<"\n 2 Count my Attendance";
cout<<"\n 0. Go Back <- \n";
int choice;
cout<<"\n Enter you choice: ";
cin>>choice;
switch(choice)
{
case 1: markMyAttendance(username); break;
case 2: countMyAttendance(username); break;
case 0: goBack = 1;break;
default: cout<<"\n Invalid choice. Enter again ";
getchar();
16
Downloaded by Coc franky (frankycoc667@gmail.com)
lOMoARcPSD|40073723
if(goBack == 1)
{
break; //break the loop
}
}
}
int markMyAttendance(string username)
{
cout<<"\n Mark Attendance for today !!";
cout<<"\n Please any key to continue..";
//todo: implement this functionality
getchar();getchar();
return 0;
}
int countMyAttendance(string username)
{
cout<<"\n Count my attendace for today !!";
cout<<"\n Please any key to continue..";
//todo: implment this functionality
getchar();getchar();
return 0;
}
int deleteAllStudents()
{
cout<<"\n In delete all students !!";
cout<<"\n Please any key to continue..";
//todo: implement this functionality
getchar(); getchar();
return 0;
}
17
Downloaded by Coc franky (frankycoc667@gmail.com)
lOMoARcPSD|40073723
int checkListOfStudentRegistered()
{
cout<<"\n List of All registered registered !!";
cout<<"\n Please any key to continue..";
//todo: implment this functionality
getchar(); getchar();
return 0;
}
int getListOfStudentsWithTheirPresenseCount()
{
cout<<"\n All Students with their Presense count !!";
cout<<"\n Please any key to continue..";
//todo: implement this functionality
getchar(); getchar();
return 0;
}
int checkListOfStudentsRegistered(){
cout<<"\n - Check List of Student Registered by Username-- ";
//check if record already exist..
ifstream read;
read.open("db.dat");
if(read)
{ int recordFound =0;
string line;
while(getline(read, line)) {
char name[100];
strcpy(name, line.c_str());
char onlyname[100];
strncpy(onlyname, name, (strlen(name) - 4));
cout<<" \n " << onlyname;
}
read.close();
}
else
{
cout<<"\n No Record found :(";
18
Downloaded by Coc franky (frankycoc667@gmail.com)
lOMoARcPSD|40073723
cout<<"\n Please any key to continue..";
getchar(); getchar();
return 0;
}
int registerStudent()
{
cout<<"\n ----- Form to Register Student ---- \n";
string name, username, password, rollno, address, father, mother;
cout<<"\n Enter Name : "; cin>>name;
cout<<"\n Enter Username : "; cin>>username;
cout<<"\n Enter password : "; cin>>password;
cout<<"\n Enter rollno : "; cin>>rollno;
getchar();
char add[100];
cout<<"\n Enter address : "; cin.getline(add, 100);
cout<<"\n Enter father : "; cin>>father;
cout<<"\n Enter mother : "; cin>>mother;
//check if record already exist..
ifstream read;
read.open("db.dat");
if(read)
{ int recordFound =0;
string line;
while(getline(read, line)) {
if(line == username+".dat" )
{
recordFound = 1 ;
break;
}
}
if(recordFound == 1)
{
cout<<"\n Username already Register. Please choose another username ";
getchar(); getchar();
delay();
19
Downloaded by Coc franky (frankycoc667@gmail.com)
lOMoARcPSD|40073723
read.close();
return 0;
}
}
read.close();
ofstream out;
out.open("db.dat", ios::app);
out<<username+".dat"<<"\n";
out.close();
ofstream out1;
string temp = username+".dat";
out1.open(temp.c_str());
out1<<name<<"\n"; out1<<username<<"\n"; out1<<password<<"\n";
out1<<rollno<<"\n"; out1<<add<<"\n"; out1<<father<<"\n";
out1<<mother<<"\n";
out1.close();
cout<<"\n Student Registered Successfully !!";
cout<<"\n Please any key to continue..";
getchar(); getchar();
return 0;
}
int main(int argc, char** argv) {
while(1)
{
system("cls");
cout<<"\n Attendance Management System \n";
cout<<"-------------------------------------\n\n";
cout<<"1. Student Login\n";
cout<<"2. Admin Login\n";
cout<<"0. Exit\n";
int choice;
cout<<"\n Enter you choice: ";
cin>>choice;
switch(choice)
{
case 1: studentLogin(); break;
20
Downloaded by Coc franky (frankycoc667@gmail.com)
lOMoARcPSD|40073723
case 2: adminLogin(); break;
case 0:
while(1)
{
system("cls");
cout<<"\n Are you sure, you want to exit? y | n \n";
char ex;
cin>>ex;
if(ex == 'y' || ex == 'Y')
exit(0);
else if(ex == 'n' || ex == 'N')
{
break;
}
else{
cout<<"\n Invalid choice !!!";
getchar();
}
}
break;
default: cout<<"\n Invalid choice. Enter again ";
getchar();
}
}
return 0;
}
output
Main Screen
21
Downloaded by Coc franky (frankycoc667@gmail.com)
lOMoARcPSD|40073723
Admin Login Screen
Admin View Screen
Student Registration Screen
22
Downloaded by Coc franky (frankycoc667@gmail.com)
lOMoARcPSD|40073723
Registered Student Screen
Student Login Screen
23
Downloaded by Coc franky (frankycoc667@gmail.com)
lOMoARcPSD|40073723
Student Login Screen
Conclusion
24
Downloaded by Coc franky (frankycoc667@gmail.com)
lOMoARcPSD|40073723
The conclusion of this project is this school attendance system is already successful done
by using application. The teacher will not use in manually anymore. Besides that, this
application is more easily use for collecting data and more systematic compare to
manually. The teacher also will not waste their time to rework all the student data, student
just register themselves for each class for their attendance. 48 This because technology
nowadays is extremely widespread regardless of age limits. Therefore, this system is not
have any problem for students and teacher by using technology.
REFERENCES
25
Downloaded by Coc franky (frankycoc667@gmail.com)
lOMoARcPSD|40073723
[1] Abdullah, H. A., Mohson, I. A., & Ali, E. S. M. (2015). Student Attendance
Management System. i-Manager's Journal on Information Technology, 4
(2), 7. [2] Bhattacharjee, S., Kundu, D., Raychaudhuri, S., & Chakraborty, P. (2016).
Attendance Management System an Android Application.
[3] Corkett, J., & Benevidesa, T. (2013). Apps for All: Education App Integration.
Procedia-Social and Behavioral Sciences, 84, 61-65.
[4] Forman, G. H., & Zahorjan, J. (1994). The challenges of mobile computing.
Computer, 27(4), 38-47.
26
Downloaded by Coc franky (frankycoc667@gmail.com)
lOMoARcPSD|40073723
THANK
YOU
27
Downloaded by Coc franky (frankycoc667@gmail.com)