469,326 Members | 1,534 Online
Bytes | Developer Community
New Post

Home Posts Topics Members FAQ

Post your question to a community of 469,326 developers. It's quick & easy.

calling a function in cpp

Ken
hello,

I would to know if it is possible to call an object in a function within a
class.
Meaning , In a class, A function X calling onto a function Y, and function
Y we want one of the two calculation ( eg seconds , out of seconds and
minutes)
thanks ,

Ken
lerameur at yahoo.com

here is the program I wrote, but the function subtraction wich is calling
another function is not working, dont know how to access the info.

#include <iostream>
#include <conio.h> // Used in microsoft visual c++
using namespace std;
class Conversion
{
public:
void menu();
void sec_to_hours();
void time_to_seconds();
void substraction();
};

void Conversion::time_to_seconds() //Converts time to seconds
{ int seconds1, seconds2, hours, minutes, seconds;
char colon;
cout<<"Enter a time (hours:minutes:seconds): " ;
cin>> hours >>colon >>minutes >>colon >> seconds;
if ( hours >= 0 && hours < 24 ) seconds1 = hours * 3600 ;
else cout<<"Invalid amounts of hours " <<endl;
if ( minutes >= 0 && minutes < 60) seconds2 = minutes *60;
else cout<<"Invalid amount of minutes " <<endl;
if ( seconds >= 0 && seconds< 60) ;
else cout<<"Invalid amount of seconds " <<endl;
if ( ( hours >= 0 && hours < 24 ) && ( minutes >= 0 && minutes < 60) &&
( seconds >= 0 && seconds< 60) )
seconds = seconds1 + seconds2 + seconds ;
cout<< " There is: " << seconds <<" seconds." <<endl;
}
void Conversion::substraction()
{ int seconds ;//total_seconds;

time_to_seconds();
cout<<" Now enter the amount of seconds to subtract : " <<endl;
cin >> seconds ;

if ( time_calc.time_to_seconds() >= seconds)
cout<< " Substracting " << time_to_seconds.seconds <<" from " << seconds
<<" is: " << time_to_seconds().seconds - seconds ;
else
cout<< " The time has to be greater then the seconds. Please try again! "
;
}
void Conversion::menu()
{
int choice;
Conversion time_calc;
do {
cout << endl << endl;
cout << " Time Management System "<<endl;
cout << " ============================================== "<<endl;
cout << " 1: Convert a number of seconds into a time "<<endl;
cout << " 2: Convert a time into a number of seconds "<<endl;
cout << " 3: Substrat a number of seconds from a time "<<endl;
cout << " 4: Quit "<<endl;
cout << " ============================================== "<<endl;

cout << " Your choice please: ";
cin >> choice;

switch (choice)
{
case 1:
sec_to_hours();
break;
case 2:
time_calc.time_to_seconds();
break;
case 3:
time_calc.substraction();
break;
case 4: cout<<"Thank you for having used this system, Bye Bye!!!"; break;

default: cout<<"Error: Invalid option, Please try again" ;
}
} while (choice != 4);

}// end function menu

void sec_to_hours() //Conversion from seconds to hours and minutes
{ int seconds;

cout<<"Enter the number of seconds: " ;
cin>> seconds;
if (seconds >= 0 && seconds < 60)
cout<< "The number of seconds is " << seconds ;
else if (seconds >= 60 && seconds < 3600)
cout<< "There are " << seconds / 60 <<" minutes and " << seconds % 60
<<" seconds" ;
else if ( seconds >= 3600 && seconds < 86400 ) // 1 hours or more , 1 hour
= 3600 seconds
cout<< "There are " << seconds /3600 << " hours " << (seconds % 3600) /
60 <<" minutes " << seconds % 60 <<" seconds" ;
else if ( seconds >= 86400 ) //checking for days if seconds greater then
86400seconds ( 1 day)
{ cout<< "There is " << seconds / 86400 <<" days, " << (seconds % 86400)
/3600 << " hours " ;
cout<< ((seconds % 86400) %3600) / 60 <<" minutes " << (((seconds %
86400) %3600) % 60 ) %60 <<" seconds" ;
}
}

}; // end void time_to_seconds
void substraction()
{ int seconds, total_seconds;

time_to_seconds();
cout<<" Now enter the amount of seconds to subtract : " <<endl;
cin >> seconds ;

if ( time_to_seconds().seconds >= seconds)
cout<< " Substracting " << time_to_seconds.seconds <<" from " << seconds
<<" is: " << time_to_seconds().seconds - seconds ;
else
cout<< " The time has to be greater then the seconds. Please try again! "
;

}

void main()
{
Conversion time_calc;
time_calc.menu();
getch(); // Used in microsoft visual c++

}



Jul 22 '05 #1
3 2002
Ken
Oups , here is the program:

#include <iostream>
#include <conio.h> // Used in microsoft visual c++
using namespace std;
class Conversion
{
public:
void menu();
void sec_to_hours();
void time_to_seconds();
void substraction();
};

void Conversion::time_to_seconds() //Converts time to seconds
{ int seconds1, seconds2, hours, minutes, seconds;
char colon;
cout<<"Enter a time (hours:minutes:seconds): " ;
cin>> hours >>colon >>minutes >>colon >> seconds;
if ( hours >= 0 && hours < 24 ) seconds1 = hours * 3600 ;
else cout<<"Invalid amounts of hours " <<endl;
if ( minutes >= 0 && minutes < 60) seconds2 = minutes *60;
else cout<<"Invalid amount of minutes " <<endl;
if ( seconds >= 0 && seconds< 60) ;
else cout<<"Invalid amount of seconds " <<endl;
if ( ( hours >= 0 && hours < 24 ) && ( minutes >= 0 && minutes < 60) &&
( seconds >= 0 && seconds< 60) )
seconds = seconds1 + seconds2 + seconds ;
cout<< " There is: " << seconds <<" seconds." <<endl;
}
void Conversion::substraction()
{ int seconds ;//total_seconds;
Conversion time_calc;
time_to_seconds();
cout<<" Now enter the amount of seconds to subtract : " <<endl;
cin >> seconds ;

if ( time_calc.time_to_seconds() >= seconds)
cout<< " Substracting " << time_to_seconds.seconds <<" from " << seconds
<<" is: " << time_to_seconds().seconds - seconds ;
else
cout<< " The time has to be greater then the seconds. Please try again! "
;

}
void Conversion::menu()
{
int choice;
Conversion time_calc;
do {
cout << endl << endl;
cout << " Time Management System "<<endl;
cout << " ============================================== "<<endl;
cout << " 1: Convert a number of seconds into a time "<<endl;
cout << " 2: Convert a time into a number of seconds "<<endl;
cout << " 3: Substrat a number of seconds from a time "<<endl;
cout << " 4: Quit "<<endl;
cout << " ============================================== "<<endl;

cout << " Your choice please: ";
cin >> choice;

switch (choice)
{
case 1:
sec_to_hours();
break;
case 2:
time_calc.time_to_seconds();
break;
case 3:
time_calc.substraction();
break;
case 4: cout<<"Thank you for having used this system, Bye Bye!!!"; break;

default: cout<<"Error: Invalid option, Please try again" ;
}
} while (choice != 4);

}// end function menu

void sec_to_hours() //Conversion from seconds to hours and minutes
{ int seconds;

cout<<"Enter the number of seconds: " ;
cin>> seconds;
if (seconds >= 0 && seconds < 60)
cout<< "The number of seconds is " << seconds ;
else if (seconds >= 60 && seconds < 3600)
cout<< "There are " << seconds / 60 <<" minutes and " << seconds % 60
<<" seconds" ;
else if ( seconds >= 3600 && seconds < 86400 ) // 1 hours or more , 1 hour
= 3600 seconds
cout<< "There are " << seconds /3600 << " hours " << (seconds % 3600) /
60 <<" minutes " << seconds % 60 <<" seconds" ;
else if ( seconds >= 86400 ) //checking for days if seconds greater then
86400seconds ( 1 day)
{ cout<< "There is " << seconds / 86400 <<" days, " << (seconds % 86400)
/3600 << " hours " ;
cout<< ((seconds % 86400) %3600) / 60 <<" minutes " << (((seconds %
86400) %3600) % 60 ) %60 <<" seconds" ;
}
} // end void time_to_seconds

void main()
{
Conversion time_calc;
time_calc.menu();
getch(); // Used in microsoft visual c++

}

"Ken" <le******@yah00.c0m> wrote in message
news:mU**************@news20.bellglobal.com...
hello,

I would to know if it is possible to call an object in a function within a class.
Meaning , In a class, A function X calling onto a function Y, and function Y we want one of the two calculation ( eg seconds , out of seconds and
minutes)
thanks ,

Ken
lerameur at yahoo.com

here is the program I wrote, but the function subtraction wich is calling
another function is not working, dont know how to access the info.

#include <iostream>
#include <conio.h> // Used in microsoft visual c++
using namespace std;
class Conversion
{
public:
void menu();
void sec_to_hours();
void time_to_seconds();
void substraction();
};

void Conversion::time_to_seconds() //Converts time to seconds
{ int seconds1, seconds2, hours, minutes, seconds;
char colon;
cout<<"Enter a time (hours:minutes:seconds): " ;
cin>> hours >>colon >>minutes >>colon >> seconds;
if ( hours >= 0 && hours < 24 ) seconds1 = hours * 3600 ;
else cout<<"Invalid amounts of hours " <<endl;
if ( minutes >= 0 && minutes < 60) seconds2 = minutes *60;
else cout<<"Invalid amount of minutes " <<endl;
if ( seconds >= 0 && seconds< 60) ;
else cout<<"Invalid amount of seconds " <<endl;
if ( ( hours >= 0 && hours < 24 ) && ( minutes >= 0 && minutes < 60) && ( seconds >= 0 && seconds< 60) )
seconds = seconds1 + seconds2 + seconds ;
cout<< " There is: " << seconds <<" seconds." <<endl;
}
void Conversion::substraction()
{ int seconds ;//total_seconds;

time_to_seconds();
cout<<" Now enter the amount of seconds to subtract : " <<endl;
cin >> seconds ;

if ( time_calc.time_to_seconds() >= seconds)
cout<< " Substracting " << time_to_seconds.seconds <<" from " << seconds
<<" is: " << time_to_seconds().seconds - seconds ;
else
cout<< " The time has to be greater then the seconds. Please try again! " ;
}
void Conversion::menu()
{
int choice;
Conversion time_calc;
do {
cout << endl << endl;
cout << " Time Management System "<<endl;
cout << " ============================================== "<<endl;
cout << " 1: Convert a number of seconds into a time "<<endl;
cout << " 2: Convert a time into a number of seconds "<<endl; cout << " 3: Substrat a number of seconds from a time "<<endl;
cout << " 4: Quit "<<endl;
cout << " ============================================== "<<endl;

cout << " Your choice please: ";
cin >> choice;

switch (choice)
{
case 1:
sec_to_hours();
break;
case 2:
time_calc.time_to_seconds();
break;
case 3:
time_calc.substraction();
break;
case 4: cout<<"Thank you for having used this system, Bye Bye!!!"; break;
default: cout<<"Error: Invalid option, Please try again" ;
}
} while (choice != 4);

}// end function menu

void sec_to_hours() //Conversion from seconds to hours and minutes
{ int seconds;

cout<<"Enter the number of seconds: " ;
cin>> seconds;
if (seconds >= 0 && seconds < 60)
cout<< "The number of seconds is " << seconds ;
else if (seconds >= 60 && seconds < 3600)
cout<< "There are " << seconds / 60 <<" minutes and " << seconds % 60
<<" seconds" ;
else if ( seconds >= 3600 && seconds < 86400 ) // 1 hours or more , 1 hour = 3600 seconds
cout<< "There are " << seconds /3600 << " hours " << (seconds % 3600) /
60 <<" minutes " << seconds % 60 <<" seconds" ;
else if ( seconds >= 86400 ) //checking for days if seconds greater then
86400seconds ( 1 day)
{ cout<< "There is " << seconds / 86400 <<" days, " << (seconds % 86400)
/3600 << " hours " ;
cout<< ((seconds % 86400) %3600) / 60 <<" minutes " << (((seconds %
86400) %3600) % 60 ) %60 <<" seconds" ;
}
}

}; // end void time_to_seconds
void substraction()
{ int seconds, total_seconds;

time_to_seconds();
cout<<" Now enter the amount of seconds to subtract : " <<endl;
cin >> seconds ;

if ( time_to_seconds().seconds >= seconds)
cout<< " Substracting " << time_to_seconds.seconds <<" from " << seconds
<<" is: " << time_to_seconds().seconds - seconds ;
else
cout<< " The time has to be greater then the seconds. Please try again! " ;

}

void main()
{
Conversion time_calc;
time_calc.menu();
getch(); // Used in microsoft visual c++

}


Jul 22 '05 #2
Ian
Ken wrote:
hello,

I would to know if it is possible to call an object in a function within a
class.
Meaning , In a class, A function X calling onto a function Y, and function
Y we want one of the two calculation ( eg seconds , out of seconds and
minutes)
thanks ,

Ken
lerameur at yahoo.com

here is the program I wrote, but the function subtraction wich is calling
another function is not working, dont know how to access the info.

You've placed what should be class data members in the member function
time_to_seconds().

Hint:
class Conversion
{
int seconds1, seconds2, hours, minutes, seconds;

....
};

Then all member functions can access them, no need for odd things like
time_to_seconds.seconds.

Ian

#include <iostream>
#include <conio.h> // Used in microsoft visual c++
using namespace std;
class Conversion
{
public:
void menu();
void sec_to_hours();
void time_to_seconds();
void substraction();
};

void Conversion::time_to_seconds() //Converts time to seconds
{ int seconds1, seconds2, hours, minutes, seconds;
char colon;
cout<<"Enter a time (hours:minutes:seconds): " ;
cin>> hours >>colon >>minutes >>colon >> seconds;
if ( hours >= 0 && hours < 24 ) seconds1 = hours * 3600 ;
else cout<<"Invalid amounts of hours " <<endl;
if ( minutes >= 0 && minutes < 60) seconds2 = minutes *60;
else cout<<"Invalid amount of minutes " <<endl;
if ( seconds >= 0 && seconds< 60) ;
else cout<<"Invalid amount of seconds " <<endl;
if ( ( hours >= 0 && hours < 24 ) && ( minutes >= 0 && minutes < 60) &&
( seconds >= 0 && seconds< 60) )
seconds = seconds1 + seconds2 + seconds ;
cout<< " There is: " << seconds <<" seconds." <<endl;
}
void Conversion::substraction()
{ int seconds ;//total_seconds;

time_to_seconds();
cout<<" Now enter the amount of seconds to subtract : " <<endl;
cin >> seconds ;

if ( time_calc.time_to_seconds() >= seconds)
cout<< " Substracting " << time_to_seconds.seconds <<" from " << seconds
<<" is: " << time_to_seconds().seconds - seconds ;
else
cout<< " The time has to be greater then the seconds. Please try again! "
;
}
void Conversion::menu()
{
int choice;
Conversion time_calc;
do {
cout << endl << endl;
cout << " Time Management System "<<endl;
cout << " ============================================== "<<endl;
cout << " 1: Convert a number of seconds into a time "<<endl;
cout << " 2: Convert a time into a number of seconds "<<endl;
cout << " 3: Substrat a number of seconds from a time "<<endl;
cout << " 4: Quit "<<endl;
cout << " ============================================== "<<endl;

cout << " Your choice please: ";
cin >> choice;

switch (choice)
{
case 1:
sec_to_hours();
break;
case 2:
time_calc.time_to_seconds();
break;
case 3:
time_calc.substraction();
break;
case 4: cout<<"Thank you for having used this system, Bye Bye!!!"; break;

default: cout<<"Error: Invalid option, Please try again" ;
}
} while (choice != 4);

}// end function menu

void sec_to_hours() //Conversion from seconds to hours and minutes
{ int seconds;

cout<<"Enter the number of seconds: " ;
cin>> seconds;
if (seconds >= 0 && seconds < 60)
cout<< "The number of seconds is " << seconds ;
else if (seconds >= 60 && seconds < 3600)
cout<< "There are " << seconds / 60 <<" minutes and " << seconds % 60
<<" seconds" ;
else if ( seconds >= 3600 && seconds < 86400 ) // 1 hours or more , 1 hour
= 3600 seconds
cout<< "There are " << seconds /3600 << " hours " << (seconds % 3600) /
60 <<" minutes " << seconds % 60 <<" seconds" ;
else if ( seconds >= 86400 ) //checking for days if seconds greater then
86400seconds ( 1 day)
{ cout<< "There is " << seconds / 86400 <<" days, " << (seconds % 86400)
/3600 << " hours " ;
cout<< ((seconds % 86400) %3600) / 60 <<" minutes " << (((seconds %
86400) %3600) % 60 ) %60 <<" seconds" ;
}
}

}; // end void time_to_seconds
void substraction()
{ int seconds, total_seconds;

time_to_seconds();
cout<<" Now enter the amount of seconds to subtract : " <<endl;
cin >> seconds ;

if ( time_to_seconds().seconds >= seconds)
cout<< " Substracting " << time_to_seconds.seconds <<" from " << seconds
<<" is: " << time_to_seconds().seconds - seconds ;
else
cout<< " The time has to be greater then the seconds. Please try again! "
;

}

void main()
{
Conversion time_calc;
time_calc.menu();
getch(); // Used in microsoft visual c++

}


Jul 22 '05 #3
Ken
what about using a pointer to get the information from the other function?

K
"Ian" <no***@nowhere.com> wrote in message
news:10***************@drone5.qsi.net.nz...
Ken wrote:
hello,

I would to know if it is possible to call an object in a function within a class.
Meaning , In a class, A function X calling onto a function Y, and function Y we want one of the two calculation ( eg seconds , out of seconds and
minutes)
thanks ,

Ken
lerameur at yahoo.com

here is the program I wrote, but the function subtraction wich is calling another function is not working, dont know how to access the info.

You've placed what should be class data members in the member function
time_to_seconds().

Hint:
class Conversion
{
int seconds1, seconds2, hours, minutes, seconds;

...
};

Then all member functions can access them, no need for odd things like
time_to_seconds.seconds.

Ian

#include <iostream>
#include <conio.h> // Used in microsoft visual c++
using namespace std;
class Conversion
{
public:
void menu();
void sec_to_hours();
void time_to_seconds();
void substraction();
};

void Conversion::time_to_seconds() //Converts time to seconds
{ int seconds1, seconds2, hours, minutes, seconds;
char colon;
cout<<"Enter a time (hours:minutes:seconds): " ;
cin>> hours >>colon >>minutes >>colon >> seconds;
if ( hours >= 0 && hours < 24 ) seconds1 = hours * 3600 ;
else cout<<"Invalid amounts of hours " <<endl;
if ( minutes >= 0 && minutes < 60) seconds2 = minutes *60;
else cout<<"Invalid amount of minutes " <<endl;
if ( seconds >= 0 && seconds< 60) ;
else cout<<"Invalid amount of seconds " <<endl;
if ( ( hours >= 0 && hours < 24 ) && ( minutes >= 0 && minutes < 60) && ( seconds >= 0 && seconds< 60) )
seconds = seconds1 + seconds2 + seconds ;
cout<< " There is: " << seconds <<" seconds." <<endl;
}
void Conversion::substraction()
{ int seconds ;//total_seconds;

time_to_seconds();
cout<<" Now enter the amount of seconds to subtract : " <<endl;
cin >> seconds ;

if ( time_calc.time_to_seconds() >= seconds)
cout<< " Substracting " << time_to_seconds.seconds <<" from " << seconds <<" is: " << time_to_seconds().seconds - seconds ;
else
cout<< " The time has to be greater then the seconds. Please try again! " ;
}
void Conversion::menu()
{
int choice;
Conversion time_calc;
do {
cout << endl << endl;
cout << " Time Management System "<<endl; cout << " ============================================== "<<endl; cout << " 1: Convert a number of seconds into a time "<<endl; cout << " 2: Convert a time into a number of seconds "<<endl; cout << " 3: Substrat a number of seconds from a time "<<endl; cout << " 4: Quit "<<endl; cout << " ============================================== "<<endl;
cout << " Your choice please: ";
cin >> choice;

switch (choice)
{
case 1:
sec_to_hours();
break;
case 2:
time_calc.time_to_seconds();
break;
case 3:
time_calc.substraction();
break;
case 4: cout<<"Thank you for having used this system, Bye Bye!!!"; break;
default: cout<<"Error: Invalid option, Please try again" ;
}
} while (choice != 4);

}// end function menu

void sec_to_hours() //Conversion from seconds to hours and minutes
{ int seconds;

cout<<"Enter the number of seconds: " ;
cin>> seconds;
if (seconds >= 0 && seconds < 60)
cout<< "The number of seconds is " << seconds ;
else if (seconds >= 60 && seconds < 3600)
cout<< "There are " << seconds / 60 <<" minutes and " << seconds % 60 <<" seconds" ;
else if ( seconds >= 3600 && seconds < 86400 ) // 1 hours or more , 1 hour = 3600 seconds
cout<< "There are " << seconds /3600 << " hours " << (seconds % 3600) / 60 <<" minutes " << seconds % 60 <<" seconds" ;
else if ( seconds >= 86400 ) //checking for days if seconds greater then 86400seconds ( 1 day)
{ cout<< "There is " << seconds / 86400 <<" days, " << (seconds % 86400) /3600 << " hours " ;
cout<< ((seconds % 86400) %3600) / 60 <<" minutes " << (((seconds % 86400) %3600) % 60 ) %60 <<" seconds" ;
}
}

}; // end void time_to_seconds
void substraction()
{ int seconds, total_seconds;

time_to_seconds();
cout<<" Now enter the amount of seconds to subtract : " <<endl;
cin >> seconds ;

if ( time_to_seconds().seconds >= seconds)
cout<< " Substracting " << time_to_seconds.seconds <<" from " << seconds <<" is: " << time_to_seconds().seconds - seconds ;
else
cout<< " The time has to be greater then the seconds. Please try again! " ;

}

void main()
{
Conversion time_calc;
time_calc.menu();
getch(); // Used in microsoft visual c++

}


Jul 22 '05 #4

This discussion thread is closed

Replies have been disabled for this discussion.

Similar topics

8 posts views Thread by Muthu | last post: by
6 posts views Thread by jchao123 | last post: by
1 post views Thread by Jesse McGrew | last post: by
5 posts views Thread by Nick Flandry | last post: by
2 posts views Thread by Geler | last post: by
15 posts views Thread by dspfun | last post: by
11 posts views Thread by briankirkpatrick | last post: by
16 posts views Thread by teju | last post: by
1 post views Thread by CARIGAR | last post: by
reply views Thread by zhoujie | last post: by
reply views Thread by suresh191 | last post: by
reply views Thread by Gurmeet2796 | last post: by
reply views Thread by mdpf | last post: by
reply views Thread by harlem98 | last post: by
By using this site, you agree to our Privacy Policy and Terms of Use.