[C언어 코드업 문제풀이] CodeUp 1205 : 최댓값

코드업 1205 최댓값 문제 풀이 해답입니다.

 

1. 문제 설명

 

두 실수 a, b가 입력되면 그 두수를 더하거나 빼거나 곱하거나 나누거나 제곱을 해서 가장 큰 수를 출력하시오.

예를 들어 1과 2가 입력되면,

1+2 = 3   , 2+1 = 3

1 - 2 = -1,   2 - 1 = 1

1 * 2 = 2,    2 * 1 = 2

1 / 2 = 0.5,   2 / 1 = 2

1^2=1 ,   2^1 = 2

따라서 최댓값은 3이다.

 

2. 입력

 

실수 a, b가 입력된다. ( a와 b의 계산결과는 모두 int범위 이내이고, 계산이 불가능한 경우는 입력되지 않는다.)

 

3. 출력

 

최댓값을 소수점이하 6자리로 출력한다.

 

4. 입력 예시

 

1 2

 

5. 출력 예시

 

3.000000

 

6. 문제 풀이

 

#include <stdio.h>
#include <math.h>
 
int main (void)
{
    
    int num1, num2;
    float temp;
    scanf("%d %d",&num1, &num2);
    
    temp = num1 + num2;
    
    if(num1 - num2 > temp){temp = num1 - num2;}
    if(num2 - num1 > temp){temp = num2 - num1;}
    
    if(num1 * num2 > temp){temp = num1 * num2;}
    
    if((float)(num1 / num2) > temp){temp = (float)(num1 / num2);}
    if((float)(num2 / num1) > temp){temp = (float)(num2 / num1);}
    
    if(pow(num1,num2)> temp){temp = pow(num1,num2);}
    if(pow(num2,num1)> temp){temp = pow(num2,num1);}
    //pow(a,b) a의 b승
 
    printf("%.06f",temp);
    return 0;
}
 

 

첫 번째로 두 값을 더한 값을 temp에 저장한후

차례대로 연산하며 기존 temp보다 클 경우 temp를 갱신시켜주고 마지막에는 가장 큰값이 출력되게 됩니다.

댓글()