Computer >> 컴퓨터 >  >> 프로그래밍 >> C++

C++ 프로그램에서 한 배열의 모든 요소를 다른 배열 요소로 나누는 방법

이 튜토리얼에서는 한 배열의 각 요소를 다른 배열 요소들의 곱으로 나누는 프로그램을 작성해 보겠습니다.

여기서는 문제를 해결하기 위한 간단한 방법을 사용합니다. 문제 해결 과정을 단계별로 살펴보겠습니다.

  • 두 개의 배열을 초기화합니다.

  • 두 번째 배열을 순회하면서 모든 요소의 곱을 계산합니다. 이때 값이 0인 요소는 건너뛰어 0으로 나누는 오류를 방지합니다.

  • 첫 번째 배열을 순회하면서 각 요소를 두 번째 배열 요소들의 곱으로 나눈 결과를 출력합니다.

예제

전체 코드를 확인해 보겠습니다.

#include <bits/stdc++.h>
using namespace std;
void divideArrOneWithTwo(int arr_one[], int arr_two[], int n, int m) {
    int arr_two_elements_product = 1;
    for (int i = 0; i < m; i++) {
        if (arr_two[i] != 0) {
            arr_two_elements_product = arr_two_elements_product * arr_two[i];
        }
    }
    for (int i = 0; i < n; i++) {
        cout << floor(arr_one[i] / arr_two_elements_product) << " ";
    }
    cout << endl;
}
int main() {
    int arr_one[] = {32, 22, 4, 55, 6}, arr_two[] = {1, 2, 3};
    divideArrOneWithTwo(arr_one, arr_two, 5, 3);
    return 0;
}

출력 결과

위 코드를 실행하면 다음과 같은 결과가 출력됩니다.

5 3 0 9 1

동작 원리

위 예제에서 두 번째 배열 {1, 2, 3}의 모든 요소를 곱하면 6이 됩니다. 이후 첫 번째 배열 {32, 22, 4, 55, 6}의 각 요소를 6으로 나누면 5, 3, 0, 9, 1이 됩니다. 정수형 변수끼리 나눗셈이 수행되므로 소수점 이하는 자동으로 버려집니다.

마무리

이 튜토리얼에 대해 궁금한 점이 있다면 댓글로 남겨 주세요.