quiero un video tutor de 8 minutos sobre el tema programación orientada a objetos con array unidimensional, en base a esta imagen. Los temas principales deben ser: concepto de clase, concepto de objeto, atributos, métodos, declaración de la clase, programación del métodos y como se aplicaría toto esto en un array de objetos. El video debe ser en idioma español y el quizz también.---```
#include
using namespace std;
//Definición de la clase Quemador
class Quemador
{
//Lista de atributos
private:
int nro; //Nro. Identificador.
float hstrab; //Hs. trabajadas acumuladas.
bool ence; //Encendido de quemador [0=no, 1=si].
float temp; //Temp. de trabajo
char ubic; //Ubicación [I: Lateria izq. D:Lateral der. B:Bóveda]
//Lista de métodos
public:
void CargarAtributos(int n, float h, bool e, float t, char u);
int ObtenerNro();
float ObtenerHstrab();
bool ObtenerEnce();
float ObtenerTemp();
char ObtenerUbic();
};
//Desarrollo de todos Los métodos de La clase Quemador
void Quemador::CargarAtributos(int n, float h, bool e, float t, char u)
{
//Inicializando los atributos.
nro = n;
hstrab = h;
ence = e;
temp = t;
ubic = u;
}
int Quemador::ObtenerNro()
{
return nro;
}
float Quemador::ObtenerHstrab()
{
return hstrab;
}
bool Quemador::ObtenerEnce()
{
return ence;
}
char Quemador::ObtenerUbic()
{
return ubic;
}
//Desarrollo de Las funciones y procedimiento solicitados
void CargarVector(Quemador q[28], int N)
{
//Declaración de variables locales.
int i; //Indice de ciclo.
int n; //Nro. de quemador.
float h; //Hastrab de quemador.
bool e; //Encendido de quemador [no=0, si=1].
float t; //Temperatura de quemador.
char u; //Ubicación de quemador.
//Procesamiento.
for(i=1; i<=N; i++)
{
cout<<"\nEscriba Nro. Quemador ["<>n;
cout<<"Escriba hs. de trabajo. Quemador ["<>h;
cout<<"Escriba encendido. Quemador ["<>e;
cout<<"Escriba temp. Quemador ["<>t;
cout<<"Escriba ubicacion. Quemador ["<>u;
//Invocación del método CargarAtributos:
q[i].CargarAtributos(n, h, e, t, u);
}
}
void MostrarVector(Quemador q[28], int N)
{
//Declaración de variables locales.
int i; //Indice de ciclo.
int n; //nro. de quemador.
float h; //hastrab de quemador.
bool e; //encendido de quemador.
float t; //Temperatura de quemador.
char u; //Ubicación de quemador.
//Procesamiento.
for(i=1; i<=N; i++)
{
//Invocación de métodos Obtener.
n = q[i].ObtenerNro();
h = q[i].ObtenerHstrab();
e = q[i].ObtenerEnce();
t = q[i].ObtenerTemp();
u = q[i].ObtenerUbic();
//Impresión en pantalla.
cout<<"\nNro. Quemador ["< maxhs)
{
maxhs = h;
maxnro = n;
}
}
}
//Valor de retorno.
return maxnro;
}
int main()
{
//Declaración de variables salida.
int NroMax; //Nro. del quemador con mayor Hstrab.
//Declaración de variables de entrada.
Quemador vec[29]; //Vector de objetos Quemador.
int N; //Cantidad de quemadores almacenados en el vector.
//Entrada de datos.
cout<<"Cuantos quemadores tiene el horno tunel [Max.28]?: ";
cin>>N;
//Verificación. ESTA VERIFICACION ES OBLIGATORIA. SE PEDIRA EN EL PARCIAL 2. AVISEN A SUS ALUMNOS.
while(N < 2 || N > 28)
{
cout<<"\n**** ERROR: Valor fuera de rango ****";
cout<<"\nCuantos quemadores tiene el horno tunel [Max.28]?: ";
cin>>N;
}
//Procesamiento y Salida.
CargarVector(vec , N);
cout<<"\nQuemadores ingresados\n";
MostrarVector(vec , N);
cout<<"\n\n"; system("pause");
OrdenarVector(vec , N);
cout<<"\nQuemadores ordenados por Nro. identificador\n";
MostrarVector(vec , N);
cout<<"\n\n"; system("pause");
NroMax = MaxHsTrab(vec , N);
cout<<"\nNro. de quemador con mayor horas de trabajo: "<
视频信息
答案文本
视频字幕
En programación orientada a objetos, una clase es como un molde o plantilla que define la estructura y comportamiento de los objetos. Un objeto es una instancia específica de esa clase. Por ejemplo, la clase Quemador define atributos como número y temperatura, y métodos para manipular estos datos. Cada objeto quemador tendrá sus propios valores únicos.
Los atributos son las características que definen el estado de un objeto. En la clase Quemador tenemos cinco atributos privados: número identificador, horas trabajadas, encendido, temperatura y ubicación. El modificador private garantiza el encapsulamiento, protegiendo los datos del acceso directo desde fuera de la clase.
Los métodos definen qué puede hacer un objeto. En la clase Quemador tenemos el método CargarAtributos que actúa como setter para inicializar todos los atributos. También tenemos métodos getter como ObtenerNro, ObtenerHstrab, etcétera, que permiten acceder a los valores de los atributos privados de forma controlada.
La implementación de métodos se realiza fuera de la declaración de la clase usando el operador de resolución de ámbito. El método CargarAtributos recibe parámetros y asigna valores a los atributos privados. Los métodos getter simplemente retornan el valor del atributo correspondiente.
Para manejar múltiples quemadores, utilizamos un array de objetos. La declaración Quemador vec[29] crea un array que puede contener hasta 28 objetos de tipo Quemador. Cada elemento del array es un objeto completo con sus propios atributos y acceso a todos los métodos de la clase.
Para cargar datos en el array de objetos, iteramos a través de cada posición y solicitamos los valores al usuario. Luego utilizamos el método CargarAtributos de cada objeto para inicializar sus atributos. Note la sintaxis: q[i].CargarAtributos() invoca el método del objeto en la posición i del array.
Este ejemplo de ordenamiento demuestra la potencia de la programación orientada a objetos. Utilizamos métodos getter para acceder a los atributos de forma controlada, e intercambiamos objetos completos preservando la integridad de los datos. La POO nos permite escribir código más organizado, reutilizable y fácil de mantener.
Los atributos son las características que definen el estado de un objeto. En la clase Quemador tenemos cinco atributos privados: número identificador, horas trabajadas, encendido, temperatura y ubicación. El modificador private garantiza el encapsulamiento, protegiendo los datos del acceso directo desde fuera de la clase.
Los métodos definen qué puede hacer un objeto. En la clase Quemador tenemos el método CargarAtributos que actúa como setter para inicializar todos los atributos. También tenemos métodos getter como ObtenerNro, ObtenerHstrab, etcétera, que permiten acceder a los valores de los atributos privados de forma controlada.
La declaración completa de una clase incluye la palabra clave class seguida del nombre, los atributos privados que definen el estado interno, los métodos públicos que proporcionan la interfaz, y finalmente la implementación de cada método usando el operador de resolución de ámbito.
Para manejar múltiples quemadores, utilizamos un array de objetos. La declaración Quemador vec[29] crea un array que puede contener hasta 28 objetos de tipo Quemador. Cada elemento del array es un objeto completo con sus propios atributos y acceso a todos los métodos de la clase usando la sintaxis vec[i].metodo().