elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Guía rápida para descarga de herramientas gratuitas de seguridad y desinfección


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Perimetro de cuadrado
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Perimetro de cuadrado  (Leído 1,883 veces)
matver

Desconectado Desconectado

Mensajes: 34


Ver Perfil
Perimetro de cuadrado
« en: 9 Febrero 2018, 15:32 pm »

Hola estoy tratando de resolver ejercicios con la POO y ahora trato de resolver el perimetro de un cuadrado pero el compilador gcc me da error:
Código
  1. #include <iostream>
  2. using namespace std;
  3. class Cuadrado {
  4.    public:
  5.      int Base;
  6.      int Altura;
  7.  
  8. };
  9.  
  10. int main (){
  11. Cuadrado cuadrado1;
  12. int perimetro=0;
  13. cuadrado1.Base=2;
  14. cuadrado1.Altura=2;
  15. perimetro= Base* Altura;
  16. cout<<"El perimetro del cuadrado es:"<<perimetro<<endl;
  17.  
  18. return 0;
  19.  
  20.  


Error: error: ‘Base’ was not declared in this scope
 perimetro= Base* Altura;
            ^
perimetro.cpp:15:18: error: ‘Altura’ was not declared in this scope
 perimetro= Base* Altura;
                  ^


En línea

matver

Desconectado Desconectado

Mensajes: 34


Ver Perfil
Re: Perimetro de cuadrado
« Respuesta #1 en: 9 Febrero 2018, 15:51 pm »

El error estaba en la linea 15 que debería ser así:
perimetro=cuadrado1.Base*cuadrado1.Altura;


« Última modificación: 9 Febrero 2018, 15:57 pm por matver » En línea

Machacador


Desconectado Desconectado

Mensajes: 5.018


El original...


Ver Perfil WWW
Re: Perimetro de cuadrado
« Respuesta #2 en: 9 Febrero 2018, 15:58 pm »

No hagas doble post... utiliza el botón modificar que tienes arriba a la derecha en tu post...

 :rolleyes: :o :rolleyes:

Saludos.
En línea

"Solo tu perro puede admirarte mas de lo que tu te admiras a ti mismo"
A.I.

Desconectado Desconectado

Mensajes: 61


Ver Perfil
Re: Perimetro de cuadrado
« Respuesta #3 en: 9 Febrero 2018, 17:34 pm »

Tienes algunos conceptos sobre los cuadrados equivocados. En un cuadrado la base y la altura son iguales. Además el perímetro se calcularía multiplicando un lado por 4. Si haces lado^2 estás calculando el área.

Por otro lado la rutina para calcular el perímetro probablemente debería ser un método de la clase cuadrado.

Saludos!
En línea

stderr

Desconectado Desconectado

Mensajes: 40


Ver Perfil
Re: Perimetro de cuadrado
« Respuesta #4 en: 20 Febrero 2018, 02:21 am »

Compi, no se trata de que en 'main'' hagas todo el trabajo, debes repasar conceptos como 'encapsulación', los objetos son los que saben sobre sí mismos y como comportarse, echa un ojo, en main simplemente los creas y los muestras, incluso podríamos haberles dado la capacidad de imprimirse ellos solos (incluso sobrecargando el operador <<) pero es demasiado, repasa...

Código
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. class Cuadrado {
  6. private:
  7.    float lado;
  8.  
  9. public:
  10.  
  11.    Cuadrado(float lado) {
  12.        this->lado = lado;
  13.    }
  14.  
  15.    float obtenerLado() {
  16.        return this->lado;
  17.    }
  18.  
  19.    float obtenerArea() {
  20.        return this->lado * this->lado;
  21.    }
  22.  
  23.    float obtenerPerimetro() {
  24.        return this->lado * 4;
  25.    }
  26.  
  27. };
  28.  
  29. int main(void) {
  30.    Cuadrado c1(2), c2(7);
  31.  
  32.    cout
  33.        << "Cuadrado 'c1'" << endl
  34.        << "Lado: " << c1.obtenerLado() << endl
  35.        << "Área: " << c1.obtenerArea() << endl
  36.        << "Perímetro: " << c1.obtenerPerimetro() << endl << endl;
  37.  
  38.    cout
  39.        << "Cuadrado 'c2'" << endl
  40.        << "Lado: " << c2.obtenerLado() << endl
  41.        << "Área: " << c2.obtenerArea() << endl
  42.        << "Perímetro: " << c2.obtenerPerimetro() << endl << endl;
  43. }
  44.  
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Cuadrado Mágico
Programación C/C++
Black Lotus 5 4,568 Último mensaje 15 Marzo 2013, 20:58 pm
por Black Lotus
Script que calcula área y perímetro de un triángulo rectángulo
PHP
uluigi 6 9,231 Último mensaje 13 Julio 2015, 07:29 am
por uluigi
Cuadrado en c++ « 1 2 »
Programación C/C++
ianmorar03 12 4,679 Último mensaje 14 Abril 2016, 22:22 pm
por ianmorar03
[Duda] Como sacar la superficie y perimetro utilizando Google Maps en un rango
Dudas Generales
arthusu 1 1,931 Último mensaje 22 Enero 2017, 18:31 pm
por z3nth10n
El perímetro de seguridad ha desaparecido, el phishing está triunfando y el ...
Noticias
wolfbcn 0 1,551 Último mensaje 19 Abril 2017, 21:30 pm
por wolfbcn
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines