-
C++ (
http://www.daniweb.com/forums/forum8.html)
| ToySoldier | Sep 26th, 2006 5:52 pm | |
| Cannot get PAIR::big to just display greater number Hi,
Appreciate any help. My code compiles... builds.... executes just fine. Only problem I'm having is... I cant figure out how to get PAIR::big() to simply print out the larger #. When I execute... it displays... the Larger # like I want... but then for some reason it displays the smaller number next to it. I want to get rid of the smaller #.
Any suggestions?
Thanks Mike
#include <iostream>
using namespace std;
class PAIR
{
private:
int a;
int b;
public:
void print();
PAIR();
PAIR(int);
PAIR(int,int);
~PAIR();
void swap();
int diff();
int big();
int area();
};
int main()
{
PAIR c, d(2), e(12,13);
int ans;
c.print();
d.print();
e.print();
e.swap();
e.print();
ans = c.diff();
cout << ans << endl;
e.big();
e.print();
return 0;
}
PAIR::PAIR()
{
a = 2;
b= 3;
}
void PAIR::print()
{
cout << a << " " << b << endl;
}
PAIR:: ~PAIR()
{
cout << "Display Destructor Message" << endl;
}
PAIR::PAIR(int p1)
{
a=p1;
b=p1;
}
PAIR::PAIR(int p1,int p2)
{
a=p1;
b=p2;
}
void PAIR::swap()
{
int c;
c=a;
a=b;
b=c;
}
int PAIR::diff()
{
return b - a;
}
int PAIR::big()
{
if (a > b)
{
return a;
}
else
{
return b;
}
} |
| ~s.o.s~ | Sep 26th, 2006 6:17 pm | |
| Re: Cannot get PAIR::big to just display greater number Quote: Originally Posted by ToySoldier (Post 256897) Hi,
#include <iostream>
using namespace std;
class PAIR
{
private:
int a;
int b;
public:
void print();
PAIR();
PAIR(int);
PAIR(int,int);
~PAIR();
void swap();
int diff();
int big();
int area();
};
int main()
{
PAIR c, d(2), e(12,13);
int ans;
c.print();
d.print();
e.print();
e.swap();
e.print();
ans = c.diff();
cout << ans << endl;
e.big();
e.print();
return 0;
}
PAIR::PAIR()
{
a = 2;
b= 3;
}
void PAIR::print()
{
cout << a << " " << b << endl;
}
PAIR:: ~PAIR()
{
cout << "Display Destructor Message" << endl;
}
PAIR::PAIR(int p1)
{
a=p1;
b=p1;
}
PAIR::PAIR(int p1,int p2)
{
a=p1;
b=p2;
}
void PAIR::swap()
{
int c;
c=a;
a=b;
b=c;
}
int PAIR::diff()
{
return b - a;
}
int PAIR::big()
{
if (a > b)
{
return a;
}
else
{
return b;
}
} | The reason is that there is no temporary variable to accept the bigger value returned by the "big()" function and hence you end up printing the original value of your object "e". So you can write something like this:
int big = e.big () ;
cout << "\nThe bigger number is " << big ;
Hope it helped, bye. |
| ToySoldier | Sep 26th, 2006 9:11 pm | |
| Re: Cannot get PAIR::big to just display greater number Thanks... I'll try it out. |
| All times are GMT -4. The time now is 7:23 pm. | |
Forum system based on vBulletin Copyright ©2000 - 2009, Jelsoft Enterprises Ltd.
©2003 - 2009 DaniWeb® LLC