Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

eloclacs

Programa área do circulo c++

Recommended Posts

Olá, gostaria de saber como resolvo este código para calcular a área e a circunferência do círculo passado o raio via teclado e usando Orientação a Objetos:

 

#include <cstdlib>
#include <iostream>
using namespace std;
class Circulo {
      public:
      float raio;    
      
      Circulo(float r){
       raio = r;
       
      }
      public: 
              
      float calCirc(){
         float pi=3.14;
         return 2*(pi*raio);
      }
      
      float calcArea(){
         float pi=3.14;
         return pi*(raio*raio);             
      }    
};


int main(int argc, char *argv[])
{  
   Circulo c1;
   float r;
   cout<<"Digite o raio"<<endl;
   cin>>r;
   cout<<c.calCirc(r);
   
    /* Passando o valor do raio diretamente está funcionando:
    Circulo c(3);
    
    cout<<"Circunferencia: "<<c.calCirc()<<endl;
    cout<<"Area: "<<c.calcArea()<<endl;
    */   
    system("PAUSE");
    return EXIT_SUCCESS;
}

A parte do código que está comentada funciona corretamente, agora quando eu tento pegar o raio via teclado ele da erro na linha da chamada do método. Como resolvo este problema? Alguém poderia me indicar o erro e a solução?

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você percebeu que está tentando passar parâmetro para um método que não recebe parâmetro na assinatura?

 

Adquira a prática de ler os retornos de erro do compilador.

 

Erros que encontrei:

- Na declaração do objeto, faltou passar o parâmetro do construtor.

- Não existe um objeto chamado c, e sim c1.

- O método calCirc não tem parâmetro na assinatura.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.