who can help me ^_^

If i have a class school ....

how can i write this function because i cant understand it !!

help me please


1
2
3
4
5
6
7
8
9
10
c) Function called
Add
which takes two school objects and
 return a school object. The
resulted object contains the name and the type of
the first object, while it contains the sum of
the number of students found in
the two objects, and the sum of
the number of teachers found
in the two objects. 


1
2
3
4
5
6
7
e) Function called
Larger
which takes two school objects as
parameters and return 1 if the
first school has larger number of students, 0 if
they are equal, and -1 if the first school has
smaller number of students than the second.
c) School Add(School& sc1, School& sc2);

e) int Larger(School& sc1, School& sc2);

That should get you started.
ok thx i will see what can i do ^_^
no i cant do it :( please some one help me am tired !!
Larger is pretty easy.
1
2
3
4
5
6
7
int Larger(School& sc1, School& sc2)
{  if (sc1.num_students > sc2.num_students)
      return 1;  
    if (sc1.num_students < sc2.num_students)
      return -1;
    return 0;  // must be equal 
}


Add is not much harder. You just need a temporary instance.
1
2
3
4
5
6
7
School Add(School& sc1, School& sc2)
{  School temp;
    temp = sc1;   // Copy sc1 
    temp.num_students = sc1.num_students + sc2.num_students;
    temp.num_teachers = sc1.num_teachers + sc2.num_teachers;
    return temp;
}



what's the temp mean in add function !!

and they give me a syntax on num_students!!

what's the temp mean in add function

It's simply a temporary object of type School. It goes out of scope at the end of the function, but we need it to construct the resulting object that we're going to return. We could have named it result instead. We don't want to modify either sc1 or sc2.

and they give me a syntax on num_students

You didn't post the declaraction of School in this thread, so I had to guess what the variable was called. I picked the most obvious variable name I could think of. If you named it something else, you're going to have to change the code I posted accordingly.
Last edited on
mmmm look am changing the name but they tell me there's wrong in constructor

i will chick some thing to see if it's write or no ^_^
all of my code is :

so what's do you think !!


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
#include<iostream>
#include<string>
#include<cmath>
using namespace std;

class School
{
public:
	School(string,string ,int ,int ,string[],int );

void setname(string);
string getname();

void settype(string);
string gettype();

void settot_student(int);
int gettot_student();

void settot_teachers(int);
int gettot_teachers();

void setArray(string[],int);
string getArray(int);

void Display();

void sc1();
void sc2();

School Add(School , School );

int Find(int);
//
int Larger(School , School );

int Even();

private:
	string name;
	string type;
	int tot_student;
	int tot_teachers;
	string Array[6];

};
School::School(string n,string s,int st,int teach,string course[],int A)
{
	
	name=n;
	type=s;
	tot_student=st;
	tot_teachers=teach;
	

	for(A=0;A<6;A++)
	{
		
	Array[A]=course[A];}
}

void School::setname(string n)
{
	name=n;
	
}
string School::getname()
{
	return name;
}

void School::settype(string s)
{
	type=s;

}
string School::gettype()
{
	return type;
}

void School::settot_student(int st)
{
	tot_student=st;
}
int School::gettot_student()
{
	return tot_student;
}

void School::settot_teachers(int teach)
{
	tot_teachers=teach;
}
int School::gettot_teachers()
{
	return tot_teachers;
}

void School::setArray(string course[],int s)
{

	for(s=0;s<6;s++)
	{
		
		Array[s];
		cout<<"the name of course: ";
		cin>>Array[s];
		cout<<endl;

	}


	
}
string School::getArray(int s)
{
		cout<<"what's the name of your course :    ";
	cin>>Array[s];
	return Array[s];
}

void School::Display()
{
cout<<"Information about school :"<<endl;
cout<<"The name of school is :"<<name<<endl;
cout<<"The type of school is :"<<type<<endl;
cout<<"The total number of students is :"<<tot_student<<endl;
cout<<"The total number of teachers is :"<<tot_teachers<<endl;
cout<<"The courses names is :"<<Array[2]<<endl;


}


School Add(School& sc1, School& sc2)
{  School temp;
    temp = sc1;   // Copy sc1 
    temp.tot_student = sc1.tot_student + sc2.tot_student;
    temp.tot_teachers = sc1.tot_teachers + sc2.tot_teachers;
    return temp;
}



int School::Find(int s)
{
	
			cout<<"put the course number you want :    ";
	cin>>s;
	if((Array[s]==Array[0])||(Array[s]==Array[1])||(Array[s]==Array[2])||(Array[s]==Array[3])||(Array[s]==Array[4])||(Array[s]==Array[5]))
	{return 1;
	
	cout<<endl;}
	
	else
	{
		return 0;
	cout<<endl;
	}

	
}



int Larger(School& sc1, School& sc2)
{  if (sc1.tot_student > sc2.tot_student)
      return 1;  
    if (sc1.tot_student < sc2.tot_student)
      return -1;
    return 0;  // must be equal 
}
int School::Even()
{
	int sum;
	sum=tot_student+tot_teachers;
	if(sum % 2==0)	
	return 1;
	else 
	return 0;
	
}
int main()
{
	string Array[6];
	School T("hu","secoundry ",450,150,Array,6);
	School sc1();
	School sc2();


	cout<<"calling the setname fun"<<endl;
	T.setname("hu") ;
	cout<<endl;
	cout<<"calling the getname fun"<<endl;
	cout<<T.getname();
	cout<<endl;

	cout<<"calling the settype fun"<<endl;
	T.settype("secoundry");
	cout<<endl;
	cout<<"calling the gettype fun"<<endl;
	cout<<T.gettype();
	cout<<endl;
	cout<<"calling the settot_student fun"<<endl;
	T.settot_student(400);
	cout<<endl;
cout<<"calling the gettot_student fun"<<endl;
cout<<T.gettot_student();
cout<<endl;
cout<<"calling the settot_teachers fun"<<endl;
T.settot_teachers(150);
cout<<endl;
cout<<"calling the gettot_teachers fun"<<endl;
cout<<T.gettot_teachers();
cout<<endl;
cout<<"calling the setArray fun"<<endl;
T.setArray(Array,2);
cout<<endl;
cout<<"calling the getArray fun"<<endl;
cout<<T.getArray(2);
cout<<endl;
cout<<"calling the display fun"<<endl;
T.Display();
cout<<endl;
//cout<<"calling the Add fun"<<endl;
//T.Add();
//cout<<endl;
cout<<"calling the Find fun"<<endl;
cout<<T.Find(1);//put the course number you wont 
cout<<endl;
//cout<<"calling the larger fun"<<endl;
//T.larger();
//cout<<endl;
cout<<"calling the even fun"<<endl;
cout<<T.Even();



return 0;

}

oh thx lool i found the error ^_^
lool hhhh

if i want return


1
2
cout<<"calling the Add fun"<<endl;
T.Add(    ,     );


what must i do here ! !
What do the instructions tell you?

Add which takes two school objects and returns a school object.

Hint. You need to do something with the returned object.
so !! , did you men i must put abject !!

look my friend this is all me code so is there any thing lost !!


help me my friend really i need help am beginner teach me please ^_^
Topic archived. No new replies allowed.