개발자/C or C++
[백준] 10817번
728x90
반응형
문제
해결 방법
이 문제는 if문을 이용하여 하나씩 비교해가면서 푸는 방법이 있지만, 코드가 지저분해지는 것 같아, 저 같은 경우는 배열에 3개의 수를 입력 받아서 정렬하여 두번째 요소의 값을 출력하는 방식으로 구현하였습니다.
소스코드
#include <iostream>
using namespace std;
int main(){
int num[3];
int i,j;
for(i=0;i<3;i++)
cin>>num[i];
//배열을 정렬하는 반복문
int temp;
for(i=0;i<2;i++){
for(j=1;j<3;j++){
if(num[i]>num[j]){ //두 값을 비교해서 num[i]가 크면 num[i]와 num[j]의 값을 바꾼다.
//temp 값을 이용하여 값을 바꾼다.
temp=num[j];
num[j]=num[i];
num[i]=temp;
}
}
}
cout<<num[1]<<endl;
}
for문 안의 내용을 한 예로 들어 설명하자면 아래 그림과 같습니다.
혹시 다중 for문에 대해서 잘 모르신다면 검색을 통하여 다중 for문에 대해서 공부해보시기 바랍니다.
반응형
'개발자 > C or C++' 카테고리의 다른 글
백준 10950번 [C/C+] (0) | 2021.10.04 |
---|---|
[백준] 2739번 [C/C+] (0) | 2021.10.04 |
[백준] 2884번 (0) | 2021.10.04 |
[백준] 2753번 (0) | 2021.10.04 |
[백준] 9498번 (0) | 2021.10.03 |
댓글