[C언어 코드업 문제풀이] CodeUp 1563 : [기초-함수작성] 함수로 세 정수 중 중간 값 리턴하기

코드업 1563번 함수로 세 정수 중 중간 값 리턴하기 문제 풀이 해답입니다.

 

1. 문제 설명

 

int 형 정수 세 개를 입력 받아
중간 값을 출력하시오.

단, 함수형 문제이므로 함수 mid()만 작성하여 제출하시오.


[함수형 문제란??]
함수형 문제는 기본적인 main() 등은 미리 작성되어 있습니다.
미리 작성되어 있는 프로그램은 다음과 같습니다.

미리 작성된 프로그램을 복사해 붙여 넣은 후 함수 부분을 설계하여 작성해 넣고,
테스트 한 후, 함수 부분만 제출하세요.

 

1
2
3
4
5
6
7
8
9
10
11
12
13
#include <stdio.h>
 
int n, m, x;
 
int max(int p, int q){ return p>=q?p:q;}
 
int min(int p, int q){ return p<q?p:q;}
// 이 부분에 들어가야 될 코드를 작성하여 제출
int main()
{
  scanf("%d%d%d"&n, &m, &x);
  printf("%d\n", mid(n, m, x));
}

 

2. 입력

 

세 개의 int 형 정수(n, m, x)가 공백을 두고 입력된다.

 

3. 출력

 

세 수 중 중간 값을 출력한다.

 

4. 입력 예시

 

2147483646 2147483647 2147483647

 

5. 출력 예시

 

2147483647

 

6. 문제 풀이

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <stdio.h>
 
int n, m, x;
 
int max(int p, int q){ return p>=q?p:q;}
 
int min(int p, int q){ return p<q?p:q;}
int mid(int n, int m, int x) {
    return n + m + x - max(max(n, m), x) - min(min(n, m), x);
}
 
int main()
{
  scanf("%d%d%d"&n, &m, &x);
  printf("%d\n", mid(n, m, x));
}
 

댓글()