Result Management Program in CPP - (Mini Project)

/**************************************************************/
/*************Result Management Program in CPP - (Mini Project)**********************/
/**************************************************************/

/**************************************************************/
/*Programmed by : Digital World Computer**********************************/
/*For Bugs Free feel to contact********************************/
/*Website : www.digiworldcomputer.com*****************************/
/*Email : ypcs.hr@gmail.com**************************/
/**************************************************************/



   // INCLUDING ALL THE HEADER FILES  //
#include<conio.h>
#include<process.h>
#include<fstream.h>
#include<string.h>
#include<stdio.h>
#include<dos.h>

   // CLASS NAMED 'STUDENT' TO CALCULATE GRADE,TOTAL AND PERCANTAGE //
class student
{
    private:

    public:
    char grade(long int x,int y);
    long int total(int a,int b,int c,int d,int e);
    float percent(long int z);
};
    char student::grade(long int x,int y)
    {              // FUNCTION TO CALCULATE GRADE //
        if((x*100/y)>74)
        return('A');
        else
        {
            if((x*100/y)>60)
            return('B');
            else
            {
                if((x*100/y)>33)
                return('C');
                else
                return('E');
            }
        }
     }

     long int student::total(int a,int b,int c,int d,int e)
     {                     // FUNCTION TO CALCULATE TOTAL MARKS //
        int t;
        t=(a+b+c+d+e);
        return (t);
     }

     float student::percent(long int z)
     {                     // FUNCTION TO CALCULATE PERCANTAGE //
        float p=0;
        p=(z*100)/410;
        return(p);
     }

                  // STRUCTURE TO INPUT DETAILS OF STUDENT //
struct studres
{

    int clas;
    char s;
    int rollno;
    char name[30];
    char fatername[30];
    char teachname[30];
    int engmark;
    int matmark;
    int phymark;
    int chemark;
    int commark;
    int total;
    float percentage;

}stdres;

struct temp
{
    int roll;
    char name[30];
    int clas;
    char sec;
    int total;

}temp;

    // ALL THE FUNCTIONS INITIALIZED //
void create();
void add();
void search();
void modify();
void merit();
void merit1();
void delet();
char grade(long int x,int y);
long int total(int a,int b,int c,int d,int e);
float percent(long int z);
int checking(int z, char y, int x);
void menu();

void main()
  {            //  MAIN PROGRAM STARTS HERE //
     clrscr();
      gotoxy(20,6);
      cout<<" R E S U L T    M A N A G E M E N T";

      gotoxy(10,10);
      cout<<"   By Suansh Singhal of class XII D";

     getch();
      clrscr();
    menu();         // CALLING FUNCTION TO PRINT MENU //

}

void create()

  {                     // FUNCTION TO CREATE THE MAIN FILE //
    clrscr();
      char ans;
      fstream result;
      gotoxy(20,6);
      cout<<"WARNING !!! ALL PREVIOUS RECORDS WILL BE DELETED";
      gotoxy(10,10);
      cout<<"                 DO YOU STILL WANT TO CONTINUE(Y/N):";
      cin>>ans;
      if(ans != 'N' || ans != 'n')
         {
           result.open("result.dat",ios::out|ios::binary);
           result.close();
         }
       menu();
   }

void add()

   {               // FUNCTION TO ADD DETAILS OF THE STUDENT //
    top:
    clrscr();
    int max1=100,max2=70,kar,l,m;
    char ch,n;
    cout<<"CLASS:";
    gotoxy (16,1);
    cout<<"SECTION:";
    gotoxy(31,1);
    cout<<"ROLL NO:";
    gotoxy(47,1);
    cout<<"STUDENT'S NAME:";
    gotoxy(1,5);
    cout<<"FATHER NAME:";
    gotoxy(45,5);
    cout<<"CLASS TEACHER:";
    gotoxy(1,9);
    cout<<"S.NO.";
    gotoxy(15,9);
    cout<<"SUBJECT";
    gotoxy(30,9);
    cout<<"MARKS";
    gotoxy(40,9);
    cout<<"MAXIMUM MARKS";
    gotoxy(70,9);
    cout<<"GRADE";
    gotoxy(3,11);
    cout<<"1";
    gotoxy(15,11);
    cout<<"ENGLISH";
    gotoxy(3,13);
    cout<<"2";
    gotoxy(15,13);
    cout<<"MATHS";
    gotoxy(3,15);
    cout<<"3";
    gotoxy(15,15);
    cout<<"PHYSICS";
    gotoxy(3,17);
    cout<<"4";
    gotoxy(15,17);
    cout<<"CHEMISTRY";
    gotoxy(3,19);
    cout<<"5";
    gotoxy(15,19);
    cout<<"COMPUTER";
    gotoxy(3,25);
    cout<<"6";
    gotoxy(15,25);
    cout<<"TOTAL";
    gotoxy(3,27);
    cout<<"7";
    gotoxy(15,27);
    cout<<"PERCENTAGE";
                 // getting student information //
    gotoxy(8,1);
    cin>>m;
    gotoxy(25,1);
    n=getchar();
    fflush(stdin);

    fstream result;
    result.open("result.dat",ios::app|ios::binary);
    gotoxy(40,1);
    cin>>l;
    kar=checking(m,n,l);
    if(kar==1)
    {
        result.close();
        goto top;
    }
    else
    {
        stdres.clas=m;
        stdres.s=n;
        stdres.rollno=l;
    }

    gotoxy(63,1);
    gets(stdres.name);
    fflush(stdin);

    gotoxy(14,5);
    gets(stdres.fatername);
    fflush(stdin);
    gotoxy(60,5);
    gets(stdres.teachname);

    gotoxy(47,11);                               /*marks table*/
    cout<<"100";
    gotoxy(32,11);
    cin>>stdres.engmark;
    gotoxy(72,11);
    cout<<grade(stdres.engmark,max1);

    gotoxy(47,13);
    cout<<"100";
    gotoxy(32,13);
    cin>>stdres.matmark;
    gotoxy(72,13);
    cout<<grade(stdres.matmark,max1);

    gotoxy(47,15);
    cout<<" 70";
    gotoxy(32,15);
    cin>>stdres.phymark;
    gotoxy(72,15);
    cout<<grade(stdres.phymark,max2);

    gotoxy(47,17);
    cout<<" 70";
    gotoxy(32,17);
    cin>>stdres.chemark;
    gotoxy(72,17);
    cout<<grade(stdres.chemark,max2);

    gotoxy(47,19);
    cout<<" 70";
    gotoxy(32,19);
    cin>>stdres.commark;
    gotoxy(72,19);
    cout<<grade(stdres.commark,max2);

    gotoxy(47,25);
    cout<<"410";
    gotoxy(31,25);

cout<<total(stdres.engmark,stdres.matmark,stdres.phymark,stdres.chemark,st
dres.commark);

stdres.total=total(stdres.engmark,stdres.matmark,stdres.phymark,stdres.che
mark,stdres.commark);

    gotoxy(32,27);
    stdres.percentage=percent(stdres.total);
    cout<<stdres.percentage;
    gotoxy(80,50);


    result.write((char*)&stdres,sizeof(stdres));
    result.close();
    getch();
    menu();
}

char grade(long int x,int y)
    {           // FUNCTION THAT CALCULATES GRADE OF THE STUDENT //
        if((x*100/y)>74)
        return('A');
        else
        {
            if((x*100/y)>60)
            return('B');
            else
            {
                if((x*100/y)>33)
                return('C');
                else
                return('E');
            }
        }
     }

long int total(int a,int b,int c,int d,int e)
     {          // FUNCTION TO CALCULATE TOTAL OF STUDENT //
        int t;
        t=(a+b+c+d+e);
        return (t);
     }

float percent(long int z)
     {
        float p=0;
        p=(z*100)/410;
        return(p);
     }

int checking(int z, char y, int x)
     {              // FUNCTION TO CALCULATE WETHER STUDENT EXISTS //
        int suansh=0;
        fstream result;
        result.open("result.dat",ios::in|ios::binary);
        result.read((char*)&stdres,sizeof(stdres));
        while(result)
        {
            if(stdres.clas==z&&stdres.s==y&&stdres.rollno==x)
            {
                clrscr();
                gotoxy(22,25);
                cout<<"ENTRY ALREADY EXISTS";
                getch();
                suansh=1;
                break;
            }
            result.read((char*)&stdres, sizeof(stdres));
        }
        return(suansh);
    }


void menu()
          // FUNCTION THAT PRINTS THE MAIN MENU //
 {
       clrscr();
    int ans;
      gotoxy(25,10);
      cout<<"M A I N   M E N U";
      gotoxy(17,15);
      cout<<"1. Create the Primary Result Register";
      gotoxy(17,16);
      cout<<"2. Add Result";
      gotoxy(17,17);
      cout<<"3. Modify Result";
      gotoxy(17,18);
      cout<<"4. Search Result";
      gotoxy(17,19);
      cout<<"5. Delete Result";
      gotoxy(17,20);
      cout<<"6. Generate Merit List Grade wise per subject";
      gotoxy(17,21);
      cout<<"7. Generate Merit List on basis of Total Marks";
      gotoxy(17,22);
      cout<<"8. Exit";

    gotoxy(40,25);
       cout<<"Enter Option(1-8):";
      cin>>ans;
          // SWITCH USED TO MAKE PROGRAM MENU BASED //
         switch(ans)
        {
           case 1:create();
               break;
           case 2: add();
                break;
           case 3: modify();
                break;
           case 4: search();
                break;
           case 5: delet();
                break;
           case 6: merit();
                break;
           case 7: merit1();
                break;
           case 8: exit(0);
        }


}

void search()

 {           // FUNCTION TO SEARCH A STUDENT //
    {
    clrscr();
    int max1=100,max2=70,roll,flag=0;
    char ch;
    gotoxy(23,15);
    cout<<"Enter the Roll No. of the student: ";
    cin>>roll;
    fstream result;
    result.open("result.dat",ios::in|ios::binary);
    result.read((char*)&stdres,sizeof(stdres));
    while(result)
    {
        if(stdres.rollno==roll)
        {
            flag=1;
            clrscr();
            gotoxy(23,25);
            cout<<"RECORD FOUND";
            gotoxy(23,27);
            cout<<"PRESS ANY KEY TO CONTINUE ...";
            getch();


            clrscr();
            cout<<"CLASS:";
            gotoxy (16,1);
            cout<<"SECTION:";
            gotoxy(31,1);
            cout<<"ROLL NO:";
            gotoxy(47,1);
            cout<<"STUDENT'S NAME:";
            gotoxy(1,5);
            cout<<"FATHER NAME:";
            gotoxy(45,5);
            cout<<"CLASS TEACHER:";
            gotoxy(1,9);
            cout<<"S.NO.";
            gotoxy(15,9);
            cout<<"SUBJECT";
            gotoxy(30,9);
            cout<<"MARKS";
            gotoxy(40,9);
            cout<<"MAXIMUM MARKS";
            gotoxy(70,9);
            cout<<"GRADE";
            gotoxy(3,11);
            cout<<"1";
            gotoxy(15,11);
            cout<<"ENGLISH";
            gotoxy(3,13);
            cout<<"2";
            gotoxy(15,13);
            cout<<"MATHS";
            gotoxy(3,15);
            cout<<"3";
            gotoxy(15,15);
            cout<<"PHYSICS";
            gotoxy(3,17);
            cout<<"4";
            gotoxy(15,17);
            cout<<"CHEMISTRY";
            gotoxy(3,19);
            cout<<"5";
            gotoxy(15,19);
            cout<<"COMPUTER";
            gotoxy(3,25);
            cout<<"6";
            gotoxy(15,25);
            cout<<"TOTAL";
            gotoxy(3,27);
            cout<<"7";
            gotoxy(15,27);
            cout<<"PERCENTAGE";
            gotoxy(8,1);
            cout<<stdres.clas; /*printing student information*/
            gotoxy(25,1);
            cout<<stdres.s;
            gotoxy(40,1);
            cout<<stdres.rollno;
            gotoxy(63,1);
            puts(stdres.name);
            fflush(stdout);
            gotoxy(14,5);
            puts(stdres.fatername);
            fflush(stdout);
            gotoxy(60,5);
            puts(stdres.teachname);

            gotoxy(47,11);              /*marks table*/
            cout<<"100";
            gotoxy(32,11);
            cout<<stdres.engmark;
            gotoxy(72,11);
            cout<<grade(stdres.engmark,max1);

            gotoxy(47,13);
            cout<<"100";
            gotoxy(32,13);
            cout<<stdres.matmark;
            gotoxy(72,13);
            cout<<grade(stdres.matmark,max1);

            gotoxy(47,15);
            cout<<" 70";
            gotoxy(32,15);
            cout<<stdres.phymark;
            gotoxy(72,15);
            cout<<grade(stdres.phymark,max2);

            gotoxy(47,17);
            cout<<" 70";
            gotoxy(32,17);
            cout<<stdres.chemark;
            gotoxy(72,17);
            cout<<grade(stdres.chemark,max2);

            gotoxy(47,19);
            cout<<" 70";
            gotoxy(32,19);
            cout<<stdres.commark;
            gotoxy(72,19);
            cout<<grade(stdres.commark,max2);

            gotoxy(47,25);
            cout<<"410";
            gotoxy(31,25);

cout<<total(stdres.engmark,stdres.matmark,stdres.phymark,stdres.chemark,st
dres.commark);

stdres.total=total(stdres.engmark,stdres.matmark,stdres.phymark,stdres.che
mark,stdres.commark);

            gotoxy(32,27);
            stdres.percentage=percent(stdres.total);
            cout<<stdres.percentage;
            gotoxy(80,50);

            result.close();
            getch();
            menu();


        }
        else
        result.read((char*)&stdres,sizeof(stdres));


     }

     if(flag==0)
     {

    clrscr();
    gotoxy(23,23);
    cout<<"SORRY! The Roll No."<<roll<<" does not exist.";
    gotoxy(23,25);
    cout<<"         PLEASE! TRY AGAIN.";
    result.close();
    getch();
    menu();
     }
}
}

void modify()

   {                  // FUNCTION TO MODIFY STUDENT'S DATA //
    clrscr();
    int max1=100,max2=70,roll,flag=0,flag2=0;
    char ch,z,n;
    gotoxy(23,15);
    cout<<"Enter the Roll No. of the student: ";
    cin>>roll;
    fstream result,tfile;
    result.open("result.dat",ios::in|ios::binary);
    tfile.open("tfile.dat",ios::out|ios::binary);
    result.read((char*)&stdres,sizeof(stdres));
    while(result)
    {
        if(stdres.rollno==roll)
        {
            flag=1;
            clrscr();
            gotoxy(23,25);
            cout<<"RECORD FOUND";
            gotoxy(23,27);
            cout<<"PRESS ANY KEY TO CONTINUE ...";
            getch();


            clrscr();
            cout<<"CLASS:";
            gotoxy (16,1);
            cout<<"SECTION:";
            gotoxy(31,1);
            cout<<"ROLL NO:";
            gotoxy(47,1);
            cout<<"STUDENT'S NAME:";
            gotoxy(1,5);
            cout<<"FATHER NAME:";
            gotoxy(45,5);
            cout<<"CLASS TEACHER:";
            gotoxy(1,9);
            cout<<"S.NO.";
            gotoxy(15,9);
            cout<<"SUBJECT";
            gotoxy(30,9);
            cout<<"MARKS";
            gotoxy(40,9);
            cout<<"MAXIMUM MARKS";
            gotoxy(70,9);
            cout<<"GRADE";
            gotoxy(3,11);
            cout<<"1";
            gotoxy(15,11);
            cout<<"ENGLISH";
            gotoxy(3,13);
            cout<<"2";
            gotoxy(15,13);
            cout<<"MATHS";
            gotoxy(3,15);
            cout<<"3";
            gotoxy(15,15);
            cout<<"PHYSICS";
            gotoxy(3,17);
            cout<<"4";
            gotoxy(15,17);
            cout<<"CHEMISTRY";
            gotoxy(3,19);
            cout<<"5";
            gotoxy(15,19);
            cout<<"COMPUTER";
            gotoxy(3,25);
            cout<<"6";
            gotoxy(15,25);
            cout<<"TOTAL";
            gotoxy(3,27);
            cout<<"7";
            gotoxy(15,27);
            cout<<"PERCENTAGE";

            gotoxy(8,1);
            cout<<stdres.clas; /*printing student information*/
            gotoxy(25,1);
            cout<<stdres.s;
            gotoxy(40,1);
            cout<<stdres.rollno;
            gotoxy(63,1);
            puts(stdres.name);
            fflush(stdout);
            gotoxy(14,5);
            puts(stdres.fatername);
            fflush(stdout);
            gotoxy(60,5);
            puts(stdres.teachname);

            gotoxy(47,11);              /*marks table*/
            cout<<"100";
            gotoxy(32,11);
            cout<<stdres.engmark;
            gotoxy(72,11);
            cout<<grade(stdres.engmark,max1);

            gotoxy(47,13);
            cout<<"100";
            gotoxy(32,13);
            cout<<stdres.matmark;
            gotoxy(72,13);
            cout<<grade(stdres.matmark,max1);

            gotoxy(47,15);
            cout<<" 70";
            gotoxy(32,15);
            cout<<stdres.phymark;
            gotoxy(72,15);
            cout<<grade(stdres.phymark,max2);

            gotoxy(47,17);
            cout<<" 70";
            gotoxy(32,17);
            cout<<stdres.chemark;
            gotoxy(72,17);
            cout<<grade(stdres.chemark,max2);

            gotoxy(47,19);
            cout<<" 70";
            gotoxy(32,19);
            cout<<stdres.commark;
            gotoxy(72,19);
            cout<<grade(stdres.commark,max2);

            gotoxy(47,25);
            cout<<"410";
            gotoxy(31,25);

cout<<total(stdres.engmark,stdres.matmark,stdres.phymark,stdres.chemark,st
dres.commark);

stdres.total=total(stdres.engmark,stdres.matmark,stdres.phymark,stdres.che
mark,stdres.commark);

            gotoxy(32,27);
            stdres.percentage=percent(stdres.total);
            cout<<stdres.percentage;



            getch();

            gotoxy(32,40);
            cout<<"WOULD YOU LIKE TO MAKE ANY CHANGES
 ";
            cout<<"IF YES .. PRESS 'A' ";
            z=getch();
            if(z=='a'||z=='A')
            {
                flag2=1;
                clrscr();            /*again printing format for modification*/
                cout<<"CLASS:";
                gotoxy (16,1);
            cout<<"SECTION:";
            gotoxy(31,1);
            cout<<"ROLL NO:";
            gotoxy(47,1);
            cout<<"STUDENT'S NAME:";
            gotoxy(1,5);
            cout<<"FATHER NAME:";
            gotoxy(45,5);
            cout<<"CLASS TEACHER:";
            gotoxy(1,9);
            cout<<"S.NO.";
            gotoxy(15,9);
            cout<<"SUBJECT";
            gotoxy(30,9);
            cout<<"MARKS";
            gotoxy(40,9);
            cout<<"MAXIMUM MARKS";
            gotoxy(70,9);
            cout<<"GRADE";
            gotoxy(3,11);
            cout<<"1";
            gotoxy(15,11);
            cout<<"ENGLISH";
            gotoxy(3,13);
            cout<<"2";
            gotoxy(15,13);
            cout<<"MATHS";
            gotoxy(3,15);
            cout<<"3";
            gotoxy(15,15);
            cout<<"PHYSICS";
            gotoxy(3,17);
            cout<<"4";
            gotoxy(15,17);
            cout<<"CHEMISTRY";
            gotoxy(3,19);
            cout<<"5";
            gotoxy(15,19);
            cout<<"COMPUTER";
            gotoxy(3,25);
            cout<<"6";
            gotoxy(15,25);
            cout<<"TOTAL";
            gotoxy(3,27);
            cout<<"7";
            gotoxy(15,27);
            cout<<"PERCENTAGE";


            gotoxy(8,1);
            cout<<stdres.clas; /*printing student information*/
            gotoxy(25,1);
            cout<<stdres.s;
            gotoxy(40,1);
            cout<<stdres.rollno;
            gotoxy(63,1);



    gotoxy(63,1);
    gets(stdres.name);
    fflush(stdin);

    gotoxy(14,5);
    gets(stdres.fatername);
    fflush(stdin);
    gotoxy(60,5);
    gets(stdres.teachname);

    gotoxy(47,11);                               /*marks table*/
    cout<<"100";
    gotoxy(32,11);
    cin>>stdres.engmark;
    gotoxy(72,11);
    cout<<grade(stdres.engmark,max1);

    gotoxy(47,13);
    cout<<"100";
    gotoxy(32,13);
    cin>>stdres.matmark;
    gotoxy(72,13);
    cout<<grade(stdres.matmark,max1);

    gotoxy(47,15);
    cout<<" 70";
    gotoxy(32,15);
    cin>>stdres.phymark;
    gotoxy(72,15);
    cout<<grade(stdres.phymark,max2);

    gotoxy(47,17);
    cout<<" 70";
    gotoxy(32,17);
    cin>>stdres.chemark;
    gotoxy(72,17);
    cout<<grade(stdres.chemark,max2);

    gotoxy(47,19);
    cout<<" 70";
    gotoxy(32,19);
    cin>>stdres.commark;
    gotoxy(72,19);
    cout<<grade(stdres.commark,max2);

    gotoxy(47,25);
    cout<<"410";
    gotoxy(31,25);

cout<<total(stdres.engmark,stdres.matmark,stdres.phymark,stdres.chemark,st
dres.commark);

stdres.total=total(stdres.engmark,stdres.matmark,stdres.phymark,stdres.che
mark,stdres.commark);

    gotoxy(32,27);
    stdres.percentage=percent(stdres.total);
    cout<<stdres.percentage;
    gotoxy(80,50);


    tfile.write((char*)&stdres,sizeof(stdres));
    result.read((char*)&stdres,sizeof(stdres));

    getch();
    }
           else
           {
        tfile.write((char*)&stdres,sizeof(stdres));
        result.read((char*)&stdres,sizeof(stdres));
           }


        }
        else
        {
            tfile.write((char*)&stdres,sizeof(stdres));

            result.read((char*)&stdres,sizeof(stdres));
           }

     }
     result.close();
     tfile.close();

     if(flag2==1)
     {
    result.open("result.dat",ios::out|ios::binary);
    tfile.open("tfile.dat",ios::in|ios::binary);
    tfile.read((char*)&stdres,sizeof(stdres));
    while(tfile)
    {
        result.write((char*)&stdres,sizeof(stdres));
        tfile.read((char*)&stdres,sizeof(stdres));
    }
    result.close();
    tfile.close();



     }

     if(flag==0)
     {

    clrscr();
    gotoxy(23,23);
    cout<<"SORRY! The Roll No."<<roll<<" does not exist.";
    gotoxy(23,25);
    cout<<"         PLEASE! TRY AGAIN.";
    result.close();
    getch();

     }


  menu();
}



void merit1()


       {                // FUNCTION TO GENERATE MERIT LIST //
    clrscr();
    int larg,l,flag=0;
    gotoxy(15,17);
    cout<<"Press any key for the merit list
";
    gotoxy(80,50);
    getch();
    clrscr();
    gotoxy(15,17);
    cout<<"PLEASE wait while the list is being generated...";
    gotoxy(80,50);
    delay(2000);
    clrscr();
    gotoxy(15,15);
    cout<<"LIST generated.";
    gotoxy(15,17);
    cout<<"press any key to continue...";
    gotoxy(80,50);
    getch();
    clrscr();
    fstream result,tfile;
    result.open("result.dat",ios::in|ios::binary);
    tfile.open("tfile.dat",ios::out|ios::binary);


    result.read((char*)&stdres,sizeof(stdres));
    while(result)
    {

l=total(stdres.engmark,stdres.matmark,stdres.phymark,stdres.chemark,stdres
commark);
        if(l>368)
        {
        temp.roll=stdres.rollno;
        strcpy(temp.name,stdres.name);
        temp.clas=stdres.clas;
        temp.sec=stdres.s;
        temp.total=l;
        tfile.write((char*)&temp,sizeof(temp));
        }
        result.read((char*)&stdres,sizeof(stdres));


    }


    result.close();
    tfile.close();
    gotoxy(12,1);
    cout<<"ROLL NO.";
    gotoxy(22,1);
    cout<<"NAME";
    gotoxy(38,1);
    cout<<"TOTAL";

    int k=3;
    for(int i=410;i>368;i--)
    {

        tfile.open("tfile.dat",ios::in|ios::binary);
        tfile.read((char*)&temp,sizeof(temp));
        while(tfile)
        {
            if(temp.total==i)
            {
                flag=1;
                gotoxy(15,k);
                cout<<temp.roll;
                gotoxy(22,k);
                cout<<temp.name;
                gotoxy(39,k++);
                cout<<temp.total;
                k++;

            }
            tfile.read((char*)&temp,sizeof(temp));

        }
        tfile.close();
    }


    if(flag==0)
    {
        clrscr();
        gotoxy(15,20);
        cout<<"SORRY! No record found.";
    }
    gotoxy(80,50);
    getch();
    menu();

}

 void merit()
{
          // FUNCTION TO GENERATE SECOND MERIT LIST //
    reverse:
    clrscr();
    int n,c,k=3,flag=0,i;
    gotoxy(15,2);
    cout<<"MENU";
    gotoxy(15,4);
    cout<<"1. ENGLISH";
    gotoxy(15,5);
    cout<<"2. MATHEMATICS";
    gotoxy(15,6);
    cout<<"3. PHYSICS";
    gotoxy(15,7);
    cout<<"4. CHEMISTRY";
    gotoxy(15,8);
    cout<<"5. COMPUTER";
    gotoxy(15,18);
    cout<<"Enter your option: ";
    cin>>n;
    clrscr();

    fstream result;
    switch(n)
    {

        /*english*/

        case 1: back1:
            gotoxy(15,2);
            cout<<"1. Students with Grade 'A'";
            gotoxy(15,3);
            cout<<"2. Students with Grade 'B'";
            gotoxy(15,4);
            cout<<"3. Students with Grade 'C'";
            gotoxy(15,5);
            cout<<"4. Students with Grade 'E' ";
            gotoxy(15,7);
            cout<<"Enter your Option: ";
            cin>>c;
            clrscr();
            gotoxy(14,1);
            cout<<"Roll no.";
            gotoxy(25,1);
            cout<<"Name";
            gotoxy(37,1);
            cout<<"Class";
            gotoxy(45,1);
            cout<<"Section";
            gotoxy(60,1);
            cout<<"<Marks";
            switch(c)
            {
                case 1: for(i=100;i>74;i--)
                    {

                    result.open("result.dat",ios::in|ios::binary);
                    result.read((char*)&stdres,sizeof(stdres));
                    while(result)
                    {
                    if(stdres.engmark==i)
                        {
                            flag=1;
                            gotoxy (17,k);
                            cout<<stdres.rollno;
                            gotoxy(25,k);
                            cout<<stdres.name;
                            gotoxy(39,k);
                            cout<<stdres.clas;
                            gotoxy(47,k);
                            cout<<stdres.s;
                            gotoxy(62,k++);
                            cout<<stdres.engmark;
                            k++;

                        }
                    result.read((char*)&stdres,sizeof(stdres));

                    }
                    result.close();
                    gotoxy(80,50);

                    }
                    if(flag==0)
                    {
                        gotoxy(20,22);                        gotoxy(20,22);
                        cout<<"NO RECORD FOUND.";
                        gotoxy(80,50);

                    }

                    getch();

                    break;

                case 2:    for(i=74;i>60;i--)
                    {

                    result.open("result.dat",ios::in|ios::binary);
                    result.read((char*)&stdres,sizeof(stdres));
                    while(result)
                    {
                    if(stdres.engmark==i)
                        {
                            flag=1;
                            gotoxy (17,k);
                            cout<<stdres.rollno;
                            gotoxy(25,k);
                            cout<<stdres.name;
                            gotoxy(39,k);
                            cout<<stdres.clas;
                            gotoxy(47,k);
                            cout<<stdres.s;
                            gotoxy(62,k++);
                            cout<<stdres.engmark;
                            k++;

                        }
                    result.read((char*)&stdres,sizeof(stdres));

                    }
                    result.close();
                    }
                    gotoxy(80,50);
                                        if(flag==0)
                    {

                        gotoxy(20,22);
                        cout<<"NO RECORD FOUND.";
                        gotoxy(80,50);

                    }
                    getch();
                    break;

                case 3:   for(i=60;i>33;i--)
                    {

                    result.open("result.dat",ios::in|ios::binary);
                    result.read((char*)&stdres,sizeof(stdres));
                    while(result)
                    {
                    if(stdres.engmark==i)
                        {
                            flag=1;
                            gotoxy (17,k);
                            cout<<stdres.rollno;
                            gotoxy(25,k);
                            cout<<stdres.name;
                            gotoxy(39,k);
                            cout<<stdres.clas;
                            gotoxy(47,k);
                            cout<<stdres.s;
                            gotoxy(62,k++);
                            cout<<stdres.engmark;
                            k++;

                        }
                    result.read((char*)&stdres,sizeof(stdres));

                    }
                    result.close();
                    }
                    gotoxy(80,50);
                    if(flag==0)
                    {
                        gotoxy(20,22);
                        cout<<"NO RECORD FOUND.";
                        gotoxy(80,50);
                    }
                     getch();
                    break;
                case 4:    for( i=33;i>0;i--)
                    {

                    result.open("result.dat",ios::in|ios::binary);
                    result.read((char*)&stdres,sizeof(stdres));
                    while(result)
                    {
                    if(stdres.engmark==i)
                        {
                            flag=1;
                            gotoxy (17,k);
                            cout<<stdres.rollno;
                            gotoxy(25,k);
                            cout<<stdres.name;
                            gotoxy(39,k);
                            cout<<stdres.clas;
                            gotoxy(47,k);
                            cout<<stdres.s;
                            gotoxy(62,k++);
                            cout<<stdres.engmark;
                             k++;

                        }
                    result.read((char*)&stdres,sizeof(stdres));

                    }
                    result.close();
                    }
                    gotoxy(80,50);
                    if(flag==0)
                    {
                        gotoxy(20,22);
                        cout<<"NO RECORD FOUND.";
                        gotoxy(80,50);
                    }
                    getch();
                    break;
                default:clrscr();
                    gotoxy(25,25);
                    cout<<"Invalid Option.";
                    getch();
                    goto back1;
            }

            menu();


            /*mathematics*/
        case 2: back2:
            gotoxy(15,2);
            cout<<"1. Students with Grade 'A'";
            gotoxy(15,3);
            cout<<"2. Students with Grade 'B'";
            gotoxy(15,4);
            cout<<"3. Students with Grade 'C'";
            gotoxy(15,5);
            cout<<"4. Students with Grade 'E' ";
            gotoxy(15,7);
            cout<<"Enter your Option: ";
            cin>>c;
            clrscr();
            gotoxy(14,1);
            cout<<"Roll no.";
            gotoxy(25,1);
            cout<<"Name";
            gotoxy(37,1);
            cout<<"Class";
            gotoxy(45,1);
            cout<<"Section";
            gotoxy(60,1);
            cout<<"Marks";
            switch(c)
            {
                case 1: for(i=100;i>74;i--)
                    {

                    result.open("result.dat",ios::in|ios::binary);
                    result.read((char*)&stdres,sizeof(stdres));
                    while(result)
                    {
                    if(stdres.matmark==i)
                        {
                            flag=1;
                            gotoxy (17,k);
                            cout<<stdres.rollno;
                            gotoxy(25,k);
                            cout<<stdres.name;
                            gotoxy(39,k);
                            cout<<stdres.clas;
                            gotoxy(47,k);
                            cout<<stdres.s;
                            gotoxy(62,k++);
                            cout<<stdres.matmark;
                            k++;

                        }
                    result.read((char*)&stdres,sizeof(stdres));

                    }
                    result.close();
                    gotoxy(80,50);

                    }
                    if(flag==0)
                    {
                        gotoxy(20,22);                        gotoxy(20,22);
                        cout<<"NO RECORD FOUND.";
                        gotoxy(80,50);

                    }

                    getch();

                    break;

                case 2:    for(i=74;i>60;i--)
                    {

                    result.open("result.dat",ios::in|ios::binary);
                    result.read((char*)&stdres,sizeof(stdres));
                    while(result)
                    {
                    if(stdres.matmark==i)
                        {
                            flag=1;
                            gotoxy (17,k);
                            cout<<stdres.rollno;
                            gotoxy(25,k);
                            cout<<stdres.name;
                            gotoxy(39,k);
                            cout<<stdres.clas;
                            gotoxy(47,k);
                            cout<<stdres.s;
                            gotoxy(62,k++);
                            cout<<stdres.matmark;
                            k++;

                        }
                    result.read((char*)&stdres,sizeof(stdres));

                    }
                    result.close();
                    }
                    gotoxy(80,50);
                        if(flag==0)
                    {

                        gotoxy(20,22);
                        cout<<"NO RECORD FOUND.";
                        gotoxy(80,50);

                    }
                    getch();
                    break;

                case 3:   for(i=60;i>33;i--)
                    {

                    result.open("result.dat",ios::in|ios::binary);
                    result.read((char*)&stdres,sizeof(stdres));
                    while(result)
                    {
                    if(stdres.matmark==i)
                        {
                            flag=1;
                            gotoxy (17,k);
                            cout<<stdres.rollno;
                            gotoxy(25,k);
                            cout<<stdres.name;
                            gotoxy(39,k);
                            cout<<stdres.clas;
                            gotoxy(47,k);
                            cout<<stdres.s;
                            gotoxy(62,k++);
                            cout<<stdres.matmark;
                            k++;

                        }
                    result.read((char*)&stdres,sizeof(stdres));

                    }
                    result.close();
                    }
                    gotoxy(80,50);
                    if(flag==0)
                    {
                        gotoxy(20,22);
                        cout<<"NO RECORD FOUND.";
                        gotoxy(80,50);
                    }
                     getch();
                    break;
                case 4:    for( i=33;i>0;i--)
                    {

                    result.open("result.dat",ios::in|ios::binary);
                    result.read((char*)&stdres,sizeof(stdres));
                    while(result)
                    {
                    if(stdres.matmark==i)
                        {
                            flag=1;
                            gotoxy (17,k);
                            cout<<stdres.rollno;
                            gotoxy(25,k);
                            cout<<stdres.name;
                            gotoxy(39,k);
                            cout<<stdres.clas;
                            gotoxy(47,k);
                            cout<<stdres.s;
                            gotoxy(62,k++);
                            cout<<stdres.matmark;
                             k++;

                        }
                    result.read((char*)&stdres,sizeof(stdres));

                    }
                    result.close();
                    }
                    gotoxy(80,50);
                    if(flag==0)
                    {
                        gotoxy(20,22);
                        cout<<"NO RECORD FOUND.";
                        gotoxy(80,50);
                    }
                    getch();
                    break;
                default:clrscr();
                    gotoxy(25,25);
                    cout<<"Invalid Option.";
                    getch();
                    goto back2;
            }

            menu();

               /*physics*/

        case 3: back3:
            gotoxy(15,2);
            cout<<"1. Students with Grade 'A'";
            gotoxy(15,3);
            cout<<"2. Students with Grade 'B'";
            gotoxy(15,4);
            cout<<"3. Students with Grade 'C'";
            gotoxy(15,5);
            cout<<"4. Students with Grade 'E' ";
            gotoxy(15,7);
            cout<<"Enter your Option: ";
            cin>>c;
            clrscr();
            gotoxy(14,1);
            cout<<"Roll no.";
            gotoxy(25,1);
            cout<<"Name";
            gotoxy(37,1);
            cout<<"Class";
            gotoxy(45,1);
            cout<<"Section";
            gotoxy(60,1);
            cout<<"Marks";
            switch(c)
            {
                case 1: for(i=100;i>74;i--)
                    {

                    result.open("result.dat",ios::in|ios::binary);
                    result.read((char*)&stdres,sizeof(stdres));
                    while(result)
                    {
                    if(stdres.phymark==i)
                        {
                            flag=1;
                            gotoxy (17,k);
                            cout<<stdres.rollno;
                            gotoxy(25,k);
                            cout<<stdres.name;
                            gotoxy(39,k);
                            cout<<stdres.clas;
                            gotoxy(47,k);
                            cout<<stdres.s;
                            gotoxy(62,k++);
                            cout<<stdres.phymark;
                            k++;

                        }
                    result.read((char*)&stdres,sizeof(stdres));

                    }
                    result.close();
                    gotoxy(80,50);

                    }
                    if(flag==0)
                    {
                        gotoxy(20,22);                        gotoxy(20,22);
                        cout<<"NO RECORD FOUND.";
                        gotoxy(80,50);

                    }

                    getch();

                    break;

                case 2:    for(i=74;i>60;i--)
                    {

                    result.open("result.dat",ios::in|ios::binary);
                    result.read((char*)&stdres,sizeof(stdres));
                    while(result)
                    {
                    if(stdres.phymark==i)
                        {
                            flag=1;
                            gotoxy (17,k);
                            cout<<stdres.rollno;
                            gotoxy(25,k);
                            cout<<stdres.name;
                            gotoxy(39,k);
                            cout<<stdres.clas;
                            gotoxy(47,k);
                            cout<<stdres.s;
                            gotoxy(62,k++);
                            cout<<stdres.phymark;
                            k++;

                        }
                    result.read((char*)&stdres,sizeof(stdres));

                    }
                    result.close();
                    }
                    gotoxy(80,50);
                                        if(flag==0)
                    {

                        gotoxy(20,22);
                        cout<<"NO RECORD FOUND.";
                        gotoxy(80,50);

                    }
                    getch();
                    break;

                case 3:   for(i=60;i>33;i--)
                    {

                    result.open("result.dat",ios::in|ios::binary);
                    result.read((char*)&stdres,sizeof(stdres));
                    while(result)
                    {
                    if(stdres.phymark==i)
                        {
                            flag=1;
                            gotoxy (17,k);
                            cout<<stdres.rollno;
                            gotoxy(25,k);
                            cout<<stdres.name;
                            gotoxy(39,k);
                            cout<<stdres.clas;
                            gotoxy(47,k);
                            cout<<stdres.s;
                            gotoxy(62,k++);
                            cout<<stdres.phymark;
                            k++;

                        }
                    result.read((char*)&stdres,sizeof(stdres));

                    }
                    result.close();
                    }
                    gotoxy(80,50);
                    if(flag==0)
                    {
                        gotoxy(20,22);
                        cout<<"NO RECORD FOUND.";
                        gotoxy(80,50);
                    }
                     getch();
                    break;
                case 4:    for( i=33;i>0;i--)
                    {

                    result.open("result.dat",ios::in|ios::binary);
                    result.read((char*)&stdres,sizeof(stdres));
                    while(result)
                    {
                    if(stdres.phymark==i)
                        {
                            flag=1;
                            gotoxy (17,k);
                            cout<<stdres.rollno;
                            gotoxy(25,k);
                            cout<<stdres.name;
                            gotoxy(39,k);
                            cout<<stdres.clas;
                            gotoxy(47,k);
                            cout<<stdres.s;
                            gotoxy(62,k++);
                            cout<<stdres.phymark;
                             k++;

                        }
                    result.read((char*)&stdres,sizeof(stdres));

                    }
                    result.close();
                    }
                    gotoxy(80,50);
                    if(flag==0)
                    {
                        gotoxy(20,22);
                        cout<<"NO RECORD FOUND.";
                        gotoxy(80,50);
                    }
                    getch();
                    break;
                default:clrscr();
                    gotoxy(25,25);
                    cout<<"Invalid Option.";
                    getch();
                    goto back3;
            }

            menu();


            /*chemistry*/
        case 4: back4:
            gotoxy(15,2);
            cout<<"1. Students with Grade 'A'";
            gotoxy(15,3);
            cout<<"2. Students with Grade 'B'";
            gotoxy(15,4);
            cout<<"3. Students with Grade 'C'";
            gotoxy(15,5);
            cout<<"4. Students with Grade 'E' ";
            gotoxy(15,7);
            cout<<"Enter your Option: ";
            cin>>c;
            clrscr();
            gotoxy(14,1);
            cout<<"Roll no.";
            gotoxy(25,1);
            cout<<"Name";
            gotoxy(37,1);
            cout<<"Class";
            gotoxy(45,1);
            cout<<"Section";
            gotoxy(60,1);
            cout<<"Marks";
            switch(c)
            {
                case 1: for(i=100;i>74;i--)
                    {

                    result.open("result.dat",ios::in|ios::binary);
                    result.read((char*)&stdres,sizeof(stdres));
                    while(result)
                    {
                    if(stdres.chemark==i)
                        {
                            flag=1;
                            gotoxy (17,k);
                            cout<<stdres.rollno;
                            gotoxy(25,k);
                            cout<<stdres.name;
                            gotoxy(39,k);
                            cout<<stdres.clas;
                            gotoxy(47,k);
                            cout<<stdres.s;
                            gotoxy(62,k++);
                            cout<<stdres.chemark;
                            k++;

                        }
                    result.read((char*)&stdres,sizeof(stdres));

                    }
                    result.close();
                    gotoxy(80,50);

                    }
                    if(flag==0)
                    {
                        gotoxy(20,22);                        gotoxy(20,22);
                        cout<<"NO RECORD FOUND.";
                        gotoxy(80,50);

                    }

                    getch();

                    break;

                case 2:    for(i=74;i>60;i--)
                    {

                    result.open("result.dat",ios::in|ios::binary);
                    result.read((char*)&stdres,sizeof(stdres));
                    while(result)
                    {
                    if(stdres.chemark==i)
                        {
                            flag=1;
                            gotoxy (17,k);
                            cout<<stdres.rollno;
                            gotoxy(25,k);
                            cout<<stdres.name;
                            gotoxy(39,k);
                            cout<<stdres.clas;
                            gotoxy(47,k);
                            cout<<stdres.s;
                            gotoxy(62,k++);
                            cout<<stdres.chemark;
                            k++;

                        }
                    result.read((char*)&stdres,sizeof(stdres));

                    }
                    result.close();
                    }
                    gotoxy(80,50);
                                        if(flag==0)
                    {

                        gotoxy(20,22);
                        cout<<"NO RECORD FOUND.";
                        gotoxy(80,50);

                    }
                    getch();
                    break;

                case 3:   for(i=60;i>33;i--)
                    {

                    result.open("result.dat",ios::in|ios::binary);
                    result.read((char*)&stdres,sizeof(stdres));
                    while(result)
                    {
                    if(stdres.chemark==i)
                        {
                            flag=1;
                            gotoxy (17,k);
                            cout<<stdres.rollno;
                            gotoxy(25,k);
                            cout<<stdres.name;
                            gotoxy(39,k);
                            cout<<stdres.clas;
                            gotoxy(47,k);
                            cout<<stdres.s;
                            gotoxy(62,k++);
                            cout<<stdres.chemark;
                            k++;

                        }
                    result.read((char*)&stdres,sizeof(stdres));

                    }
                    result.close();
                    }
                    gotoxy(80,50);
                    if(flag==0)
                    {
                        gotoxy(20,22);
                        cout<<"NO RECORD FOUND.";
                        gotoxy(80,50);
                    }
                     getch();
                    break;
                case 4:    for( i=33;i>0;i--)
                    {

                    result.open("result.dat",ios::in|ios::binary);
                    result.read((char*)&stdres,sizeof(stdres));
                    while(result)
                    {
                    if(stdres.chemark==i)
                        {
                            flag=1;
                            gotoxy (17,k);
                            cout<<stdres.rollno;
                            gotoxy(25,k);
                            cout<<stdres.name;
                            gotoxy(39,k);
                            cout<<stdres.clas;
                            gotoxy(47,k);
                            cout<<stdres.s;
                            gotoxy(62,k++);
                            cout<<stdres.chemark;
                             k++;

                        }
                    result.read((char*)&stdres,sizeof(stdres));

                    }
                    result.close();
                    }
                    gotoxy(80,50);
                    if(flag==0)
                    {
                        gotoxy(20,22);
                        cout<<"NO RECORD FOUND.";
                        gotoxy(80,50);
                    }
                    getch();
                    break;
                default:clrscr();
                    gotoxy(25,25);
                    cout<<"Invalid Option.";
                    getch();
                    goto back4;
            }

            menu();

            /*computer*/

        case 5: back5:
            gotoxy(15,2);
            cout<<"1. Students with Grade 'A'";
            gotoxy(15,3);
            cout<<"2. Students with Grade 'B'";
            gotoxy(15,4);
            cout<<"3. Students with Grade 'C'";
            gotoxy(15,5);
            cout<<"4. Students with Grade 'E' ";
            gotoxy(15,7);
            cout<<"Enter your Option: ";
            cin>>c;
            clrscr();
            gotoxy(14,1);
            cout<<"Roll no.";
            gotoxy(25,1);
            cout<<"Name";
            gotoxy(37,1);
            cout<<"Class";
            gotoxy(45,1);
            cout<<"Section";
            gotoxy(60,1);
            cout<<"Marks";
            switch(c)
            {
                case 1: for(i=100;i>74;i--)
                    {

                    result.open("result.dat",ios::in|ios::binary);
                    result.read((char*)&stdres,sizeof(stdres));
                    while(result)
                    {
                    if(stdres.commark==i)
                        {
                            flag=1;
                            gotoxy (17,k);
                            cout<<stdres.rollno;
                            gotoxy(25,k);
                            cout<<stdres.name;
                            gotoxy(39,k);
                            cout<<stdres.clas;
                            gotoxy(47,k);
                            cout<<stdres.s;
                            gotoxy(62,k++);
                            cout<<stdres.commark;
                            k++;

                        }
                    result.read((char*)&stdres,sizeof(stdres));

                    }
                    result.close();
                    gotoxy(80,50);

                    }
                    if(flag==0)
                    {
                        gotoxy(20,22);                        gotoxy(20,22);
                        cout<<"NO RECORD FOUND.";
                        gotoxy(80,50);

                    }

                    getch();

                    break;

                case 2:    for(i=74;i>60;i--)
                    {

                    result.open("result.dat",ios::in|ios::binary);
                    result.read((char*)&stdres,sizeof(stdres));
                    while(result)
                    {
                    if(stdres.commark==i)
                        {
                            flag=1;
                            gotoxy (17,k);
                            cout<<stdres.rollno;
                            gotoxy(25,k);
                            cout<<stdres.name;
                            gotoxy(39,k);
                            cout<<stdres.clas;
                            gotoxy(47,k);
                            cout<<stdres.s;
                            gotoxy(62,k++);
                            cout<<stdres.commark;
                            k++;

                        }
                    result.read((char*)&stdres,sizeof(stdres));

                    }
                    result.close();
                    }
                    gotoxy(80,50);

                    if(flag==0)
                    {

                        gotoxy(20,22);
                        cout<<"NO RECORD FOUND.";
                        gotoxy(80,50);

                    }
                    getch();
                    break;

                case 3:   for(i=60;i>33;i--)
                    {

                    result.open("result.dat",ios::in|ios::binary);
                    result.read((char*)&stdres,sizeof(stdres));
                    while(result)
                    {
                    if(stdres.commark==i)
                        {
                            flag=1;
                            gotoxy (17,k);
                            cout<<stdres.rollno;
                            gotoxy(25,k);
                            cout<<stdres.name;
                            gotoxy(39,k);
                            cout<<stdres.clas;
                            gotoxy(47,k);
                            cout<<stdres.s;
                            gotoxy(62,k++);
                            cout<<stdres.commark;
                            k++;

                        }
                    result.read((char*)&stdres,sizeof(stdres));

                    }
                    result.close();
                    }
                    gotoxy(80,50);
                    if(flag==0)
                    {
                        gotoxy(20,22);
                        cout<<"NO RECORD FOUND.";
                        gotoxy(80,50);
                    }
                     getch();
                    break;
                case 4:    for( i=33;i>0;i--)
                    {

                    result.open("result.dat",ios::in|ios::binary);
                    result.read((char*)&stdres,sizeof(stdres));
                    while(result)
                    {
                    if(stdres.commark==i)
                        {
                            flag=1;
                            gotoxy (17,k);
                            cout<<stdres.rollno;
                            gotoxy(25,k);
                            cout<<stdres.name;
                            gotoxy(39,k);
                            cout<<stdres.clas;
                            gotoxy(47,k);
                            cout<<stdres.s;
                            gotoxy(62,k++);
                            cout<<stdres.commark;
                             k++;

                        }
                    result.read((char*)&stdres,sizeof(stdres));

                    }
                    result.close();
                    }
                    gotoxy(80,50);
                    if(flag==0)
                    {
                        gotoxy(20,22);
                        cout<<"NO RECORD FOUND.";
                        gotoxy(80,50);
                    }
                    getch();
                    break;
                default:clrscr();
                    gotoxy(25,25);
                    cout<<"Invalid Option.";
                    getch();
                    goto back5;
            }

            menu();


        default: clrscr();
             cout<<"INVALID OPTION";
             getch();
             menu();

     }





    gotoxy(80,50);


}

void delet()


  {            // FUNCTION TO DELETE A RESULT ENTRY //
    clrscr();
    student stud;
    int r,s,flag=0;
    char t,z;
    cout<<"Enter the class: ";
    cin>>s;
    cout<<"Enter the section: ";
    cin>>t;
    cout<<"Enter the roll no.";
    cin>>r;
    fstream result,tfile;

    result.open("result.dat",ios::in|ios::binary);
    tfile.open("tfile.dat",ios::out|ios::binary);
    result.read((char*)&stdres,sizeof(stdres));
    while(result)
    {
        if(stdres.clas==s&&stdres.s==t&&stdres.rollno==r)
        {
            clrscr();
            flag=1;
            gotoxy(20,20);
            cout<<"RECORD FOUND AND DELETED.";
            getch();
        }
        else
        tfile.write((char*)&stdres,sizeof(stdres));
        result.read((char*)&stdres,sizeof(stdres));
    }
    result.close();
    tfile.close();

    if(flag==0)
    {
        clrscr();
        gotoxy(25,22);
        cout<<"RECORD NOT FOUND.";
        getch();
        exit(0);
    }


    result.open("result.dat",ios::out|ios::binary);
    tfile.open("tfile.dat",ios::in|ios::binary);
    tfile.read((char*)&stdres,sizeof(stdres));
    while(tfile)
    {
        result.write((char*)&stdres,sizeof(stdres));
        tfile.read((char*)&stdres,sizeof(stdres));
    }
    result.close();
    tfile.close();

       /*DISPLAYING THE RECORDS AFTER DELETION*/

       clrscr();
       cout<<"New File after Deletion of Record";
       getch();




        result.open("result.dat",ios::in|ios::binary);
        result.read((char*)&stdres,sizeof(stdres));


       while(result)
    {
    clrscr();
    int max1=100,max2=70;
    char ch;
    cout<<"CLASS:";
    gotoxy (16,1);
    cout<<"SECTION:";
    gotoxy(31,1);
    cout<<"ROLL NO:";
    gotoxy(47,1);
    cout<<"STUDENT'S NAME:";
    gotoxy(1,5);
    cout<<"FATHER NAME:";
    gotoxy(45,5);
    cout<<"CLASS TEACHER:";
    gotoxy(1,9);
    cout<<"S.NO.";
    gotoxy(15,9);
    cout<<"SUBJECT";
    gotoxy(30,9);
    cout<<"MARKS";
    gotoxy(40,9);
    cout<<"MAXIMUM MARKS";
    gotoxy(70,9);
    cout<<"GRADE";
    gotoxy(3,11);
    cout<<"1";
    gotoxy(15,11);
    cout<<"ENGLISH";
    gotoxy(3,13);
    cout<<"2";
    gotoxy(15,13);
    cout<<"MATHS";
    gotoxy(3,15);
    cout<<"3";
    gotoxy(15,15);
    cout<<"PHYSICS";
    gotoxy(3,17);
    cout<<"4";
    gotoxy(15,17);
    cout<<"CHEMISTRY";
    gotoxy(3,19);
    cout<<"5";
    gotoxy(15,19);
    cout<<"COMPUTER";
    gotoxy(3,25);
    cout<<"6";
    gotoxy(15,25);
    cout<<"TOTAL";
    gotoxy(3,27);
    cout<<"7";
    gotoxy(15,27);
    cout<<"PERCENTAGE";
            gotoxy(8,1);
            cout<<stdres.clas; /*printing student information*/
            gotoxy(25,1);
            cout<<stdres.s;
            gotoxy(40,1);
            cout<<stdres.rollno;
            gotoxy(63,1);
            puts(stdres.name);
            fflush(stdout);
            gotoxy(14,5);
            puts(stdres.fatername);
            fflush(stdout);
            gotoxy(60,5);
            puts(stdres.teachname);

            gotoxy(47,11);              /*marks table*/
            cout<<"100";
            gotoxy(32,11);
            cout<<stdres.engmark;
            gotoxy(72,11);
            cout<<stud.grade(stdres.engmark,max1);

            gotoxy(47,13);
            cout<<"100";
            gotoxy(32,13);
            cout<<stdres.matmark;
            gotoxy(72,13);
            cout<<stud.grade(stdres.matmark,max1);

            gotoxy(47,15);
            cout<<" 70";
            gotoxy(32,15);
            cout<<stdres.phymark;
            gotoxy(72,15);
            cout<<stud.grade(stdres.phymark,max2);

            gotoxy(47,17);
            cout<<" 70";
            gotoxy(32,17);
            cout<<stdres.chemark;
            gotoxy(72,17);
            cout<<stud.grade(stdres.chemark,max2);

            gotoxy(47,19);
            cout<<" 70";
            gotoxy(32,19);
            cout<<stdres.commark;
            gotoxy(72,19);
            cout<<stud.grade(stdres.commark,max2);


    gotoxy(47,25);
    cout<<"410";
    gotoxy(31,25);

cout<< stud.total(stdres.engmark, stdres.matmark, stdres.phymark, stdres.chemark,stdres.commark);

stdres.total = stud.total(stdres.engmark,stdres.matmark, stdres.phymark, stdres.chemark, stdres.commark);

    gotoxy(32,27);
    stdres.percentage=stud.percent(stdres.total);
    cout<<stdres.percentage;
    gotoxy(80,50);
    result.read((char*)&stdres,sizeof(stdres));
    getch();

   }

    result.close();
    menu();

 }