Advertisement
Guest User

Untitled

a guest
Dec 7th, 2016
61
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 2.69 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <conio.h>
  3. #include <iostream>
  4. using namespace std;
  5. class Quadrado{
  6.  public:
  7.  float lado;
  8.  Quadrado(){
  9.   lado = 0;
  10.  };
  11.  void setLado(float l){
  12.   lado = l;
  13.  };
  14.  float calculaPerimetro(){
  15.   return 4*lado;
  16.  };
  17.  float calculaArea(){ // 1
  18.   return lado*lado;
  19.  };
  20. };
  21.  
  22. class Cubo: public Quadrado {
  23.  public:
  24.  Cubo(){
  25.   lado = 0;
  26.  };
  27.  float calculaArea(){
  28.   return 6*Quadrado::calculaArea();
  29.  };
  30.  float calculaVolume(){ // 2
  31.   return lado * lado * lado;
  32.  };
  33. };
  34.  
  35. class Retangulo{
  36.  public:
  37.  float altura, largura;
  38.  Retangulo(){
  39.   altura = 0;
  40.   largura = 0;
  41.  };
  42.  void setAltura(float a){
  43.   altura = a;
  44.  };
  45.  void setLargura(float l){
  46.   largura = l;
  47.  };
  48.  float calculaPerimetro(){
  49.   return 2*altura + 2*largura;
  50.  };
  51.  float calculaArea(){ // 3
  52.   return altura * largura;
  53.  };
  54. };
  55.  
  56. class Paralelepipedo: public Quadrado, public Retangulo{
  57.  public:
  58.  Paralelepipedo(){
  59.   lado = 0;
  60.   altura = 0;
  61.   largura = 0;
  62.  };
  63.  float calculaArea(){
  64.   largura = lado;
  65.   return 2*Quadrado::calculaArea() + 4*Retangulo::calculaArea();
  66.  };
  67.  float calculaVolume(){
  68.   return altura*Quadrado::calculaArea();
  69.  };
  70. };
  71.  
  72. void mostraMensagem (string msg, float vlr, string unidade){
  73.  cout << msg << vlr << unidade << "\n";
  74. };
  75.  
  76. int main(){
  77.  Quadrado q;
  78.  float lado;
  79.  printf("Digite o valor do lado do quadrado: ");
  80.  scanf("%f%*c", &lado);
  81.  q.setLado(lado);
  82.  mostraMensagem("O valor da area e : ", q.calculaArea(),"m2");
  83.  mostraMensagem("O valor do perimetro e : ", q.calculaPerimetro(),"m");
  84.  printf("---------------------------------\n\n ");
  85.  
  86.  Cubo c;
  87.  printf("Digite o valor do lado do cubo: ");
  88.  scanf("%f%*c", &lado);
  89.  c.setLado(lado);
  90.  mostraMensagem("O valor da area e : ", c.calculaArea(),"m2");
  91.  mostraMensagem("O valor do volume e : ", c.calculaVolume(),"m3");
  92.  printf("---------------------------------\n\n ");
  93.  
  94.  Retangulo r;
  95.  float altura, largura;
  96.  printf("Digite o valor da altura do retangulo: ");
  97.  scanf("%f%*c", &altura);
  98.  printf("Digite o valor da largura do retangulo: ");
  99.  scanf("%f%*c", &largura);
  100.  r.setAltura(altura);
  101.  r.setLargura(largura);
  102.  mostraMensagem("O valor da area e : ", r.calculaArea(),"m2");
  103.  mostraMensagem("O valor do perimetro e : ", r.calculaPerimetro(),"m");
  104.  printf("---------------------------------\n\n ");
  105.  
  106.  Paralelepipedo p; // 4
  107.  printf("Digite o valor do lado da basedo paralelepipedo (quadrado): ");
  108.  scanf("%f%*c", &lado);
  109.  p.setLado(lado); //5
  110.  printf("Digite o valor da altura do paralelepipedo: ");
  111.  scanf("%f%*c", &altura);
  112.  p.setAltura(altura);
  113.  mostraMensagem("O valor da area e : ", p.calculaArea(),"m2");
  114.  mostraMensagem("O valor do volume: ", p.calculaVolume(),"m3");
  115.  getch();
  116.  return 0;
  117. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement