y ademas es libre de virus 100% jajaja
Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.
Mostrar Mensajes Menú//rect.hpp
#include <iostream>
class Punto //aloja las coordenadas x,y
{
// No hay constructor, usar el predeterminado.
public:
void ConfigurarX (int x) { suX = x; }
void ConfigurarY (int y) { suY = y; }
int ObtenerX () const { return suX; }
int ObtenerY () const { return suY; }
private:
int suX; //20
int suY; //100
}; // Fin de la declaracion de la clase Punto.
class Rectangulo
{
public:
Rectangulo (int superior, int izquierdo, int inferior, int derecho);
~Rectangulo() {}
int ObtenerSuperior() const {return suSuperior;}
int ObtenerIzquierdo() const {return suIzquierdo;}
int ObtenerInferior() const {return suInferior;}
int ObtenerDerecho() const {return suDerecho;}
void ConfigurarSuperior(int superior) {suSuperior = superior;}
void ConfigurarIzquierdo(int izquierdo) {suIzquierdo = izquierdo;}
void ConfigurarInferior(int inferior) {suInferior = inferior;}
void ConfigurarDerecho(int derecho) {suDerecho = derecho;}
Punto ObtenerSuperiorIzquierdo () const {return suSuperiorIzquierdo;}
Punto ObtenerInferiorIzquierdo () const {return suInferiorIzquierdo;}
Punto ObtenerSuperiorDerecho () const {return suSuperiorDerecho;}
Punto ObtenerInferiorDerecho () const {return suInferiorDerecho;}
void ConfigurarSuperiorIzquierdo(Punto Location) {suSuperiorIzquierdo = Location;}
void ConfigurarInferiorIzquierdo(Punto Location) {suInferiorIzquierdo = Location;}
void ConfigurarSuperiorDerecho(Punto Location) {suSuperiorDerecho = Location;}
void ConfigurarInferiorDerecho(Punto Location) {suInferiorDerecho = Location;}
int ObtenerArea() const;
private:
Punto suSuperiorIzquierdo;
Punto suSuperiorDerecho;
Punto suInferiorIzquierdo;
Punto suInferiorDerecho;
int suSuperior;
int suIzquierdo;
int suInferior;
int suDerecho;
};//fin de rect.hpp
//rect.cpp
#include "rect.hpp"
Rectangulo::Rectangulo (int superior, int izquierdo, int inferior, int derecho)
{
suSuperior = superior;
suIzquierdo = izquierdo;
suInferior = inferior;
suDerecho = derecho;
suSuperiorIzquierdo.ConfigurarX(izquierdo);
suSuperiorIzquierdo.ConfigurarY(superior);
suSuperiorDerecho.ConfigurarX(derecho);
suSuperiorDerecho.ConfigurarY(superior);
suInferiorIzquierdo.ConfigurarX(izquierdo);
suInferiorIzquierdo.ConfigurarY(inferior);
suInferiorDerecho.ConfigurarX(derecho);
suInferiorDerecho.ConfigurarY(inferior);
}
int Rectangulo::ObtenerArea() const
{
int Ancho = suDerecho-suIzquierdo;
int Alto = suSuperior-suInferior;
return (Ancho * Alto);
}
int main ()
{
//inicializa una variable Rectangulo local
Rectangulo MiRectangulo (100, 20, 50, 80);
int Area = MiRectangulo.ObtenerArea();
std::cout << "Area: " << Area << "\n";
std::cout << "Cordenada X SuperiorIzquierda: ";
std::cout << MiRectangulo.ObtenerSuperiorIzquierdo().ObtenerX()<< "\n";
system ("pause>nul");
return 0;
}
Cita de: zonahurbana en 20 Marzo 2013, 04:28 AM
Ya verás que no jeje.#include <iostream>
#include <stdlib.h>
using namespace std;
int main ()
{
int num1;
int num2;
int suma = num1 + num2; //creo que el problema esta aqui :(
cout << "Introduce el primer numero\n"<<endl;
cin >> num1;
cout << "Introduce el segundo numero\n"<<endl;
cin >> num2;
cout << "El resultados es: " << suma << "\n" <<endl;
system ("pause"); return 0;
}
Cuando escribes int num1; int num2;
Estás declarando y definiendo dos variables de tipo entero, pero, como no las inicializas, su contenido es basura. Es decir, van a poder contener lo que sea que fuere.
Luego declaras una variable suma, e intentas inicializarla con el valor de num1+num2. Pero estos no fueron inicializados...
Me parece que aquí debió de advertirte de ese error. Aunque, talvés DevC++ los considera inicializados con 0.
Si no deseas mostrar el resultado como cout<<num1+num2; (como en el según programa que citas) y prefieres usar de intermediario la variable suma, puedes hacerlo. Pero... debes hacerlo luego que num1 y num2 tienen sus valores respectivos (es decir, luego de haberlos leído usando cin).
Saludos.
Cita de: Karcrack en 20 Marzo 2013, 04:23 AM
El problema es que calculas la suma antes de leer el resultado.
Las variables num1 y num2 obtienen valor en las lineas: cin >> num1; y cin >> num2;. Y tú haces la suma antes.
La forma correcta de hacerlo es así:#include <iostream>
#include <stdlib.h>
using namespace std;
int main ()
{
int num1;
int num2;
int suma;
cout << "Introduce el primer numero\n"<<endl;
cin >> num1;
cout << "Introduce el segundo numero\n"<<endl;
cin >> num2;
suma = num1 + num2;
cout << "El resultados es: " << suma << "\n" <<endl; //al invocar suma a mi no me sale por ejempo 2+2 me dice que es 0 :/
system ("pause");
return 0;
}
#include <iostream>
#include <stdlib.h>
using namespace std;
int main ()
{
int num1;
int num2;
int suma = num1 + num2; //creo que el problema esta aqui :(
cout << "Introduce el primer numero\n"<<endl;
cin >> num1;
cout << "Introduce el segundo numero\n"<<endl;
cin >> num2;
cout << "El resultados es: " << suma << "\n" <<endl; //al invocar suma a mi no me sale por ejempo 2+2 me dice que es 0 :/
system ("pause");
return 0;
}
#include <iostream>
#include <stdlib.h>
using namespace std;
int main ()
{
int num1;
int num2;
cout << "Introduce el primer numero\n"<<endl;
cin >> num1;
cout << "Introduce el segundo numero\n"<<endl;
cin >> num2;
cout << "El resultados es: " << num1+num2 << "\n" <<endl; // si le hago asi si me funciona pero entonces
//no puedo trabajar con el resultado de la suma
system ("pause");
return 0;
}