1. 출력을 안하게
a = 2
while a <= 9:
print()
print(f"{a}단을 출력해보자")
b = 1
while b <= 9:
result = a * b
if a != 6 and a != 7: # a가 (6이 아니거나 + 7이 아닌경우)를 출력하겠다
# if not (a == 6 or a == 7): # a가 (6이거나 7이) '아닌'경우를 출력하겠다
print(f"{a} X {b} = {result}")
b = b + 1
a = a + 1
## 사실은 출력만을 막은거지, 연산은 돌아간거지. 연산자체를 안하는 방법은 없을까?
2. 연산을 안하게
a = 2
while a <= 9:
b = 1
while b <= 9:
if a == 6 or a == 7:
break # 안쪽 while문을 탈출해서 a = a + 1로 넘어가는거임
result = a * b
print(f"{a} X {b} = {result}")
b = b + 1
a = a + 1
## 처음부터 while문 자체를 만나지 않는건??
3. while안만나게
a = 2
while a <= 9:
print()
print(f"{a}단을 출력해보자")
b = 1
if not(a == 6 or a == 7):
while b <= 9:
result = a * b
print(f"{a} X {b} = {result}")
b = b + 1
a = a + 1
a = 2
while a <= 9:
print()
print(f"{a}단을 출력해보자")
if a == 6 or a == 7:
a = a + 1 # 이게 continue 밑에 있으면 '6단을 출력해보자'가 무한루프로 돌아감.
왜? 6만나면 계속 continue걸리니까!!!!
continue # a가 6이면 a+1이 실행되어 7이되고 continue, 그 밑으로 넘어가지 않는다.
7도 8이되어 continue. 8이면 밑으로 내려가겠지?
b = 1
while b <= 9:
result = a * b
print(f"{a} X {b} = {result}")
b = b + 1
a = a + 1
# 연습01. continue이용
print("--------연습01---------")
x = 2
while x <= 9:
y = 1
while y <= 9:
if y == 6 or y == 7:
y = y + 1
continue
result = x * y
print(f"{x} X {y} = {result}")
y = y + 1
x = x + 1
## y값이 변하는게 지금 먼저오면안돼
## 지금 내가쓴건 2단에서 x6, x7 / 3단에서 x6, x7을 안하겠다는 뜻임
# 연습02. continue이용 -2
print("--------연습02---------")
x = 2 # x단
while x <= 9:
if x == 6 or x == 7:
x = x + 1
continue
y = 1
while y <= 9:
result = x * y
print(f"{x} X {y} = {result}")
y = y + 1
x = x + 1
# 연습03. break이용
print("--------연습03---------")
x = 2
while x<= 9:
if x == 6 or x == 7:
x = x + 1
break
y = 1
while y <= 9:
result = x * y
print(f"{x} X {y} = {result}")
y = y + 1
x = x + 1
## 이렇게하면 6단을 만나면 break걸려서 밑에 모든게 안나옴.
# 연습04. break이용 -2
print("--------연습04---------")
x = 2
while x<= 9:
y = 1
while y <= 9:
if x == 6 or x == 7:
break
result = x * y
print(f"{x} X {y} = {result}")
y = y + 1
x = x + 1
## break는 바로앞에있는 while문을 빠져나가는것.
## 지금 while이 2개지? 가장 가까운걸 빠져나가서 더 큰 while을 다시 도는거야!!!
'Python > Practice' 카테고리의 다른 글
Q. 1+(1+2)+(1+2+3)+(1+2+3+4)+...+(1+2+3+...+10)의 결과를 계산하시오 (0) | 2023.08.25 |
---|---|
Q. 1+(-2)+3+(-4)+... 과 같은 식으로 계속 더해나갔을 때, 몇까지 더해야 총합이 100이상이 되는지 구하시오 -2 (0) | 2023.08.25 |
Q. 구구단 출력 -2 (0) | 2023.08.25 |
Q. 1+(1+2)+(1+2+3)+(1+2+3+4)+...+(1+2+3+...+10)의 결과를 계산하시오 (0) | 2023.08.24 |
Q. 1+(-2)+3+(-4)+... 과 같은 식으로 계속 더해나갔을 때, 몇까지 더해야 총합이 100이상이 되는지 구하시오. (0) | 2023.08.24 |