Cen 23
Cen 23
MATRICLE UBa21PH008
default:
break;
}
return 0;
}
Output
File: manage_student
#include <iostream>
#include <fstream>
#include <string>
#include <iomanip>
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <stdlib.h>
#include <climits>
using namespace
std;
class
student
{ private:
int id; int
age; char
name[200]; char
gender[5]; int
departmentId;
char level[10];
public:
void get_student();
void put_student();
int
get_stuId(){
return id;
} void
update_age(int num)
{ age =
age - num;
}
}; void
student::get_student()
{ cout<<"Select department
id:"; cin>>departmentId;
cout<<"Enter student Id:";
cin>>id;
fflush(stdin);
cout<<"Enter student name:";
cin.get(name, 200);
cout<<"Enter student gender:";
cin>>gender;
cout<<"Enter student level:";
cin>>level;
} void
student::put_student()
{ cout<<"----------------------------------------
--\n"; cout<<"Department Id:"<<departmentId;
cout<<"\nSudent Id:"<<id; cout<<"\nstudent
name:"<<name; cout<<"\nGender:"<<gender;
cout<<"\nLevel"<<level; cout<<"\
n------------------------------------------\n"; }
student myStudent; fstream stux; void add_student()
{ char ch = 'y'; dsp_departments();
stux.open("Students.dat", ios::app |
ios::binary); while(ch=='y' || ch=='Y')
{
myStudent.get_student();
fflush(stdin);
stux.write((char*)&myStudent,
sizeof(myStudent)); cout<<"Register another
student[y/n]?:"; cin>>ch;
}
stux.close();
}
void dsp_student()
{ stux.open("Students.dat", ios::in |
ios::binary); if(!stux)
{
cout<<"Error openning file..."<<endl;
exit(0); }
else{ stux.read((char*)&myStudent,
sizeof(myStudent));
while(!
stux.eof())
{ myStudent.put_student();
stux.read((char*)&myStudent, sizeof(myStudent));
} }
stux.close();
} void
srch_student()
{ int flag=0,
cod;
stux.open("Students.dat", ios::in |
ios::binary); if(!stux)
{ cout<<"Error openning file..."<<endl;
exit(0);
} else{ cout<<"Enter the student Id
to search:"; cin>>cod;
stux.read((char*)&myStudent, sizeof(myStudent));
while (!stux.eof())
{
if(cod==myStudent.get_stuId()){
flag=1;
myStudent.put_student();
break;
} stux.read((char*)&myStudent,
sizeof(myStudent));
}
if(flag==0)
{ cout<<"Not
found!"<<endl;
}
}
stux.close();
}
void delete_student()
{ int cod; cout<<"Enter the student Id
to delete record:";
cin>>cod; ofstream file2;
file2.open("newstu.dat", ios::app |
ios::binary); stux.open("Students.dat",
ios::in | ios::binary); if(!stux)
{ cout<<"Error openning file...";
exit(0);
}
else{ stux.read((char*)&myStudent,
sizeof(myStudent)); while (!stux.eof())
{ if(cod==myStudent.get_stuId()){
file2.write((char*)&myStudent, sizeof(myStudent));
} stux.read((char*)&myStudent,
sizeof(myStudent));
}
} file2.close();
stux.close();
remove("Students.dat");
rename("newstu.dat", "Students.dat");
} void
updt_student()
{
int cod, num;
cout<<"Enter Student Id to
Update:"; cin>>cod;
cout<<"Enter student Age:";
cin>>num;
stux.open("Sudents.dat", ios::in | ios::out |
ios::binary); if(!stux){
cout<<"Error openning file...";
exit(0);
} while(stux.read((char*)&myStudent,
sizeof(myStudent)))
{
if(myStudent.get_stuId()==cod)
{ myStudent.update_age(n
um); int pos =
sizeof(myStudent);
stux.seekp(pos, ios::cur);
stux.write((char*)&myStudent,
sizeof(myStudent));
} }
stux.close();
} void
xstudent()
{ int option;
system("CLS"); cout<<"[1]
CREATE STUDENT\n";
cout<<"[2] SEARCH STUDENT\n";
cout<<"[3] DELETE STUDENT\n";
cout<<"[4] UPDATE STUDENT\n";
cout<<"[5] EXIT\n";
cout<<"Select
option:";
cin>>option;
switch
(option)
{ case 1: add_student();
break; case 2:
srch_student(); break; case
3: delete_student(); break;
case 4: updt_student(); break;
case 5: break; default:
break;
}
}
Output files
File: manage_course
#include <iostream>
#include <fstream>
#include <string>
#include <iomanip>
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <stdlib.h>
#include <climits>
using namespace
std;
class
course
{ private:
int id; int
credit_value;
char title[200];
int departmentId;
public:
void get_course();
void put_course();
int
get_courseId(){
return id;
}
void update_cv(int num)
{ credit_value =
credit_value - num;
}
}; void
course::get_course()
{ cout<<"Select department
id:";
cin>>departmentId;
cout<<"Enter course Id:";
cin>>id; fflush(stdin);
cout<<"Enter course title:";
cin.get(title, 200);
void course::put_course()
{ cout<<"----------------------------------------
--\n"; cout<<"Department Id:"<<departmentId;
cout<<"\nCourse Id:"<<id; cout<<"\nCourse
title:"<<title; cout<<"\
n------------------------------------------\n"; }
course myCourse; fstream crx; void add_course()
{ char ch = 'y';
dsp_departments(); crx.open("Course.dat",
ios::app | ios::binary); while(ch=='y' ||
ch=='Y')
{ myCourse.get_course();
fflush(stdin);
crx.write((char*)&myCourse, sizeof(myCourse));
cout<<"Register another course[y/n]?:";
cin>>ch;
}
crx.close();
} void
dsp_course()
{
crx.open("Course.dat", ios::in |
ios::binary); if(!crx)
{ cout<<"Error openning
file..."<<endl;
exit(0);
}
else{ crx.read((char*)&myCourse,
sizeof(myCourse));
while(!crx.eof())
{ myCourse.put_course();
crx.read((char*)&myCourse, sizeof(myCourse));
}
}
crx.close();
}
void srch_course()
{ int flag=0,
cod;
crx.open("Course.dat", ios::in |
ios::binary); if(!crx)
{ cout<<"Error openning
file..."<<endl; exit(0);
} else{ cout<<"Enter the student
Id to search:"; cin>>cod;
crx.read((char*)&myCourse, sizeof(myCourse));
while (!crx.eof())
{
if(cod==myCourse.get_courseId()){
flag=1;
myCourse.put_course();
break;
}
crx.read((char*)&myCourse, sizeof(myCourse));
}
if(flag==0)
{ cout<<"Not
found!"<<endl;
}
} crx.close();
} void xcourse()
{ int option; system("CLS"); cout<<"[1] CREATE COURSE\
n"; cout<<"[2] SEARCH COURSE\n"; cout<<"[3] DELETE COURSE\
n"; cout<<"[4] UPDATE COURSE\n"; cout<<"[5] EXIT\n";
cout<<"Select option:"; cin>>option;
switch (option)
{ case 1: add_course(); break; case 2: srch_course(); break;
//case 3: delete_student(); break; //case 4: updt_student(); break;
case 5: break;
default: break;
}
Output files
File: manage_marks
#include <iostream>
#include <fstream>
#include <string>
#include <iomanip>
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <stdlib.h>
#include <climits>
using namespace
std;
class
marks
{ private:
int id; int
stu_id; int
score; char
grade; char
remark[200]; int
course_id; int
department_id;
public:
void get_marks();
void put_marks();
int
get_marks_id(){
return id;
} void
update_score(int num)
{ score =
score - num;
}
}; void
marks::get_marks()
{
cout<<"Select department
id:"; cin>>department_id;
cout<<"Enter course id:";
cin>>course_id;
cout<<"Enter marks Id:";
cin>>id;
cout<<"Enter student
id:"; cin>>stu_id;
fflush(stdin);
cout<<"Enter the
score:"; cin>>score;
cout<<"Grade:";
cin>>grade;
fflush(stdin);
void marks::put_marks()
{ cout<<"----------------------------------------
--\n"; cout<<"Department Id:"<<department_id;
cout<<"\nCourse Id:"<<course_id; cout<<"\nMarks
id:"<<id; cout<<"\nStudent id:"<<stu_id;
cout<<"\nScore:"<<score; cout<<"\nGrade:"<<grade;
cout<<"\nRemark:"<<remark; cout<<"\
n------------------------------------------\n"; }
marks myMarks; fstream mks; void add_marks()
{ char ch = 'y';
dsp_departments(); mks.open("Marks.dat",
ios::app | ios::binary); while(ch=='y' ||
ch=='Y')
{ myMarks.get_marks();
fflush(stdin);
mks.write((char*)&myMarks, sizeof(myMarks));
cout<<"Uplaod new marks[y/n]?:";
cin>>ch;
}
mks.close();
} void
dsp_marks()
{
mks.open("Marks.dat", ios::in |
ios::binary); if(!mks)
{ cout<<"Error openning
file..."<<endl;
exit(0);
}
else{ mks.read((char*)&myMarks,
sizeof(myMarks));
while(!mks.eof())
{ myMarks.put_marks();
mks.read((char*)&myMarks, sizeof(myMarks));
}
}
mks.close();
}
void srch_marks()
{ int flag=0,
cod;
mks.open("Marks.dat", ios::in |
ios::binary); if(!mks)
{ cout<<"Error openning
file..."<<endl; exit(0);
} else{ cout<<"Enter the marks
id to search record:"; cin>>cod;
mks.read((char*)&myMarks, sizeof(myMarks));
while (!mks.eof())
{
if(cod==myMarks.get_marks_id()){
flag=1;
myMarks.put_marks();
break;
}
mks.read((char*)&myMarks, sizeof(myMarks));
}
if(flag==0)
{ cout<<"Not
found!"<<endl;
}
} mks.close();
} void xmarks()
{ int option; system("CLS"); cout<<"[1]
CREATE MARKS\n"; cout<<"[2] SEARCH MARKS\n";
cout<<"[3] DELETE MARKS\n"; cout<<"[4] UPDATE
MARKS\n"; cout<<"[5] EXIT\n";
cout<<"Select option:"; cin>>option;
switch (option)
{ case 1: add_marks(); break; case 2:
srch_marks(); break; //case 3: delete_student(); break;
//case 4: updt_student(); break; case 5: break;
default: break;
}
Output files
File: manage_departments
#include <iostream>
#include <fstream>
#include <string>
#include <iomanip>
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <stdlib.h>
#include <climits>
using namespace std;
class department
{ private:
int Id;
char Name[200];
int Capacity;
public:
void get_department();
void put_department();
int
get_code(){
return Id;
} void
update_Capacity(int num)
{
Capacity = Capacity - num;
}
}; void
department::get_department()
{ cout<<"Enter the department iD(integer from 1 to
100):"; cin>>Id; fflush(stdin);
cout<<"Enter the department name:"; cin.get(Name,
200); cout<<"Enter the department capacity:";
cin>>Capacity;
} void
department::put_department()
{
cout<<setw(2)<<Id<<"\t"<<setw(2)<<Name<<"\
t"<<setw(2)<<Capacity<<endl; }
department myDepartment;
fstream depx;
void add_department()
{ char ch = 'y';
depx.open("Departments.dat", ios::app |
ios::binary); while(ch=='y' || ch=='Y')
{ myDepartment.get_department();
fflush(stdin); depx.write((char*)&myDepartment,
sizeof(myDepartment));
cout<<"Add another
department[y/n]?:";
cin>>ch;
}
depx.close();
} void
dsp_departments()
{ depx.open("Departments.dat", ios::in |
ios::binary); if(!depx)
{ cout<<"Error openning
file..."<<endl; exit(0);
} else{ depx.read((char*)&myDepartment,
sizeof(myDepartment));
cout<<"------------------------------------\n";
cout<<setw(2)<<"Id"<<"\t"<<setw(2)<<"Name"<<"\t"<<setw(2)<<"Capacity"<<en
dl; cout<<"------------------------------------\n";
while(!depx.eof())
{ myDepartment.put_department();
depx.read((char*)&myDepartment, sizeof(myDepartment));
} }
depx.close();
} void
srch_departments()
{ int flag=0,
cod;
while (!depx.eof())
{
if(cod==myDepartment.get_code()){
flag=1;
cout<<"------------------------------------\
n";
cout<<setw(2)<<"Code"<<"\t"<<setw(2)<<"Name"<<"\
t"<<setw(2)<<"Cap acity"<<endl;
cout<<"------------------------------------\n";
myDepartment.put_department(); break;
} depx.read((char*)&myDepartment,
sizeof(myDepartment));
}
if(flag==0)
{ cout<<"Not
found!"<<endl;
}
}
depx.close();
} void
delete_department()
{ int cod; cout<<"Enter the department Id
to dlete record:"; cin>>cod; ofstream
file2; file2.open("new.dat", ios::app |
ios::binary); depx.open("Departments.dat",
ios::in | ios::binary); if(!depx)
{ cout<<"Error openning file...";
exit(0);
}
else{
depx.read((char*)&myDepartment, sizeof(myDepartment));
while (!depx.eof())
{
if(cod==myDepartment.get_code())
{ file2.write((char*)&myDepartment,
sizeof(myDepartment));
}
depx.read((char*)&myDepartment, sizeof(myDepartment));
}
}
file2.close();
depx.close();
remove("Departments.dat");
rename("new.dat",
"Departments.dat");
}
void
updt_department()
{ int cod, num; cout<<"Enter
department Id to Update:";
cin>>cod; cout<<"Enter student
capacity:"; cin>>num;
depx.open("Departments.dat", ios::in | ios::out |
ios::binary); if(!depx){ cout<<"Error openning
file..."; exit(0);
} while(depx.read((char*)&myDepartment,
sizeof(myDepartment)))
{
if(myDepartment.get_code()==cod)
{ myDepartment.update_Capacity(num);
int pos = sizeof(myDepartment); depx.seekp(pos,
ios::cur); depx.write((char*)&myDepartment,
sizeof(myDepartment));
} }
depx.close();
} void
xdepartments()
{
int option;
system("CLS");
cout<<"[1] CREATE DEPARTMENT\n";
cout<<"[2] SEARCH DEPARTMENT\n";
cout<<"[3] DELETE DEPARTMENT\n";
cout<<"[4] UPDATE DEPARTMENT\n";
cout<<"[5] EXIT\n";
cout<<"Select option:";
cin>>option;
switch (option)
{
case 1: add_department(); break;
case 2: srch_departments();
break; case 3:
delete_department(); break;
case 4: updt_department(); break;
case 5: break;
default:
break;
}
cout << "Factorial of " << n << " = " << factorial(n);
return 0;
} int factorial(int
n) { if(n > 1)
return n * factorial(n -
1); else return 1
}
output
TASK3: FUNCTION OVERLOAING
// C++ Program to concatenate two string using a unary operator
overloading
#include <iostream>
#include <string.h>
using namespace
std;
public:
// Classes object of string
char s1[20], s2[20];
// Parameterized Constructor
AddString(char str1[], char
str2[]) {
// Initialize the string to class
object strcpy(this->s1, str1);
strcpy(this->s2, str2);
}
output
int main()
{
system("CLS");
char strLower[50],
strUpper[50]; int x, i=0,
chr=0; cout<<"Enter the
String: "; cin.get(strLower,
50); while(strLower[i]!='\
0')
{
if(strLower[i]>='a' && strLower[i]<='z')
{ x =
strLower[i];
x = x-32;
strUpper[i] = x;
chr++;
}
else strUpper[i] = strLower[i];
i++; } strUpper[i]='\0'; if(chr==0)
cout<<"\nString is already in Uppercase"<<endl;
else cout<<"\nUppercase of String:
"<<strUpper<<endl; return 0; }
output
// first digit
for (i = 0; i < 10; i++)
// second digit
for (j = 0; j < 10; j++)
// First letter for (k = 0;
k < a.length(); k++)
// Second letter
for (l = 0; l < a.length(); l++)
all_ids += to_string(i) + to_string(j) + a[k] + a[l]
+ ","; return all_ids;
} int
main(){
output