파이썬

[파이썬] for문과 while문활용 별찍기

jackypark 2022. 7. 26. 11:24

1.

****
****
****
****

for문 버전

for i in range(4):
    for j in range(4):
        print('*',end='')
    print()

while문 버전

i=0
while i < 4:
    j=0
    while j<4:
        print('*',end='')
        j+=1
    print() 
    i+=1

2.

*
**
***

for문 버전

for i in range(1,4):
    for j in range(i):
        print('*',end='')
    print()

while문 버전

i=1
while i < 4:
    j=0
    while j<i:
        print('*',end='')
        j+=1
    print() 
    i+=1

3.

  *
 **
***

for문 버전

for i in range(3):
    for j in range(1,3-i):
        print(' ',end='')
    for j in range(0,i+1):
        print('*',end='')    
    print()

while문 버전

i=0
while i < 3:
    j=1
    while j<3-i:
        print(' ',end='')
        j+=1
    j=0
    while j<i+1:
        print('*',end='')
        j+=1    
    print() 
    i+=1

4.

  *
 ***
*****

for 문 버전

for i in range(1,4):
    for j in range(3,i,-1):
        print(' ',end='')
    for j in range(0,i*2-1):
        print('*',end='')    
    print()

while 문 버전

i=1
while i < 4:
    j=3
    while j>i:
        print(' ',end='')
        j-=1
    j=0
    while j<i*2-1:
        print('*',end='')
        j+=1    
    print() 
    i+=1

5.

  *
 ***
*****
 ***
  *

for문 버전

for i in range(1,4):
    for j in range(3,i,-1):
        print(' ',end='')
    for j in range(0,i*2-1):
        print('*',end='')    
    print()
for i in range(2,0,-1):
    for j in range(3,i,-1):
        print(' ',end='')
    for j in range(0,i*2-1):
        print('*',end='')    
    print()

while 문 버전

i=1
while i < 4:
    j=3
    while j>i:
        print(' ',end='')
        j-=1
    j=0
    while j<i*2-1:
        print('*',end='')
        j+=1    
    print() 
    i+=1
i=2
while i > 0:
    j=3
    while j>i:
        print(' ',end='')
        j-=1
    j=0
    while j<i*2-1:
        print('*',end='')
        j+=1    
    print() 
    i-=1

6번 홀수를 입력받아 다이아 몬드출력하기

for문 버전

odd=int(input('홀수 입력: '))
s=int(odd/2) ## 다이아몬드 중간부분

for i in range(odd):
    for j in range(odd-s):
        if j>=s:
            print('*',end='')
        else:
            print(' ',end='')
    if i<int(odd/2):
        s-=1
    else:
        s+=1
    print()

while문 버전

odd=int(input('홀수 입력: '))
s=int(odd/2) ## 다이아몬드 중간부분
i=0
while i < odd:
    j=0
    while j<odd-s:
        if j>=s:
            print('*',end='')
        else:
            print(' ',end='')
        j+=1
    if i<int(odd/2):
        s-=1
    else:
        s+=1
    print()
    i+=1

파이썬 2일 차.. 자바와 거의 비슷하지만 한두 가지 다른 것 때문에 머리에 혼동이 오는 중이다.. 자바 까먹진 않겠지?