Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Escreva uma classe que contenha dois membros de dados (atributos) privados do tipo real
denominados base e altura e chame-a de Triangulo. Além disso,
a) Crie um construtor-padrão (sem argumentos) que inicialize os membros de dados com
zero.
b) Crie um segundo construtor que inicialize todos os membros de dados com os valores
recebidos como argumento.
c) Escreva métodos públicos para o cálculo da área, do perímetro e da hipotenusa de um
triângulo retângulo.
d) Crie um método print() para mostrar todos os dados de um Triangulo.
e) Implemente uma função principal (main) que construa (declare) um objeto do tipo
Triangulo, leia a base e a altura e escreva na tela esses dados e também a área, o
perímetro e a hipotenusa do triângulo em questão, tudo isso utilizando o método
print() feito anteriormente.
f) NOVIDADE: Crie os métodos de acesso (getters e setters) para todos os atributos.
#include<iostream>
#include<iomanip>
#include<cmath>
#include"Triangulo.h"
using namespace std;
Triangulo::Triangulo(double b, double a) { // construtor
setBase(b); // melhor que: base = b
setAltura(a); // melhor que: altura = a;
}
double Triangulo::area() {
return base*altura/2.0;
}
double Triangulo::hipotenusa() {
return sqrt(base*base + altura*altura);
}
double Triangulo::perimetro() {
return base + altura + hipotenusa(); // chamada de método dentro de método
}
void Triangulo::setBase(double b) {
base = b;
}
double Triangulo::getBase() {
return base;
} altura = a;
}
double Triangulo::getAltura() {
return altura;
}
void Triangulo::print(){
cout << char(201) << setw(32) << setfill(char(205)) << char(187) << endl
<< char(186) << " Dados do Triangulo\t" << char(186) << endl
<< char(204) << setw(32) << setfill(char(205)) << char(185) << endl
<< char(186) << " Base: " << base << "\t\t\t" << char(186) << endl
<< char(186) << " Altura: " << altura << "\t\t\t" << char(186) << endl
<< char(186) << " Area: " << area() << "\t\t\t" << char(186) << endl
<< char(186) << " Perimetro: " << perimetro() << "\t\t" << char(186) << endl
<< char(186) << " Hipotenusa: " << hipotenusa() << "\t\t" << char(186) << endl
<< char(200) << setw(32) << setfill(char(205)) << char(188) << endl;
}
Triangulo::Triangulo() { // construtor-padrão
base = 0;
altura = 0;Carregando comentários...