티스토리 뷰
이제 if문에 익숙해지셨나요?
이번엔 조건을 여러 번 비교할 때 쓰는 다중 if문을 배워 보도록 하겠습니다
만약 놀이 공원의 입장료가 미취학 아동과 65세 이상인 분들 에게는 1000원 일반인 에게는 2000원을 받는 다 고하고 코딩을 해봅시다
이걸 코딩으로 구현해 봅시다
#include <stdio.h>
int main() {
int a=0;
scanf("%d",&a);
if(a<8){
printf("1000원");
}
else if(a>64){
printf("1000원");
}
else{
printf("2000원");
}
return 0;
}
많은 분들이 이런 방식으로 코딩을 했을 겁니다
하지만 이거보다 좀 더 간결하게 짤 수 있는 법이 존재하는데요
#include <stdio.h>
int main() {
int a=0;
scanf("%d",&a);
if(a<8||a>64){
printf("1000원");
}else{
printf("2000원");
}
return 0;
}
바로 ||(or연산자)를 사용하는 것입니다
뜻은 a <8과 a>64 둘 중의 하나만 참 이어도 if문은 참이 됩니다
즉 조건 2개 중 하나만 참 이어도 참이 되는 방식이죠
그럼 이번엔 필기 점수가 50점 이상 실기 점수가 60점 이상일 때 통과하도록 하는 프로그램을 코딩해 봅시다
#include <stdio.h>
int main() {
int a=0;
int b=0;
scanf("%d",&a);
scanf("%d",&b);
if(a>=50){
if(b>=60){
printf("통과");
}else{
printf("불통과");
}
}else{
printf("불통과");
}
return 0;
}
이것도 이런 방법으로 코딩을 할 수 있는데요
하지만 더 간단한 방법이 있습니다 이번엔 &&연산자인데요
이건 둘의 조건이 둘 다 참일 때 if문이 참이 되게 하는 방법입니다
#include <stdio.h>
int main() {
int a=0;
int b=0;
scanf("%d",&a);
scanf("%d",&b);
if(a>=50&&a>60){
printf("통과");
}else{
printf("불통과");
}
return 0;
}
&&(and 연산자)를 이용하여 코딩을 하시면 a가 50 이상일 때 와 b가 60 이상일 때 if문이 참이 되고 둘 중 하나만 거짓이어도 거짓됨으로 아까 전의 코드에 비해 매우 간결해진 것을 볼 수 있습니다
or은 또는 이라는 의미를 가지고 있습니다
즉 a 또는 b 가 참이면 참이 되는 연산자입니다
그의 반대로 and는 그리고 입니다
a 그리고 b모두가 참일 때 if문은 참이 됩니다
이해가 잘 안 가신다면 or연산자는 합집합의 개념과 and연산자는 교집합의 개념을 떠올리시면 될 거 같네요.
첨음에는 불편하실 수 도 있지만 많이 연습하시면 매우 편하게 코드를 짤 수 있습니다
'프로그래밍 > C언어 배우기' 카테고리의 다른 글
C언어 조건문 문제 코드업 1159 : 특별한 공 던지기 3(설명) (0) | 2020.11.19 |
---|---|
C언어 조건문 문제 코드업 1157 : 특별한 공 던지기 1(설명) (0) | 2020.11.15 |
C언어 조건문 문제 1154 : 큰수 - 작은수(설명) (0) | 2020.11.10 |
C언어 조건문 문제 코드업 1152 : 10보다 작은 수 (else 버전)(설명) (0) | 2020.11.09 |
C언어 배우기 -사용자로 부터 입력 받은 값의 범위 구하기(1) (2) | 2020.07.18 |
- Total
- Today
- Yesterday
- 프로그래밍입문
- C언어
- 온라인 프로그래밍
- 프로그래밍 입문
- include
- 사용법
- stdio.h
- 개발환경
- 온라인 코딩
- C언어 배우기
- C언어란?
- C언어기본
- 프로그래밍
- 출력함수
- printf
- repl.it 사용법
- Repl.it
- 개발
- 프로그래밍 추천
- 프로그래머
- 코딩
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |