[C++] for문 내부의 std::cin

유빈·2024년 3월 9일
0

C++

목록 보기
4/12
post-thumbnail

📌 for문 내부의 std::cin 입력방법


권오흠 교수님 - 객체지향프로그래밍 code20

#include <iostream>

using namespace std;
const int MAX = 100;

int main() {
    int n;
    int data[MAX];

    cin >> n;     // 입력받을 수의 개수

    for (int i = 0; i < n; i++) 
        cin >> data[i];       // data 배열에 수들 입력
    
    int s;
    int count = 0;

    cin >> s;    // 두 수의 합이 될 수

    for (int i = 0; i < n-1; i++) {
        for (int j = i+1; j < n; j++) {
            if (data[i] + data[j] == s)
                count++;
        }
    }
    cout << count << endl;

    return 0;
}

배열 data 안의 수들을 2개씩 더했을 때, s와 같은 수의 쌍의 개수를 출력하자.


1. 한 줄 입력

5
2 4 2 4 5 1
6               // (2, 4), (2, 4), (4, 2), (2, 4), (5, 1)

위와 같이 입력했을 때, 수들의 공백을 기준으로 배열에 수들을 저장하게 된다.
즉, 2 | 4 | 2 | 4 | 5 | 1 들을 각각 배열에 넣게 된다.


2. 여러 줄 입력

5
2
4
2
4
5
1
6

위와 같이 입력했을 때도 각 줄의 수들을 배열에 저장하게 된다.


    for (int i = 0; i < n; i++) 
        cin >> data[i];

파이썬과 같이 각 줄에 수를 하나씩 입력해야 인덱스가 1씩 증가하여 각 배열의 인덱스에 수를 저장할 수 있을거라 생각했다. 하지만, 배열 data의 데이터타입이 int이므로 공백을 기준으로 한 줄에 수들을 입력해도 알아서 배열들에 각각의 수를 저장해준다. -> 🤔


profile
🌱

0개의 댓글