.:: simple help on simple program please ::.

beba
12-06-2008, 02:50 PM
hi all
i hope all of you are fine

i have a program to accomplesh and i was finished a part of it

i just need simple help to complete it

i have the following :


#define male 'm'
#define female 'f'

#include <iostream>
#include <cstdlib>
#include <ctime>
#include <string>
using namespace std;

class person
{
public:
person(int,char,string);
person();
int id();
char sex();
string name();
int changename(string);
static int reset_count();
protected:
int person_id;
char person_sex;
string person_name;
static int count;
};

class student: public person
{
public:
student (string,char);
student (string,char,char);
int number();
char specialization();
protected:
int student_number;
char student_specialization;
};

class employee: public person
{
public:
employee (int,char);
employee (string,char,char);
int number ();
char working ();
protected:
int employee_number;
char employee_working;
};

int person::count;

int person::reset_count() {
person::count=0;
return (person::count);
}

person::person(int a, char b, string c)
{
person_id=person::count;
person::count++;
person_sex=b;
person_name=c;
}

person::person()
{
person_id=person::count;
person::count++;
char this_persons_sex;
int random=rand()%2;
if (random==0) this_persons_sex='m';
else this_persons_sex='f';
person_sex=this_persons_sex;
person_name="";
}


int person::id()
{
return (person_id);
}

char person::sex()
{
return (person_sex);
}

string person::name()
{
return (person_name);
}

int person::changename(string a)
{
person_name=a;
return 0;
}


student::student(string a, char b )
{
student_number=person_id;
person_name=a;
student_specialization=b;
}

student::student(string a, char b, char c )
{
person_name=a;
student_number=person_id;
student_specialization=b;
person_sex=c;
}

int student::number()
{
return (student_number);
}

char student::specialization()
{
return (student_specialization);
}

employee::employee(int a, char b )
{
employee_number=a;
employee_working=b;
}

employee::employee(string a, char b, char c )
{
person_name=a;
employee_number=person_id;
person_sex=b;
employee_working=c;
}

int employee::number()
{
return (employee_number);
}

char employee::working()
{
return (employee_working);
}

int main()
{
person::reset_count();
srand(time(NULL));
employee ** emp;
student ** stu;
char tmpsex;
string tmpname;
string junk;
char tmpspec;
emp=new employee*[10];
stu=new student*[10];

cout<<"students:"<<endl;
for (int i=0;i<10;i++)
{
cout<<"name: ";
getline(cin,tmpname);
cout<<"specialization: ";
cin >> tmpspec;
cout<<"sex: ";
cin >> tmpsex;
getline(cin,junk); // clear input buffer from junk cin leaves there
stu[i]=new student(tmpname,tmpspec,tmpsex);
}
cout<<"employees:"<<endl;
for (int i=0;i<10;i++)
{
cout<<"name: ";
getline(cin,tmpname);
cout<<"sex: ";
cin>> tmpsex;
cout << "Working?: ";
cin >> tmpspec;
getline(cin,junk);
emp[i]=new employee(tmpname,tmpsex,tmpspec);
}
cout << "Student Data:\nid\tname\tsex\tspecialization\n";
cout<<"-------------------------------------------------------------------------"<<endl;
for (int i =0; i<10;++i)
{
cout<<stu[i]->id()<<"\t"<<stu[i]->name()<<"\t"<<stu[i]->sex()<<"\t"<<stu[i]->specialization()<<endl;
}
cout<<"-------------------------------------------------------------------------"<<endl;
cout << "\nEmployee Data:\nid\tname\tsex\tworking\n";
cout<<"-------------------------------------------------------------------------"<<endl;
for (int i =0; i<10;++i)
{
cout<<emp[i]->id()<<"\t"<<emp[i]->name()<<"\t"<<emp[i]->sex()<<"\t"<<emp[i]->working()<<endl;
}
cout<<"-------------------------------------------------------------------------"<<endl;
cout<<"\n\nPress <ENTER> to Exit. ";
cin.get();
return 0;
}


i want to split it on files
.h , .cpp , .cpp

I tried to split it but it dosent wark with me

please any one can help me and split it for me to being work ? :(

It is important for me :-\

wating your help ;)

beba
12-07-2008, 04:44 PM
up :)

blork98
01-13-2009, 09:40 PM
call this file header.h

#ifndef HEADER_H
#define HEADER_H

#define male 'm'
#define female 'f'

#include <iostream>
#include <cstdlib>
#include <ctime>
#include <string>
using namespace std;

class person
{
public:
person(int,char,string);
person();
int id();
char sex();
string name();
int changename(string);
static int reset_count();
protected:
int person_id;
char person_sex;
string person_name;
static int count;
};

class student: public person
{
public:
student (string,char);
student (string,char,char);
int number();
char specialization();
protected:
int student_number;
char student_specialization;
};

class employee: public person
{
public:
employee (int,char);
employee (string,char,char);
int number ();
char working ();
protected:
int employee_number;
char employee_working;
};

#endif



call this file class.cpp or something



#include"header.h"

int person::count;

int person::reset_count() {
person::count=0;
return (person::count);
}

person::person(int a, char b, string c)
{
person_id=person::count;
person::count++;
person_sex=b;
person_name=c;
}

person::person()
{
person_id=person::count;
person::count++;
char this_persons_sex;
int random=rand()%2;
if (random==0) this_persons_sex='m';
else this_persons_sex='f';
person_sex=this_persons_sex;
person_name="";
}


int person::id()
{
return (person_id);
}

char person::sex()
{
return (person_sex);
}

string person::name()
{
return (person_name);
}

int person::changename(string a)
{
person_name=a;
return 0;
}


student::student(string a, char b )
{
student_number=person_id;
person_name=a;
student_specialization=b;
}

student::student(string a, char b, char c )
{
person_name=a;
student_number=person_id;
student_specialization=b;
person_sex=c;
}

int student::number()
{
return (student_number);
}

char student::specialization()
{
return (student_specialization);
}

employee::employee(int a, char b )
{
employee_number=a;
employee_working=b;
}

employee::employee(string a, char b, char c )
{
person_name=a;
employee_number=person_id;
person_sex=b;
employee_working=c;
}

int employee::number()
{
return (employee_number);
}

char employee::working()
{
return (employee_working);
}



can call this file main.cpp



#include"header.h"

int main()
{
person::reset_count();
srand(time(NULL));
employee ** emp;
student ** stu;
char tmpsex;
string tmpname;
string junk;
char tmpspec;
emp=new employee*[10];
stu=new student*[10];

cout<<"students:"<<endl;
for (int i=0;i<10;i++)
{
cout<<"name: ";
getline(cin,tmpname);
cout<<"specialization: ";
cin >> tmpspec;
cout<<"sex: ";
cin >> tmpsex;
getline(cin,junk); // clear input buffer from junk cin leaves there
stu[i]=new student(tmpname,tmpspec,tmpsex);
}
cout<<"employees:"<<endl;
for (int i=0;i<10;i++)
{
cout<<"name: ";
getline(cin,tmpname);
cout<<"sex: ";
cin>> tmpsex;
cout << "Working?: ";
cin >> tmpspec;
getline(cin,junk);
emp[i]=new employee(tmpname,tmpsex,tmpspec);
}
cout << "Student Data:\nid\tname\tsex\tspecialization\n";
cout<<"-------------------------------------------------------------------------"<<endl;
for (int i =0; i<10;++i)
{
cout<<stu[i]->id()<<"\t"<<stu[i]->name()<<"\t"<<stu[i]->sex()<<"\t"<<stu[i]->specialization()<<endl;
}
cout<<"-------------------------------------------------------------------------"<<endl;
cout << "\nEmployee Data:\nid\tname\tsex\tworking\n";
cout<<"-------------------------------------------------------------------------"<<endl;
for (int i =0; i<10;++i)
{
cout<<emp[i]->id()<<"\t"<<emp[i]->name()<<"\t"<<emp[i]->sex()<<"\t"<<emp[i]->working()<<endl;
}
cout<<"-------------------------------------------------------------------------"<<endl;
cout<<"\n\nPress <ENTER> to Exit. ";
cin.get();
return 0;
}

EZ Archive Ads Plugin for vBulletin Copyright 2006 Computer Help Forum