| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
- 소켓 통신
- c언어
- 강의
- 충남 천안
- 파이썬
- 동영상 강의
- 실습
- 산책하기 좋은 곳
- 무료 동영상 강의
- 표준 입출력
- 유튜브 동영상 강의
- 네트워크 프로그래밍
- 동영상
- 추천
- 원격 제어 프로그램
- 언제나 휴일
- 독립기념관
- 캡슐화
- 언제나휴일
- 실습으로 다지는 c#
- 소스 코드
- 알고리즘
- 표준 라이브러리 함수
- c#
- 안드로이드 앱 개발
- 프로젝트
- Windows Forms
- 클래스 다이어그램
- C++
- 졸업 작품 소재
- Today
- Total
프로그래밍 언어 및 기술 [언제나휴일]
논리와 제어문(조건문, 반복문) 본문
논리 형식 bool
파이썬에서는 True와 False를 값으로 갖는 bool 형식을 제공하고 있어요.
[In]
print(type(True))
print(type(False))
[Out]
<class 'bool'>
<class 'bool'>
논리 연산
연산 결과가 bool 형식인 논리 연산은 and, or, not을 제공합니다.
and 연산은 이항 연산자로 둘 다 참일 때만 연산 결과가 참입니다.
[In]
print(f"False and False = {False and False}")
print(f"False and True = {False and True}")
print(f"True and False = {True and False}")
print(f"True and True = {True and True}")
[Out]
False and False = False
False and True = False
True and False = False
True and True = True
or 연산은 둘 중 하나라도 참일 때 연산 결과가 참입니다.
[In]
print(f"False or False = {False or False}")
print(f"False or True = {False or True}")
print(f"True or False = {True or False}")
print(f"True or True = {True or True}")
[Out]
False or False = False
False or True = True
True or False = True
True or True = True
부정 연산자 not은 단항 연산자입니다.
피연산자가 True일 때는 연산 결과가 False입니다.
피연산자가 False일 때는 연산 결과가 True입니다.
[In]
print(f"not True = {not True}")
print(f"not False = {not False}")
[Out]
not True = False
not False = True
비교 연산
비교 연산에는 같음(==), 다름(!=), 크다(>), 크거나 같다(>=), 작다(<), 작거나 같다<=) 연산을 제공합니다.
다음은 입력받은 정수가 짝수인지 판별하는 코드입니다.
[In]
i = int(input("정수:"))
i%2 == 0
[Out]
정수:11
False
다음은 입력받은 정수가 홀수인지 판별하는 코드입니다.
[In]
i = int(input("정수:"))
i%2 != 0
[Out]
정수:11
True
다음은 두 개의 정수를 입력받아 크기를 비교하는 코드입니다.
[In]
num1 = int(input("정수:"))
num2 = int(input("정수:"))
num1<num2, num1<=num2, num1>num2, num1>=num2
[Out]
정수:2
정수:3
(True, True, False, False)
if 문
if문은 조건이 참일 때 수행하는 구문을 지정할 수 있어요.
파이썬에서는 조건문, 제어문, 함수에 속하는 구문을 지정할 때 들여쓰기를 지정합니다.
if 조건 표현:
참일 때 수행할 표현
다음은 점수를 입력받은 후에 점수 범위를 벗어나지 않을 때 점수를 출력하는 코드입니다.
[In]
score = int(input("국어 점수:"))
if 0<=score<=100: #if 조건:
print(f"입력한 점수는 {score}입니다.")
[Out 1]
국어 점수:102
[Out 2]
국어 점수:90
입력한 점수는 90입니다.
if 조건이 참일 때 수행할 구문은 들여쓰기를 지정하여 표현합니다.
만약 들여쓰기를 하지 않으면 if문은 끝난 것으로 간주합니다.
다음은 이를 테스트하는 코드입니다.
[In]
score = int(input("국어 점수:"))
if 0<=score<=100: #if 조건:
print(f"입력한 점수는 {score}입니다.")
print("테스트")
print("테스트2")
[Out 1]
국어 점수:102
테스트2
[Out 2]
국어 점수:90
입력한 점수는 90입니다.
테스트
테스트2
if else문
조건이 참일 때와 거짓일 때 수행하는 구문을 지정하려면 if else를 사용하세요.
if 조건 표현:
참일 때 수행할 표현
else:
거짓일 때 수행할 표현
다음은 점수를 입력받은 후에 점수 범위를 벗어나지 않을 때 점수를 출력하고 벗어났을 때 이를 통보하는 코드입니다.
[In]
score = int(input("국어 점수:"))
if 0<=score<=100: #if 조건:
print(f"입력한 점수는 {score}입니다.")
else:
print("범위를 벗어난 점수를 입력하였습니다.")
[Out 1]
국어 점수:102
범위를 벗어난 점수를 입력하였습니다.
[Out 2]
국어 점수:90
입력한 점수는 90입니다.
if elif else
여러 개의 조건에 따라 표현할 때는 if elif else를 사용하세요.
if 조건 표현 A:
A 조건이 참일 때 수행할 표현
elif 조건 B:
B 조건이 참일 때 수행할 표현(A조건은 거짓)
...
else:
모든 조건이 거짓일 때 수행할 표현
다음은 점수에 따라 A, B, C, D, F 학점을 부여하는 코드입니다.
[In]
score = int(input("국어 점수:"))
if 0<=score<=100: #if 조건:
print(f"입력한 점수는 {score}입니다.")
if score>=90:
print("A")
elif score>=80:
print("B")
elif score>=70:
print("C")
elif score>=60:
print("D")
else:
print("F")
else:
print("범위를 벗어난 점수를 입력하였습니다.")
[Out 1]
국어 점수:102
범위를 벗어난 점수를 입력하였습니다.
[Out 2]
국어 점수:90
입력한 점수는 90입니다.
A
[Out 2]
국어 점수:78
입력한 점수는 78입니다.
C
[Out 3]
국어 점수:40
입력한 점수는 40입니다.
F
while
while문은 조건이 참일 때 반복 수행하는 구문입니다.
while 조건 표현:
참일 때 수행할 표현 (반복 수행할 구문)
다음은 1부터 10까지 정수의 합계를 구하는 논리 전개입니다.
합계(sum)를 0으로 초기화
i를 0으로 초기화
반복 i가 10보다 작거나 같다면
합계에 i를 더하라
i를 1증가하라
결과를 확인
이를 코드로 표현하면 다음처럼 구현할 수 있어요.
[In]
#1부터 10까지 정수의 합계를 구하자.
sum = 0 #sum를 0으로 초기화
i = 1 #i를 1로 초기화
while i<=10: #반복 i가 10보다 작거나 같다면
sum += i #sum 에 i를 더하여라
i += 1#i를 1증가
print("1부터 10까지 정수의 합계:",sum)#결과를 확인
[Out]
1부터 10까지 정수의 합계: 55
만약 사용자가 입력한 정수의 합계를 구한다면 다음과 같은 논리 전개를 할 수 있어요.
합계(sum)를 0으로 초기화
number를 0으로 초기화
반복 number가 음수가 아니라면
합계에 number를 더하라
number := 사용자로부터 정수를 입력받는다
결과를 확인
이를 코드로 표현하면 다음과 같습니다.
[In]
#사용자가 입력한 정수의 합계를 구하라.
#사용자가 음수를 입력하면 멈춘다.
sum = 0 #sum 를 0으로 초기화
number = 0 #number를 0으로 초기화
while number>=0:#반복 number가 음수가 아니라면
sum += number #sum에 number를 더하다.
number = int(input("정수: "))#number = 사용자로부터 정수를 입력받는다.
print("결과: ",sum)#결과를 확인
[Out]
정수: 3
정수: 6
정수: 9
정수: 2
정수: -1
결과: 20
for
for 문은 컬렉션에 있는 요소에 대하여 반복 작업을 수행할 때 사용하는 표현입니다.
for 변수 in 컬렉션:
반복 수행할 구문
컬렉션은 다음 강의부터 소개할 거예요.
여기에서는 간단하게 while문과 for문을 비교해 볼게요.
다음은 while문을 이용하여 1부터 9까지 출력하는 표현입니다.
[In]
i=0
while i<10:
print(i,end=' ') #i를 출력 (개행 대신 공백을 출력)
i+=1
[Out]
0 1 2 3 4 5 6 7 8 9
다음은 for문을 이용하여 1부터 9까지 출력하는 표현입니다.
range는 특정 구간의 순차적인 수로 구성하는 간단한 컬렉션입니다.
range([start,]stop[,step])은 start에서 (stop-1)까지 step 간격의 시퀀스입니다.
[In]
for i in range(0,10):
print(i,end=' ')
[Out]
0 1 2 3 4 5 6 7 8 9 '언휴의 인공지능 프로그래밍 랩 > 파이썬' 카테고리의 다른 글
| 기본 입출력(input, print) 및 포멧 (0) | 2026.07.05 |
|---|---|
| 파이썬 소개 및 자료형(숫자와 문자열) (0) | 2026.07.04 |
