이 문제에서는 4개의 정수가 제공됩니다. 우리의 임무는 C++에서 조건부 궤도 연산자를 사용하지 않고 최대 4개의 숫자를 찾는 프로그램을 만드는 것입니다.
코드 설명 − 여기에 4개의 정수 값이 있습니다. 그리고 조건부 또는 비트 연산자를 사용하지 않고 이 숫자에서 최대값을 찾아야 합니다.
문제를 이해하기 위해 예를 들어보겠습니다.
입력
a = 4, b = 7, c = 1, d = 9
출력
9
솔루션 접근 방식
문제를 해결하기 위해 먼저 두 개의 요소를 취한 다음 쌍으로 더 큰 요소를 취합니다. 각 쌍에 대해 2개의 요소 arr[]를 만들고 부울 값을 사용하여 더 큰 요소를 찾습니다. 부울 값은 [abs(x - y) + (x - y)] 공식을 사용하여 찾은 인덱스로 사용됩니다. .
쉬운 설명은
arr[0]이 arr[1]보다 크면 부울 값은 False입니다. . 그렇지 않으면 참입니다. .
우리 솔루션의 작동을 설명하는 프로그램
예시
#include <iostream> using namespace std; int findMax(int x, int y){ int arr[2] = {x,y}; bool MaxIndex = ( !(arr[0] - arr[1] + abs(arr[0] - arr[1]))); return arr[MaxIndex]; } int CalcMaxElement(int a, int b, int c, int d) { int max = a; max = findMax(max, b); max = findMax(max, c); max = findMax(max, d); return max; } int main() { int a = 4, b = 9, c = 7, d = 1; cout<<"The maximum of four numbers is "<<CalcMaxElement(a,b,c,d); return 0; }
출력
The maximum of four numbers is 9