#include <iostream>
using namespace std;
int main()
{
int a, b, c, temp;
cin >> a >> b >> c;
if (a >= b)
{
temp = b;
b = a;
a = temp;
}
if (b >= c)
{
temp = c;
c = b;
b = temp;
}
if (a >= b)
{
temp = b;
b = a;
a = temp;
}
cout << a << b << c << endl;
return 0;
}
이 문제를 처음 본 순간 든 생각은 temp라는 변수를 지정해줘서 하는 알고리즘을 생각해냈습니다. 예전 강의에서 들은 적이 있던 내용이라 처음에 접근하기는 쉬웠습니다.
하지만 어떻게 오름차순을 해야하는지 막막해서 결국 구글링을 통해 다른 블로그를 참고했는데요.이런식으로 했습니다. temp라는 변수를 지정해준 다음 만약 a>=b이면 순서를 바꿔주고 b>=c이면 순서를 바꾸어주었습니다.
다시 a>=b의 순서를 바꾸어주는 이유는 만약 2번째까지 진행되었다면 a와 b가 이미 순서가 바뀌어져있기 때문입니다. 그 상태에서 a>=b를 다시한번 분석해서 미처 바뀌지 못한 처음 입력한 a와 c의 값을 비교해주는 것입니다.
이 과정을 다 마친다면 정상적으로 출력이 되는 것을 볼 수 있습니다.
Chat gpt 결과
--추후입력--
'IT 프로그래밍 > C++' 카테고리의 다른 글
[C++] 두 날짜 간의 어느 것이 더 이른지 비교하는 프로그램 작성 (0) | 2024.03.09 |
---|---|
MAX MIN을 이용한 양의 정수 n개 배열 최대 최소 C++ (0) | 2024.03.09 |
[C++] 피보나치 수열 초보자용 만들기 (0) | 2024.03.08 |
[2.9] 심볼릭 상수 (0) | 2024.03.07 |
[따배시 2.7] char type (0) | 2024.03.07 |