#include <iostream>
using namespace std;
class Pyramid{
public:
Pyramid();
void set_surfaceArea(double, double, double);
void set_volume(double, double);
double get_surfaceArea();
double get_volume();
void print_sufraceArea();
void print_volume();
private:
double height,
sideLength,
perimeter,
baseArea,
surfaceArea,
volume;
};
Pyramid::Pyramid(){
height = 0;
baseArea = 0;
perimeter = 0;
sideLength = 0;
}
void Pyramid::set_surfaceArea(double baseArea, double sideLength, double perimeter){
baseArea = baseArea;
sideLength = sideLength;
perimeter = perimeter;
}
void Pyramid::set_volume(double baseArea, double height){
baseArea = baseArea;
height = height;
}
double Pyramid::get_surfaceArea(){
return (1/2) * baseArea * perimeter * sideLength;
}
double Pyramid::get_volume(){
x = (1/3) * baseArea * height;
return x;
}
int main(){
double height,
test,
sideLength,
perimeter,
baseArea;
cout << "Enter height: ";
cin >> height;
cout << "Enter side length: ";
cin >> sideLength;
cout << "Enter perimeter: ";
cin >> perimeter;
cout <<"Enter base area: ";
cin >> baseArea;
Pyramid x;
x.set_surfaceArea(baseArea, sideLength, perimeter);
x.set_volume(baseArea, height);
test = x.get_volume();
cout << "test: " << test << endl;
}
このコードを実行して(入力用の数値を入力すると)、「test:0」という出力が得られます。このコードは、スクラッチからクラスを作成する私の最初の試みです。誰かが、私が何を入れても、私の出力が私に「0」を与えている理由を簡単に指摘できると確信しています。C++クラスの出力が正しくない
ありがとう!
'set_surfaceArea'に変数を設定します。引数の名前をクラスメンバーと同じ名前以外の名前に変更して、もう一度やり直してください。 – ocket8888
しかし、それは私が設定した入力変数の名前です。私はそれらを別のものに置くべきですか? – Gprice1148
はい、そうです。 – ocket8888