Della
#incluir
usando el
espacio de nombres std;
tiempo de
clase
{
privado :
int hr;
int min;
int sec;
público :
Hora ();
// constructor
Time (
int ,
int ,
int );
// constructor
void get ();
mostrar
vacío ();
Operador de
tiempo
+ (Hora);
Operador de tiempo
- (Hora);
};
int main ()
{
Tiempo t1;
Tiempo t2;
cout <<
"Ingrese la primera vez:" ;
t1.get ();
cout <<
"Ingrese la segunda vez:" ;
t2.get ();
Tiempo t_sum = t1 + t2;
Tiempo t_diff = t1 - t2;
cout <<
"Suma" ;
t_sum.show ();
cout <<
"Diff" ;
t_diff.show ();
sistema (
"pausa" );
}
Hora :: Hora ()
{
hr = 0;
min = 0;
sec = 0;
}
Tiempo :: Tiempo (
int h,
int m,
int s)
{
hr = h;
min = m;
sec = s;
}
void Time :: get ()
{
cout <<
"nEnter hrs:" ;
cin >> hr;
cout <<
"Ingrese min:" ;
cin >> min;
cout <<
"Ingrese sec:" ;
cin >> seg;
}
void Time :: show ()
{
cout <<
"El tiempo es" <
":" <
":" <
}
Tiempo Tiempo ::
operador + (Tiempo t)
{
int h, m, s;
int suma;
suma = (hr + t.hr) * 3600 + (min + t.min) * 60 + seg + t.seg;
s = suma% 60;
suma = suma / 60;
m = suma% 60;
h = suma / 60;
tiempo de
retorno (h, m, s);
}
Tiempo Tiempo ::
operador - (Tiempo t)
{
int h, m, s;
int suma1, suma2, suma;
suma1 = (h) * 3600 + (min) * 60 + seg;
suma2 = (t.hr) * 3600 + (t.min) * 60 + t.seg;
if (suma1> suma2)
suma = suma1-suma2;
si no
suma = suma2-suma1;
s = suma% 60;
suma = suma / 60;
m = suma% 60;
h = suma / 60;
tiempo de
retorno (h, m, s);
}
Por Azm
Rosa
Esta tarea explora la definición de una clase C ++ relativamente simple.
La clase que implementará se llama Time. Representa todos los tiempos posibles en un
período de 24 horas
, incluidas las horas, los minutos y los segundos. Un problema de representación inmediato es cómo
manejar los horarios de la mañana (am) y de la tarde (pm). Podríamos tener un bool separado que indique
si la hora es am o pm. Sin embargo, es más fácil representar las horas en tiempo militar. Esto
significa que las horas del día están numeradas del 0 al 23, siendo 13 la 1 pm, 14 la 2 pm,
etc.
Puntos de control
1. En el primer punto de control, comenzará implementando el diseño de la clase inicial,
varias funciones miembro y un programa principal "controlador". La mayoría de las siguientes
instrucciones se basan en el uso de Visual Studio.
A) Si está trabajando en Visual Studio, cree un nuevo proyecto. Eventualmente
creará tres archivos dentro del proyecto. Estos archivos se llamarán Time.h, Time.cpp
y main.cpp.
B) Empiece a trabajar a tiempo h. Cree este archivo seleccionando la opción "Agregar nuevo elemento ..."
en el menú Proyecto (o use Ctrl + Shift + A). Seleccione qué tipo de archivo nuevo desea
agregar (en este caso, un archivo de encabezado) y asígnele el nombre Hora. No es necesario
incluir la extensión (en este caso .h) en el nombre porque se agregará para
usted. Sin embargo, agregar la extensión tendrá el mismo efecto. (Aparte: cuando hay
más de un proyecto en la Solución, debe asegurarse de que el
proyecto correcto
esté resaltado en el Explorador de soluciones antes de realizar lo anterior).
Ahora haga clic en Aceptar. Dentro del archivo, declare una clase llamada Time. Lea la sintaxis con
atención (como el punto y coma al final de la declaración de clase). Agregue
variables de miembros privados
para la hora, minuto y segundo. En el área pública de la
clase, declare dos constructores: Uno, el constructor predeterminado, debe inicializar cada una
de las variables miembro a 0; el otro, que tiene tres argumentos, acepta inicial
valores para la hora, minuto y segundo como argumentos de llamada de función. Declare
funciones miembro para acceder a los valores de la hora, el minuto y el segundo
(tres funciones miembro diferentes). Será crucial para el Checkpoint 3 hacer
estos constantes. (Recuerde: una función miembro constante no puede cambiar las
variables miembro
).
C) Cambie a trabajar en main.cpp. Cree un nuevo archivo dentro de su proyecto, como se indicó anteriormente.
Asegúrese de agregar código a #include Time.h además de incluir iostream.
(Advertencia: la sintaxis de la declaración de inclusión es diferente. Haga que el
programa principal
cree dos objetos Time, uno con cada constructor. Muestre el uso de
funciones que acceden a los valores de hora, minuto y segundo imprimiendo las dos
horas.
D) Cambie a trabajar en Time.cpp. Cree un nuevo archivo dentro de su proyecto como arriba.
No olvide agregar la línea a #include Time.h. Implemente los constructores y las
funciones miembro.
E) Ahora, compile su programa y elimine los errores. Aquí es donde
importa la diferencia
entre compilar y vincular.
Para los usuarios de Visual Studio, puede compilar cada uno de los dos archivos .cpp individualmente
(el archivo .h no se compila por separado) escribiendo Ctrl-F7 cuando el panel
que contiene
ese archivo está activo. Esto le permitirá ver y eliminar los errores del compilador para cada
archivar individualmente. (Tenga en cuenta que los errores causados por el código en el archivo .h, Time.h
aparecerán al compilar cualquiera de los archivos .cpp). También puede compilar y vincular varios
archivos a la vez utilizando el nombre del proyecto Build / Build. Tendrá que hacer esto incluso después de
compilar cada archivo .cpp individualmente porque el comando Ctrl-F7 no se vincula
para crear un programa ejecutable.
Génesis
Escriba un programa en C ++ que contenga una clase llamada Time que tenga tres miembros de datos. · Horas · Minutos · Segundos La clase debe tener · Un constructor predeterminado y parametrizado · método show () para mostrar la hora en el formato adecuado como HH: MM: SS en la pantalla · método get () para obtener tiempo del usuario · Overloaded Plus Operadores (+) y Menos (-) · Un destructor Sobrecargará los operadores + y - para esta clase. En el programa principal, haga 3 objetos de la clase Time time1, time2 y time3 y llame a las funciones get () para time1 y time2, luego realice time3 = tim1 + time2 y luego mostrará time3 usando su función show ().