훈, IT 공부/C,C++,MFC

[실습코딩] 나이에 따른 분류 및 요금계산 ( 2분할 방식, 단계별 분류)

IT훈이 2017. 12. 25.
반응형

독하게 시작하는 C프로그래밍

실습하기

2분할 방식을 사용한 IF문 사용하기


조건 

0 ~ 3살은 할인율 100%

4 ~ 13살은 할인율 50%

14  ~ 19살은 할인율 25%

20살 이상은 할인율 0%



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#include<stdio.h>
 
int main(void){
 
    // 버스요금 1000원 
 
    //if else 문을 이용하여 두번 중첩하여 2분할 방식으로 분류하여 구현
 
    //  0~3 할인율 100%
    //  4~13 할인율 50%
    //  14~19 할인율 25%
    //  20~이상 할인율 0%
 
    double p_bus = 1000.0// 버스요금
    int in_user = 0// 유저가 입력하는 값
    int p_data = 0;
 
    printf("나이 입력:");
    scanf("%d"&in_user); // 유저가 나이입력
 
    if (in_user < 14){    // 13살이하일 경우 포함됨
        if (in_user < 4){
            p_data = p_bus - p_bus*1;
        }
        else{
            p_data = p_bus - p_bus*0.5// 50퍼센트 할인된 금액
        }
    }
    else{        // 14살 이상일경우 포함됨
        if (in_user < 20){ // 19세 이하일 경우
            p_data = p_bus - p_bus*0.25;    // 19세 이하라면 25퍼센트 할인
        }
        else{
            p_data = p_bus;    // 20세 이상이라면 요금 그대로
        }
    }
 
    printf("지불하실 버스요금은 %d원 \n", (int)p_data);
    
    return 0;
}
cs




단계별 분류에 따른 버스요금 계산법

조건 

0 ~ 3세 할인율 100%

4 ~ 13세 할인율 50%

14  ~ 19세 할인율 25%

20세 이상은 할인율 0%

60세 이상은 할인율 100%



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#include <stdio.h>
 
int main(void){
 
    // 단계별 분류에 따른 버스요금 계산
 
    int in_user = 0;    // 유저가 입력하는 나이
    double p_bus = 1000.0// 버스요금
    int p_data = 0// 결과값 저장
 
    printf("나이 입력 : ");
    scanf("%d"&in_user);
 
    if (in_user > 64){    // 65세 이상일 경우
        p_data = p_bus - p_bus * 1;
    }
    else if (in_user > 19){    // 20 ~ 64세 범위
        p_data = p_bus - p_bus * 0;
    }
    else if (in_user > 13){     // 14~19세 범위
        p_data = p_bus - p_bus * 0.25;
    }
    else if (in_user > 3){    // 4 ~ 13세 범위
        p_data = p_bus - p_bus *0.5;
    }
    else if (in_user >= 0){ // 0 ~ 3세 범위
        p_data = p_bus - p_bus * 1;
    }
 
    printf("버스요금 : %d\n",(int)p_data);
    return 0;
}
cs




반응형

댓글