목차 : https://wondangcom.tistory.com/2797
토끼와 거북이의 미로 탈출
미로 속에서 토끼와 거북이가 만났습니다.
미로는 길이 좁았고 어떤 길이 나가는 출구인지 알수가 없었다.
미로의 문에는 AND,OR,NOT의 글자가 써 있었고 거기에는 각각마다 이렇게 적혀 있었다.
AND : 토끼와 거북이가 같이 문을 열어야 문이 열립니다.
OR : 토끼나 거북이 둘 중 하나라도 문을 열 수 있습니다.
NOT : 이 문은 열 수 없습니다.
이 글을 읽고 토끼와 거북이는 논리연산자를 적절히 사용하여 미로를 탈출 했습니다.
C언어
#include <stdio.h>
int main() {
int rabbit = 1; // 토끼의 상태 (1: 문을 열 수 있음, 0: 문을 열 수 없음)
int turtle = 1; // 거북이의 상태 (1: 문을 열 수 있음, 0: 문을 열 수 없음)
// AND 연산자: 둘 다 참일 때만 문을 열 수 있음
if (rabbit && turtle) {
printf("토끼와 거북이가 함께 문을 열어 미로를 탈출했습니다.\n");
} else {
printf("토끼와 거북이는 함께 문을 열지 못해 미로에 갇혔습니다.\n");
}
// OR 연산자: 둘 중 하나라도 참이면 문을 열 수 있음
if (rabbit || turtle) {
printf("토끼나 거북이 중 한 명이 문을 열어 미로를 탈출했습니다.\n");
} else {
printf("토끼와 거북이는 모두 문을 열지 못해 미로에 갇혔습니다.\n");
}
// NOT 연산자: 거꾸로 가보기
if (!rabbit) {
printf("토끼는 다른 길로 돌아가 미로를 탈출했습니다.\n");
} else {
printf("토끼는 막힌 길을 선택해 미로에 갇혔습니다.\n");
}
return 0;
}
C언어에서 AND(논리곱) 연산자는 && 입니다. &&는 둘 모두가 참일때 참이 됩니다.
OR(논리합) 연산자는 || 입니다. ||는 둘 중 하나만 참이어도 참이 됩니다.
NOT 연산자는 ! 입니다. !는 참이면 거짓,거짓이면 참이 되는 연산자입니다.
C++
#include <iostream>
int main() {
int rabbit = 1; // 토끼의 상태 (1: 문을 열 수 있음, 0: 문을 열 수 없음)
int turtle = 1; // 거북이의 상태 (1: 문을 열 수 있음, 0: 문을 열 수 없음)
// AND 연산자: 둘 다 참일 때만 문을 열 수 있음
if (rabbit && turtle) {
std::cout << "토끼와 거북이가 함께 문을 열어 미로를 탈출했습니다." << std::endl;
} else {
std::cout << "토끼와 거북이는 함께 문을 열지 못해 미로에 갇혔습니다." << std::endl;
}
// OR 연산자: 둘 중 하나라도 참이면 문을 열 수 있음
if (rabbit || turtle) {
std::cout << "토끼나 거북이 중 한 명이 문을 열어 미로를 탈출했습니다." << std::endl;
} else {
std::cout << "토끼와 거북이는 모두 문을 열지 못해 미로에 갇혔습니다." << std::endl;
}
// NOT 연산자: 거꾸로 가보기
if (!rabbit) {
std::cout << "토끼는 다른 길로 돌아가 미로를 탈출했습니다." << std::endl;
} else {
std::cout << "토끼는 막힌 길을 선택해 미로에 갇혔습니다." << std::endl;
}
return 0;
}
논리연산자는 C언어와 동일합니다.
JAVA
public class MazeEscape {
public static void main(String[] args) {
int rabbit = 1; // 토끼의 상태 (1: 문을 열 수 있음, 0: 문을 열 수 없음)
int turtle = 1; // 거북이의 상태 (1: 문을 열 수 있음, 0: 문을 열 수 없음)
// AND 연산자: 둘 다 참일 때만 문을 열 수 있음
if (rabbit == 1 && turtle == 1) {
System.out.println("토끼와 거북이가 함께 문을 열어 미로를 탈출했습니다.");
} else {
System.out.println("토끼와 거북이는 함께 문을 열지 못해 미로에 갇혔습니다.");
}
// OR 연산자: 둘 중 하나라도 참이면 문을 열 수 있음
if (rabbit == 1 || turtle == 1) {
System.out.println("토끼나 거북이 중 한 명이 문을 열어 미로를 탈출했습니다.");
} else {
System.out.println("토끼와 거북이는 모두 문을 열지 못해 미로에 갇혔습니다.");
}
// NOT 연산자: 거꾸로 가보기
if (rabbit != 1) {
System.out.println("토끼는 다른 길로 돌아가 미로를 탈출했습니다.");
} else {
System.out.println("토끼는 막힌 길을 선택해 미로에 갇혔습니다.");
}
}
}
논리연산자는 C언어와 동일합니다.
Python
def main():
rabbit = 1 # 토끼의 상태 (1: 문을 열 수 있음, 0: 문을 열 수 없음)
turtle = 1 # 거북이의 상태 (1: 문을 열 수 있음, 0: 문을 열 수 없음)
# AND 연산자: 둘 다 참일 때만 문을 열 수 있음
if rabbit and turtle:
print("토끼와 거북이가 함께 문을 열어 미로를 탈출했습니다.")
else:
print("토끼와 거북이는 함께 문을 열지 못해 미로에 갇혔습니다.")
# OR 연산자: 둘 중 하나라도 참이면 문을 열 수 있음
if rabbit or turtle:
print("토끼나 거북이 중 한 명이 문을 열어 미로를 탈출했습니다.")
else:
print("토끼와 거북이는 모두 문을 열지 못해 미로에 갇혔습니다.")
# NOT 연산자: 거꾸로 가보기
if not rabbit:
print("토끼는 다른 길로 돌아가 미로를 탈출했습니다.")
else:
print("토끼는 막힌 길을 선택해 미로에 갇혔습니다.")
if __name__ == "__main__":
main()
Python 에서 AND 연산자는 and, OR 연산자는 or, NOT 연산자는 not 을 사용하며 의미는 동일합니다.
논리연산자 요약
- AND 연산자(논리곱) : &&(c,c++,java) 또는 and(Python) 을 사용하며 둘 다 참일때 참이며 둘 중 하나라도 거짓이라면 거짓이 되는 연산자
- OR 연산자 (논리합): ||(c,c++,java) 또는 or(Python)을 사용하며 둘 중 하나라도 참이면 참이며 둘 모두 거짓일 때 거짓이 되는 연산자.
- NOT 연산자 : !(c,c++,java) 또는 not(Python)을 사용하며 참인 값이 들어오면 거짓, 거짓인 값이 들어오면 참으로 만드는 연산자.
인천 검단 원당컴퓨터 학원(T 032-565-5497)
#정보올림피아드
#검단신도시코딩
#원당동코딩
#마전동코딩
#왕길동코딩
#당하동코딩
#아라동코딩
#풍무동코딩
#불로동코딩
#검단동코딩
#검암동코딩
사업자 정보 표시
원당컴퓨터학원 | 기희경 | 인천 서구 당하동 1028-2 장원프라자 502호 | 사업자 등록번호 : 301-96-83080 | TEL : 032-565-5497 | Mail : icon001@naver.com | 통신판매신고번호 : 호 | 사이버몰의 이용약관 바로가기
'프로그래밍언어문법(C,C++,Python,JAVA)' 카테고리의 다른 글
4.2 마법의 성적표 (5) | 2024.07.17 |
---|---|
4.1 용과 마을의 보물 (4) | 2024.07.02 |
3.4 프로그래밍 왕국의 비교 연산자 (5) | 2024.06.11 |
3.3 프로그래밍 왕국의 증감 연산자 (5) | 2024.06.04 |
3.2 순순이와 복합 대입 연산자 (5) | 2024.05.29 |