입체도형 구하는 프로그래밍입니다. 부탁드립니다..
글쓴이: smallhotdog / 작성시간: 일, 2015/05/24 - 9:34오후
#include<iostream> using namespace std; class Rectangle { protected: float lengtha,lengthb, height; public: Rectangle() : lengtha(0.0),lengthb(0.0), height(0.0) { cout << "가로를 입력하시오: "; cin >> lengtha; cout << "세로를 입력하시오"; cin >> lengthb; cout << "높이를 입력하시오"; cin >> height; } }; class Recvolume : public Rectangle { public: float volume() { return lengtha*lengthb*height; } }; class RecArea : public Rectangle { public: float area() { return (lengtha*height) * 2 + (lengtha*lengthb) * 2 + (lengthb*height) * 2; } }; class Square { protected: float lengtha, lengthb, height; public: Square() : lengtha(0.0), lengthb(0.0), height(0.0) { cout << "가로를 입력하시오: "; cin >> lengtha; cout << "세로를 입력하시오"; cin >> lengthb; cout << "높이를 입력하시오"; cin >> height; } }; class Squavolume : public Square { public: float volume() { return lengtha*lengthb*height; } }; class SquaArea : public Square { public: float area() { return (lengtha*height) * 2 + (lengtha*lengthb) * 2 + (lengthb*height) * 2; } }; class Pitch { protected: float r ; public: Pitch() : r(0.0) { cout << "반지름을 입력하시오(π=3.14로 계산) "; cin >> r; } }; class Pitvolume : public Pitch { public: double volume() { return 4 / 3 * 3.14*r*r; } }; class PitArea : public Pitch { public: double area() { return 4 * 3.14 * r * r; } }; class Cone { protected: float r ,height, l; public: Cone(): r(0.0), height(0.0), l(0.0) { cout << "반지름을 입력하시오(π=3.14로 계산) "; cin >> r; cout << "높이를 입력하시오: "; cin >> height; cout << "호의 길이를 구하시오: "; cin >> l; } }; class ConeVolume : public Cone { public: double volume() { return 1 / 3 * 3.14*r*r*height; } }; class ConeArea : public Cone { public: double area() { return 3.14*r*r + 3.14*r*l; } }; int main() { char menu; while (true) { //메뉴출력 cout << "1.직육면체 부피, 넓이 구하기\n"; cout << "2.정육면체 부피, 넓이 구하기\n"; cout << "3.구 부피, 넓이 구하기\n"; cout << "4.원뿔 부피, 넓이 구하기\n"; cout << "5.종료\n"; cout << "메뉴 선택: "; cin >> menu; if (menu == '5') break; switch (menu) { case '1':{ Rectangle b; cout << "Enter data for first rectangle to find area.\n"; Recvolume a; cout << "직육면체의 부피는: "<< << "입니다"; cout << "직육면체의 넓이는: "; } break; case '2':{ cout << "정육면체의 부피는: "; cout << "정육면체의 넓이는: "; } break; case'3':{ cout << "구의 부피는: "; cout << "구의 넓이는: "; } break; case '4':{ cout << "원뿔의 부피는: "; cout << "원뿔의 넓이는: "; } break; } } return 0; }
switch문에서 class를 불러오려고 하는데 뜻대로 되지않습니다.
설명도 조금 덧붙여주시면 정말 감사하겠습니다..(code수정도 좀 부탁드릴게요..)
Forums:
> switch문에서 class를 불러오려고 하는데
> switch문에서 class를 불러오려고 하는데 뜻대로 되지않습니다.
작성하신 분의 뜻이 어떤 뜻인지 모르겠습니다.
'switch문에서 class를 불러온다'라는 것도 무슨 뜻인지 모르겠습니다.
기대하시는 동작이 무엇이고 기대밖으로 어떤 동작이 나왔는지, 그리고 에러가 있다면 무슨 에러인지를 구체적으로 적어주세요.
스위치 문 안에서 변수를 선언하고 싶다는 뜻인 듯.
스위치 문 안에서 변수를 선언하고 싶다는 뜻인 듯.
1. 컴퓨터 공학과의 고급객체지향 과목의 과제
1. 컴퓨터 공학과의 고급객체지향 과목의 과제 같네요.
2. 수학의 [대수학 기본정리]를 전부 적어놓고 "이해가 안되요" 하는 것 같습니다.
어느 부분이 안되는지 정확히 집어 주셔야지요..
3. 윗 분이 말씀하신 것 처럼, 저도 class를 불러온다는게 무슨 말인지 모르겠네요.
instance(혹은 object)가 생성이 안된다는 말인가요?
4. 단순히 언어에 관한 문제라면, 컴파일러 명칭과 컴파일 에러/런타임 에러를 구체적으로 올려주면 더욱 좋습니다.
클래스설계/프로그램설계의 경우 또 다른 문제겠지요..
* Rectangle는 위키에 의하면
"In Euclidean plane geometry, a rectangle is any quadrilateral with four right angles"
즉 평면 도형인데 구현은 입체(Cube)로 되어 있네요.
* 이 문제에서 상속을 왜 하는지 모르겠습니다. 다형성(polymorphism)을 전혀 고려 안해도 되는데..
댓글 달기