[C++] 객체 배열화를 이용하여 정사각형 넓이 구하기

2020. 4. 19. 01:22·🖥️ 컴퓨터공학 🖥️/C | C++
반응형

문제

요구사항

1. Rectagle이라는 클래스를 지정해야 함

 

2. Rectangle클래스 안에 width와 height라는 정수형 지역 변수 설정 필요

 

3. 클래스 안에 getArea()라는 메소드를 설정 필요

 

4. getArea()는 width*height 값을 return하도록 코드 설계 필요

 

5. 객체 배열의 크기를 설정하기 위해 int n을 입력

 

6. 각각의 Rectangle 객체에 width값과 height값을 저장하고 같으면 정사각형이라는 것을 출력해야함

 

설계도

 

소스코드

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
#include <iostream>
 
using namespace std;
 
class Rectangle {
 
public:
 
           int width, height;
 
//멤버 변수 width, height를 선언해준다. c++에서는 접근 선언자를 하지 않으면 protected이므로 public을 꼭 써줘야 한다. 이것때문에 좀 애먹었다.ㅠㅠ
 
public:
 
           double getArea() {
 
                       return width * height;
 
           }
 
//정사각형의 넓이를 return 해주는 메소드
 
};
 
 
 
int main() {
 
 
 
           int n;
 
           cout << "생성할 사각형의 개수는?";
 
           cin >> n;//생성할 사각형의 개수를 입력한다
 
           Rectangle *rect=new Rectangle[n]; // n개인 Rectangle 객체 배열 생성
 
           static int width, height;
 
           for (int i = 0; i < n; i++) {//각각 사각형의 가로 세로를 입력해준다
 
                       cout << "Rect" << i << "의 가로 세로 값은?" << endl;
 
                       cin >> width;
 
                       cin >> height;
 
                       rect[i].width = width;//입력한 값을 각각 Rectagle의 객체인 객채 배열들에 넣어준다.
 
                       rect[i].height = height;
 
           }
 
           cout << endl;
 
           cout << "결과 :" << endl;
 
 
 
           for (int i = 0; i < n; i++) {
 
                       if (rect[i].width == rect[i].height) {//만약 가로와 세로가 같으면 정사각형임을 출력해준다
 
                                  cout << "Rect" << i+1 << "은" << "정사각형이다" << endl;
 
                       }
 
           }
 
 
 
           for (int i = 0; i < n; i++)
 
                       cout << "Rect " << i+1 << "의 면적은 " << rect[i].getArea() << endl;
 
           }//객체 배열들의 getArea(), 즉 넓이를 출력한다.
http://colorscripter.com/info#e" target="_blank" style="color:#4f4f4ftext-decoration:none">Colored by Color Scripter
http://colorscripter.com/info#e" target="_blank" style="text-decoration:none;color:white">cs

 

실행 결과

 

의견

지금까지 객체를 배열화한 경우는 못봤는데 이번에 처음으로 해보아서 낯설기도 했지만 신기하였다.

변수를 사용할 때 클래스에서나 main함수에서나 둘다 필요하다는 것을 배웠다.

728x90
반응형

'🖥️ 컴퓨터공학 🖥️ > C | C++' 카테고리의 다른 글

[C++] C++에서의 배열 선언  (0) 2020.06.08
[C++] 가상함수 상속을 이용하여 값을 변환해주는 클래스 작성  (0) 2020.05.24
[C++] 다중상속을 이용한 연산 프로그램(feat. public 다중상속)  (0) 2020.05.20
[C++] 멤버함수와 외부 함수를 이용한 OOP(feat. friend, operator)  (0) 2020.05.02
[C++] 객체 지향을 이용한 c++ 프로그래밍  (0) 2020.04.10
'🖥️ 컴퓨터공학 🖥️/C | C++' 카테고리의 다른 글
  • [C++] 가상함수 상속을 이용하여 값을 변환해주는 클래스 작성
  • [C++] 다중상속을 이용한 연산 프로그램(feat. public 다중상속)
  • [C++] 멤버함수와 외부 함수를 이용한 OOP(feat. friend, operator)
  • [C++] 객체 지향을 이용한 c++ 프로그래밍
공대생 배기웅
공대생 배기웅
군노답 미필 공대생 배기웅의 대학생활을 갈아 넣은 블로그
    반응형
  • 공대생 배기웅
    글쓰는공대생의 IT블로그
    공대생 배기웅
  • 전체
    오늘
    어제
    • 분류 전체보기 (166)
      • 🖊️ 공대생 글쓰기 🖊️ (17)
        • 공대생 회고록 (4)
        • 공대생의 끄적끄적 (4)
        • 슬기로운 공대생활 (9)
        • 사회초년생의 업무일기 (0)
      • 📈 산업공학 📈 (14)
        • 금융, 파생상품 (13)
        • 통계 (0)
        • 재무회계 (1)
      • 🖥️ 컴퓨터공학 🖥️ (92)
        • 머신러닝, 딥러닝 (12)
        • 텐서플로우, 케라스 (1)
        • 알고리즘 (24)
        • 웹 (5)
        • Python (3)
        • C | C++ (23)
        • Java (15)
        • 코드 에러 모음집 (9)
      • 😙 취미, 교양 😙 (2)
        • 영어공부 (1)
        • 일본어회화 공부 (1)
      • 🔍 정보 공유 🔍 (38)
        • 대학생 외부활동 정보 (2)
        • 개발자관련 정보 (3)
        • 대입 논술 입시자료 정보 (22)
        • 프로그램 세팅 (11)
  • 블로그 메뉴

    • 홈
    • 방명록
  • 링크

  • 공지사항

    • [공지] 글쓰는 공대생입니다 😃
  • 인기 글

  • 태그

    백준
    무작위 변수
    C++
    예외
    자바
    객체지향
    OOP
    acmicpc
    알고리즘
    조작자
    경제성공학
    equals프레임워크
    스캐너
    프로그래머스
    데이터베이스
    Operator
    Java
    이클립스
    재귀함수
    프랜드함수
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
공대생 배기웅
[C++] 객체 배열화를 이용하여 정사각형 넓이 구하기
상단으로

티스토리툴바