Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++

C++에서 합이 0인 모든 삼중항 찾기

<시간/>

이 튜토리얼에서는 합이 주어진 숫자와 같은 배열에서 트리플렛을 찾는 프로그램을 작성할 것입니다.

문제를 해결하는 단계를 살펴보겠습니다.

  • 더미 데이터로 배열을 만듭니다.

  • 배열의 끝까지 반복하는 3개의 요소에 대해 3개의 내부 루프를 작성하십시오.

    • 세 가지 요소를 추가합니다.

    • 합계를 0과 비교합니다.

    • 둘 다 같으면 요소를 인쇄하고 루프를 끊습니다.

코드를 봅시다.

#include<bits/stdc++.h>
using namespace std;
void findTripletsWithSumZero(int arr[], int n){
   bool is_found = false;
   for (int i = 0; i < n-2; i++) {
      for (int j = i+1; j < n-1; j++) {
         for (int k = j+1; k < n; k++) {
            if (arr[i]+arr[j]+arr[k] == 0) {
               cout << arr[i] << " " << arr[j] << " " << arr[k] << endl;
               is_found = true;
            }
         }
      }
   }
   if (is_found == false) {
      cout << "Triplets doesn't exist"<<endl;
   }
}
int main() {
   int arr[] = {0, 1, -1, 2, 2, -4, 3, 4};
   findTripletsWithSumZero(arr, 8);
   return 0;
}

출력

위의 프로그램을 실행하면 다음과 같은 결과를 얻을 수 있습니다.

0 1 -1
0 -4 4
1 -4 3
2 2 -4

결론

튜토리얼에서 질문이 있는 경우 댓글 섹션에 언급하세요.