eloclacs 0 Denunciar post Postado Dezembro 2, 2013 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
GBecker 51 Denunciar post Postado Dezembro 3, 2013 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