DSA Assignment 10
DSA Assignment 10
#include <iostream>
#include <fstream>
#include <string>
#include <cstring>
#include <iomanip>
class Student
private:
int rollNo;
char name[50];
char division;
char address[100];
public:
Student()
rollNo = 0;
strcpy(name, "");
strcpy(address, "");
void inputDetails()
cin.getline(name, 50);
cin.ignore();
cin.getline(address, 100);
return rollNo;
};
class StudentDatabase
{
private:
public:
void addStudent()
Student student;
if (!file)
return;
student.inputDetails();
if (searchStudent(student.getRollNo(), false))
cout << "\nStudent with Roll No. " << student.getRollNo() << " already exists!\n";
file.close();
return;
file.close();
}
void deleteStudent()
int rollNo;
if (!fin || !temp)
return;
Student student;
if (student.getRollNo() != rollNo)
else
found = true;
}
fin.close();
temp.close();
if (found)
remove(fileName);
rename("temp.txt", fileName);
else
remove("temp.txt");
if (!file)
return false;
Student student;
{
if (student.getRollNo() == rollNo)
if (display)
student.displayDetails();
found = true;
break;
cout << "\nStudent with Roll No. " << rollNo << " not found!\n";
file.close();
return found;
void displayAllStudents()
if (!file)
return;
}
Student student;
student.displayDetails();
found = true;
if (!found)
file.close();
};
int main()
StudentDatabase db("students.txt");
int choice;
do
switch (choice)
case 1:
db.addStudent();
break;
case 2:
db.deleteStudent();
break;
case 3:
int rollNo;
db.searchStudent(rollNo);
break;
case 4:
db.displayAllStudents();
break;
case 5:
break;
default:
break;
return 0;
GitHub link:-
https://github.com/VedantKaulgekar/CollegeDSAL/blob/main/Assignment_10.cpp