연령별 버스 요금 계산 문제에서 범위에 따른 결과 차이



저는 65세를 기준으로 제어문을 만들어 보았습니다。 다만 어린이 요금 부분에 (4<= age <= 13과(age <=13)사이에 결과값에 차이가 생기는데 왜 차이가 생기는지 궁금해요
답변 2
0
4 <= age <= 13 같은 코드는 논리적으로 잘못된 코드 입니다. 적어도 4 <= age && age <= 13 같은 형식으로 바꿔야 합니다. 그리고 조건식의 구조도 다시 생각해보시기를 권합니다. 할 수 있습니다. 😄
0
안녕하세요, 인프런 AI 인턴입니다. 주헌님,
주헌님께서 제공하신 정보 및 스크린샷을 기반으로 연령별 버스 요금 계산 문제에서 어린이 요금 조건이 4 <= age <= 13과 (age <= 13) 사이에 결과값에 차이가 생기는 이유에 대해 궁금해 하시는 것으로 보입니다. 이는 C 언어의 조건문 내에서 연령 범위 설정의 미묘한 차이에서 비롯된 문제입니다.
이와 유사한, if문 중첩이나 조건문 범위 설정에 관한 질문은 다음의 링크에서 해결책을 찾을 수 있습니다:
위 링크에서는 연령별 요금 계산과 관련한 다른 조건이지만, 중첩 if문과 조건 범위의 설정 방법에 대한 지식공유자의 답변이 포함되어 있습니다. 조건문의 올바른 구성 방법과 실행 결과의 차이에 대한 이해를 돕는데 도움이 될 수 있습니다.
또한, 정확한 결과값을 얻기 위해 조건문을 어떻게 설정해야 하는지, 특히 주헌님의 경우처럼 나이에 따라 요금을 구분할 때 범위를 정확히 설정하는 방법이 중요합니다. 4 <= age <= 13은 4세 이상 13세 이하인 경우를 의미하고, (age <= 13)만 사용하는 경우에는 13세 이하를 의미하지만 4세 미만의 구체적 한계를 설정하지 않는 것입니다. 따라서, 두 조건 사이에 결과값 차이가 발생하는 이유는 상세한 조건 부재 때문입니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
scanf("%d\n") 의미
0
20
1
주소 연산자(&) 간접 지정자(*) 반대 개념
0
33
1
Virtual Memory, Memory, Memory mapping tables
0
51
1
샘플코드 출력 오류 발생 질문드립니다
0
63
2
값의 교환에 사용되는 변수의 위치.
0
88
2
메모리 비교에 관한 질문
0
81
2
문자열 Null
0
63
1
C, C++
0
88
2
문자열 입출력 코드 에러
0
60
2
선생님! 120화 2분 50초 질문입니다.
0
67
1
caller 가 메모리 할당 해제를 할 때의 문제점 질문
0
64
2
단축키 맞는지 여부 문의드립니다.
0
61
2
문자열을 사용하는 이중 포인터에 대하여 질문합니다
0
66
1
char 포인터 변수의 크기에 대하여 제가 이해한 것이 맞을까요
0
78
2
용어 설명 필요
0
57
2
stdin, stdout
0
71
2
필수 실습 (최댓값을 반환하는 함수)
0
93
2
아......ㅠㅠ
0
100
2
버퍼 내 엔터
0
73
1
2진수 뺄셈에서 carry-out
0
112
2
union 식별자는 실무에서 보통 어디에서 사용하나요?
0
80
2
필수실습문제 공부법 (진도 vs 복습)
0
104
2
예제파일 다운로드
0
79
2
Visial Studio Code 를 설치해서 사용해도 수업을 따라가는데 지장이 있나요?
0
120
3







어린이 요금과 청소년 요금이 0으로 나오는 이유도 궁금합니다