[C언어 코드업 문제풀이] CodeUp 1283 : 주식 투자

코드업 1283번 주식 투자 문제 풀이 해답입니다.

 

1. 문제 설명

 

gbs라는 개미 투자자가 주식에 투자하려고 합니다.

이 사람이 투자한 돈의 액수와, 그 주식의 하루간의 변동을 퍼센트로 알 때, 이 사람의 순수익과 이득/손해 판단을 출력하세요.

 

2. 입력

 

첫째줄에 투자한 액수 a가 입력됩니다. (100 <= a <= 10,000)

둘째 줄에 투자 일 수 b가 입력됩니다.(1 <= b <= 10)

그 다음줄에 일별 변동폭인 데이터가 날짜 갯수(b개)만큼 퍼센트 정수로 입력됩니다. (변동폭는 음수도 될 수 있습니다.) ( 범위 -100 ~ +100)

 

3. 출력

 

이 사람의 순수익(=총 수익(최종 값) - 총 비용(투자한 액수))을 소수점 첫째 자리에서 반올림하여 첫째 줄에 출력한다.

그리고 다음 줄에 이 사람이 이득일 경우 "good", 본전일 경우 "same",  손해일 경우 "bad"를 출력하세요. 

물론, 단위가 '원'인데, 0.4원 손해나 0.4원 이득은 없겠죠? (0.5원이면 반올림해서 1입니다 ^^)

만약 0.5>순수익>-0.5이면 순수익은 0으로 봅니다.

 

4. 입력 예시

 

10000

4

10 -10 5 -5

 

5. 출력 예시

 

-125

bad

우선 첫날 10000원을 투자했습니다.

그리고 4일동안 기다렸습니다.

첫 날엔 10%가 올랐습니다. //11000원

둘째 날엔 10%가 내렸습니다. //9900원

셋째 날엔 5%가 올랐습니다. //10395원

넷째 날엔 5%가 내렸습니다. //9875.25원

첫 날 투자한 돈이 10000원인데, 9875.25원 남았으니  -124.75, 반올림해서 -125원. 즉, 손해입니다.

P.S.  반올림을 %.0f를 이용해서 했습니다.

 

6. 문제 풀이

 

#include<stdio.h>
 
int main() {
 
    float a;
    int b;
    
    scanf("%f"&a);
    int a2; 
    a2 = a;
    
    scanf("%d"&b);
    float rate;
    for (int i = 1; i <= b; i++) {
        scanf("%f"&rate);
        a = a + (a * rate * 0.01);
    
    }
    int sum; 
    if ((a - a2) > 0) { sum = a - a2 + 0.5; }
    else { sum = a - a2 - 0.5; }
 
    printf("%d\n", sum);
 
    if (sum > 0) { printf("good"); }
    else if (sum == 0) { printf("same"); }
    else { printf("bad"); }
 
 
 
 
    return 0;
}
 

 

   for (int i = 1; i <= b; i++) {

        scanf("%f"&rate);

        a = a + (a * rate * 0.01);

    }

 

를 이용하여 주식 투자한 결과 금액을 계산합니다.

 

   if ((a - a2) > 0) { sum = a - a2 + 0.5; }

    else { sum = a - a2 - 0.5; }

 

저는 형변환으로 정수형을 만들 것이기 때문에 양수에 +0.5 음수에 -0.5를 더해줍니다.

 

댓글()