Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
GRUPO: 2EM1
INTEGRANTES:
Beneficios:
Metas:
CONCEPTOS TEORICOS:
Clases y objetos:
Una clase define un nuevo tipo de dato que especifica la forma de un objeto. Una
clase incluye los datos y el código que operará sobre esos datos. Además, una
clase enlaza datos y código. C++ usa una especificación de una clase para
construir objetos. Los objetos son instancias de una clase. Además, una clase es
esencialmente una serie de planes que especifican cómo construir un objeto. Es
importante tener claro esto: Una clase es una abstracción lógica.
No es sino hasta que un objeto de esa clase sea creado que la representación
física de la clase existe en la memoria. Cuando se define una clase, se declaran
los datos que ésta contiene y el código que opera en esos datos. Aunque clases
muy simples pueden contener sólo código o sólo datos, la mayoría de las clases
contienen ambos. En conjunto, los datos se almacenan en las variables y el código
en las funciones. Colectivamente, las funciones y variables que constituyen una
clase son llamados 'miembros' de la clase. Una variable declarada dentro de una
clase es llamada 'variable miembro', y una función declarada en una clase es
llamada 'función miembro'. En ocasiones el término 'variable de instancia' es
usado en lugar de variable miembro. Una clase es creada con la palabra
clave class.
Miembros de una clase.
Métodos:
Miembros:
Una clase puede contener tanto miembros privados como públicos. Por defecto,
todos los elementos definidos en una clase son privados.
Un miembro público significa que el acceso al mismo puede darse dentro del
interior de la clase, dentro de una subclase, y desde un objeto instanciado de
cualquiera de estas.
Las funciones miembros de una clase sólo pueden ser llamadas relativas a un
objeto específico. Para llamar a una función miembro desde alguna parte del
programa que se encuentre fuera de la clase, se debe usar el nombre del objeto y
el operador de direccionamiento '.' ( punto ).
Ejemplo:
Resolución de ámbito:
Constructores
Un constructor es un método que pertenece a una clase y el cual (en C++) debe
tener el mismo nombre de la clase a la que pertenece. A diferencia de los otros
métodos de la clase, un constructor deberá ser del tipo void, es decir, el mismo no
regresará valor alguno. Una clase puede tener más de un método constructor.
Cada clase debe tener al menos un constructor, tanto así que si el programador
creador de una clase no define un método constructor para la misma, el sistema, o
sea el compilador, creará de manera automática un constructor nulo.
El objetivo principal del constructor es establecer las condiciones necesarias
dentro de la memoria y crear una copia del objeto mismo dentro de la memoria.
Los constructores suelen usarse para la inicialización de los atributos de los
objetos instanciados.
Ejemplo:
Libreria iostream
ANALISIS:
Suma:
Resta:
Primer vector
Realización de
Signo de Vector resultante
la
multiplicación (*) de la
multiplicación
Segundo vector multiplicación
Algoritmo:
1. Se crea la clase “Fza”. La cual se compone de 2 variables miembro, 2
constructores y 6 funciones miembro.
1.1. Variables miembro (únicas miembros privados de esta clase)
Variable “x” que representa la coordenada en X del vector y es de
tipo entero.
Variable “y” que representa la coordenada en Y del vector y es de
tipo entero.
1.2. Funciones miembro.
Funciones “pide_fza”, “pide_cons” y “muestraResult” . Son
funciones que no devuelven nada.
Funciones “suma”, “resta”, y “mult”. Son funciones que devuelven
un Fza.
1.3. Constructores
se usa un constructor sin parámetros.
Se usa un constructor con 2 parametros
2. Se definen las funciones a utilizar.
2.1. Función “muestraResult”.
Se imprime el texto: “El resultado es:”
Después se imprime el vector resultante con el formato: (x,y).
2.2. Función “pide_fza”.
Se declara las variables “pi”, “pd” y “co” como caracteres.
Se lee el numerador y el denominador con el formato: (x,y)
2.3. Función “suma”
Se declara la variable “fr” como un tipo Fza.
Se suman entre si los miembros x de los 2 vectores y se iguala al
miembro X de “fr”.
Se suman entre si los miembros Y de los 2 vectores y se iguala al
miembro Y de “fr”.
Y se devuelve el valor de “fr”.
2.4. Función “resta”
Se declara la variable “fr” como un tipo Fza.
Se restan entre si los miembros x de los 2 vectores y se iguala al
miembro X de “fr”.
Se restan entre si los miembros Y de los 2 vectores y se iguala al
miembro Y de “fr”.
Y se devuelve el valor de “fr”.
Fza
- x: flotante
- y: flotante
+Fza();
+Fza(float,float);
+ pide_fza(): void
+ pide_cons(): void
+ muestraResult(ostream &): void
+ suma(Fza): Fza
+ resta(Fza): Fza
+ mult(Fza): Fza
Codificación:
#include<iostream>
#include<cstdlib>
using namespace std;
class Fza
{
float x,y;
public:
Fza();
Fza(float,float);
void pide_fza();
void pide_cons();
void muestraResult(ostream &);
Fza suma(Fza);
Fza resta(Fza);
Fza mult(Fza);
};
Fza::Fza():x(0.0),y(0.0)
{ }
Fza::Fza(float a, float b)
{
}
cin>>x;
y=x;
}
Fza Fza::suma(Fza f)
{
Fza fr;
fr.x=f.x+x;
fr.y=f.y+y;
return fr;
}
Fza Fza::resta(Fza f)
{
Fza fr;
fr.x=f.x-x;
fr.y=f.y-y;
fr.y=-fr.y;
fr.x=-fr.x;
return fr;
}
Fza Fza::mult(Fza f)
{
Fza fr;
fr.x=(f.x)*(x);
fr.y=(f.y)*(y);
return fr;
}
int main()
{
system("color f0");
Fza f1,f2,fr,c;
cout<<"CALCULADORA PARA VECTORES EN COORDENADAS
RECTANGULARES\n\n";
cout<<"NOTA:la coordenada se introduce separtando el componente en X\n";
cout<<"y el omponente en Y por una coma y encerrados entre parentesis\n\n";
char op;
do{
f1.pide_fza();
cin>>op;
switch(op)
{
case '+':
{
f2.pide_fza();
fr=f1.suma(f2);
fr.muestraResult(cout);
break;
}
case '-':
{
f2.pide_fza();
fr=f1.resta(f2);
fr.muestraResult(cout);
break;
}
case '*':
{
c.pide_cons();
fr=f1.mult(c);
fr.muestraResult(cout);
}
}
cout<<"Desea Continuar presione A sino cualquier otra tecla para salir del
programa"<<endl;
cin>>op;
}while(op =='a'|| op=='A');
}
Producción de resultados:
Observaciones: