2 차원 배열에서 짝수가 가장 많은 행 찾기

C++Beginner
지금 연습하기

소개

이 랩에서는 2 차원 배열을 사용하여 배열에서 짝수의 개수가 가장 많은 행을 찾는 C++ 프로그램을 작성할 것입니다.

필요한 변수 선언

다음 명령을 사용하여 ~/project 디렉토리에 main.cpp라는 새 파일을 생성합니다.

touch ~/project/main.cpp

a, n, l, i, j, 그리고 count를 포함하는 필요한 변수를 선언하는 것으로 시작합니다.

int a[10][10], n, l, i, j, count = 0;

행렬 크기 및 행 번호 가져오기

다음으로, 사용자로부터 행렬의 크기와 행 번호를 입력받습니다. cin 함수를 사용하여 사용자 입력 값을 받습니다.

cout << "Enter matrix size(l * l): ";
cin >> l;
cout << "Enter row number of matrix: ";
cin >> n;

사용자 입력 유효성 검사

n이 행렬 크기의 제한 내에 있는지 확인하여 사용자 입력의 유효성을 검사합니다. 그렇지 않은 경우, 오류 메시지를 표시하고 프로그램을 종료합니다.

if (n < 0 || n > l) {
  cout << "Error: Row exceeds matrix size. Please enter a value > 0 and less than or equal to the size of matrix." << endl;
  exit(0);
}

행렬 값 가져오기

중첩된 for 루프를 사용하여 사용자로부터 행렬 값을 입력받습니다.

cout << "Enter the matrix values: " << endl;

for (i = 1; i <= l; i++) {
  for (j = 1; j <= l; j++) {
    cin >> a[i][j];
  }
}

짝수 개수가 가장 많은 행 찾기

for 루프를 사용하여 행을 반복하고 짝수의 개수를 계산합니다. 현재 숫자가 짝수이면 count 변수를 증가시킵니다.

for (i = 1; i <= l; i++) {
  if (a[n][i] % 2 == 0) {
    count++;
  }
}

결과 출력

해당 행의 값과 짝수의 개수를 출력합니다.

cout << "\nRow is given below:\n";

for (i = 1; i <= l; i++) {
  cout << a[n][i] << " ";
}

cout << "\n\nNo. of even numbers in row is: " << count << endl;

프로그램 컴파일 및 실행

g++ 컴파일러를 사용하여 프로그램을 컴파일하고 터미널에서 실행합니다.

g++ main.cpp -o main
./main
전체 코드
#include<iostream>
using namespace std;

int main() {
  int a[10][10], n, l, i, j, count = 0;

  cout << "Enter matrix size(l * l): ";
  cin >> l;
  cout << "Enter row number of matrix: ";
  cin >> n;

  if (n < 0 || n > l) {
    cout << "Error: Row exceeds matrix size. Please enter a value > 0 and less than or equal to the size of matrix." << endl;
    exit(0);
  }

  cout << "Enter the matrix values: " << endl;

  for (i = 1; i <= l; i++) {
    for (j = 1; j <= l; j++) {
      cin >> a[i][j];
    }
  }

  for (i = 1; i <= l; i++) {
    if (a[n][i] % 2 == 0) {
      count++;
    }
  }

  cout << "\nRow is given below:\n";

  for (i = 1; i <= l; i++) {
    cout << a[n][i] << " ";
  }

  cout << "\n\nNo. of even numbers in row is: " << count << endl;

  return 0;
}

요약

이번 랩에서는 2 차원 배열에서 짝수가 가장 많은 행을 찾는 C++ 프로그램을 구현하는 방법을 배웠습니다. 변수를 설정하고 루프를 사용하여 배열을 반복함으로써 이를 달성했습니다. 조건문을 사용하여 프로그램의 결과를 출력했습니다.