天天看點

YTU 2912: 圓柱體的C++

2912: 圓柱體的C++

時間限制: 1 Sec  

記憶體限制: 128 MB

送出: 333  

解決: 133

題目描述

小明的弟弟加入的C++興趣小組,組長布置的第一個任務就是将已有的C程式改寫成C++程式。他配置設定的第一個題目是,給出圓柱體的底面半徑r和高h,求圓柱體的底面積、側面積、表面積和體積(小數點後保留2位)。請輔助小明的弟弟用C++類來實作。

C代碼:
 #include <stdio.h>
 #define PI 3.1415926
 int main()
 {
     int r,h;
     double area,V,basal_area,lateral_area;
     double C;
     scanf("%d %d",&r,&h);
     basal_area=PI*r*r;
     C=2*PI*r;
     lateral_area=C*h;
     area=basal_area*2+lateral_area;
     V=basal_area*h;
     printf("basal_area:%.2lf\n",basal_area);
     printf("lateral_area:%.2lf\n",lateral_area);
     printf("area:%.2lf\n",area);
     printf("V:%.2lf\n",V);
     return 0;
 }
 C++代碼:
 #include <iostream>
 #include <iomanip>
 using namespace std;
 #define PI 3.1415926
/******************/
 隻需将此部分代碼補充完整并送出
 class Cylinder
 {
 public:
     double area,V,basal_area,lateral_area;
     void calculate(......)
     {
     }
     void display()
     {
     }
 };
/*******************/
 int main()
 {
     Cylinder c;
     int r,h;
     cin>>r>>h;
     c.calculate(r,h);
     c.display();
     return 0;
 }      

輸入

輸入為兩個正整數,分别為底面半徑r和高h.

輸出

輸出格式見以下示例

樣例輸入

1 2      

樣例輸出

basal_area:3.14
lateral_area:12.57
area:18.85
V:6.28      

im0qianqian_站在回憶的河邊看着搖晃的渡船終年無聲地擺渡,它們就這樣安靜地畫下黃昏畫下清晨......

#include <iostream>
#include <iomanip>
using namespace std;
#define PI 3.1415926
class Cylinder
{
public:
    double area,V,basal_area,lateral_area;
    void calculate(int r,int h)
    {
        basal_area=PI*r*r;
        lateral_area=2*r*PI*h;
        area=2*r*PI*h+2*PI*r*r;
        V=r*r*PI*h;
    }
    void display()
    {
        cout<<fixed<<setprecision(2);
        cout<<"basal_area:"<<basal_area<<endl;
        cout<<"lateral_area:"<<lateral_area<<endl;
        cout<<"area:"<<area<<endl;
        cout<<"V:"<<V<<endl;
    }
};
int main()
{
    Cylinder c;
    int r,h;
    cin>>r>>h;
    c.calculate(r,h);
    c.display();
    return 0;
}      

繼續閱讀