인공지능을 위한 파이썬 (1)

2star_·2024년 10월 1일
0

Python

목록 보기
4/13

input() 함수

함수의 흐름

  1. 프롬프트(입력을 요청하는 문자열)를 출력
  2. 사용자로부터 입력을 받을 수 있게 일시 정지
  3. 입력을 받으면 계속 진행한다.

input() 함수 활용

print(input("입력해주세요: "))

i = input("입력해주세요: ")
print(i)

주의 : 항상 input()함수의 결과는 무조건 "문자열"이므로 자료형 변환이 필요하다!

반복문 For 문

반복 횟수가 명확하지 않을 때 주로 쓰는 While문
VS
반복 횟수가 명확할 때 주로 쓰는 For문

예제.1

5명에 대한 컴활 자격증 시험 점수가 리스트에 담겨있습니다.
이때 각 점수가 합격인지 불합격인지 판단하고, 앞에 학생 번호를 적어주세요
[score_list = [90, 45, 70, 60, 55]
1번 학생은 합격입니다.
2번 학생은 불합격입니다.
3번 학생은 합격입니다.
4번 학생은 합격입니다.
5번 학생은 불합격입니다.

score_list = [90, 45, 70, 60, 55]

for student in score_list:
	if student >=60:
    #처음에 여기 n=0 , n += 1 을 적고 난리났다...
    	print("학생은 합격입니다.")
    else:
    	print("학생은 불합격입니다.")

여기까지 처음에 작성을 했다.
n번 학생을 작성하기 위해서 위 코드의 if 문 다음에 n=0 , n +=1을 적어주니

score_list = [90, 45, 70, 60, 55]

for student in score_list:
	if student >=60:
    	n=0
        n += 1
        print(f"{n}번 학생은 합격입니다.")
    else:
        print(f"{n}번 학생은 불합격입니다.")

1번 학생은 합격입니다.
1번 학생은 불합격입니다.
1번 학생은 합격입니다.
1번 학생은 합격입니다.
1번 학생은 불합격입니다.

이런 식으로 번호는 추가되지 않았고 1번으로만 나옴을 확인했다.

그 후 변수 n을 for문 위에다가 작성

score_list = [90, 45, 70, 60, 55]
n = 0
for student in score_list:
    if student >=60: 
        n+=1
        print(f"{n}번 학생은 합격입니다.")
    else:
        print(f"{n}번 학생은 불합격입니다.")

1번 학생은 합격입니다.
1번 학생은 불합격입니다.
2번 학생은 합격입니다.
3번 학생은 합격입니다.
3번 학생은 불합격입니다.

n의 수가 증가하긴 시작했으나, 뭔가 이상하다.
for 반복문의 특성상 True 값이 나와야 (n += 1)이 작동됨을 깨닫고 if문 위에다가 변수 설정을 했다.

score_list = [90, 45, 70, 60, 55]
n = 0
for student in score_list:
    n += 1
    if student >=60: 
        print(f"{n}번 학생은 합격입니다.")
    else:
        print(f"{n}번 학생은 불합격입니다.")
        
        
        
score_list = [90, 45, 70, 60, 55]
n = 1 # if 문 끝에 n+=1 적으려면 1부터 시작해야 함.
for student in score_list:
    if student >=60: 
        print(f"{n}번 학생은 합격입니다.")
    else:
        print(f"{n}번 학생은 불합격입니다.")
    n += 1 #이런 식으로도 가능 if 문 끝에 n+=1 적기!

1번 학생은 합격입니다.
2번 학생은 불합격입니다.
3번 학생은 합격입니다.
4번 학생은 합격입니다.
5번 학생은 불합격입니다.

간단한 문제를 풀며 틀릴 수 있는 부분을 다 틀려본 것 같고 혼자 수정해 답안 도출하는 과정이 재밌었다.

참고

score_list = [90, 45, 70, 60, 55]
n = 1
for student in score_list:
    if student >=60: 
        result = "합격"
    else:
        result = "불합격"
    print(f"{n}번 학생은 {result}입니다.")
    n += 1

이런 식으로 print문을 한 번만 사용해서 결과를 도출 할 수도 있다.

반복문 while 문 예제

예제1. 두개의 정수를 입력 받아서 더하는 코드를 작성하시오.
(단, 두개의 정수가 0이 들어올 때 까지 반복한다.)

while True:
    num1 = int(input("첫 번째 정수 입력 >> "))
    num2 = int(input("첫 번째 정수 입력 >> "))
    
    if num1 == 0 and num2 == 0:
        break
    
    print(f"두 수의 합 : {num1 + num2}")
print("프로그램이 종료되었습니다.")

출처 : 인쌤TV 예제 문제        
profile
안녕하세요.

0개의 댓글

관련 채용 정보