TeamH4C_ProjectH4C/프로그래밍 언어

[TeamH4C_CodeUp] 기초 100제_실행구조

P4P3R_H 2021. 2. 6. 18:17

안녕하세요! Hak2입니다.

이번에는 선택 실행구조와 반복 실행구조에 대한 문제들을 풀어보겠습니다. 문제가 길어 문제들의 화질이 떨어지는 점 양해 바랍니다ㅜㅜ

문제들은 codeup.kr/problemsetsol.php?psid=23에서 볼 수 있습니다.

 

정수 3개를 입력받아 리스트 형식으로 저장시킨 후, 표현식을 통해 짝수만 출력될 수 있도록 조건을 만들었습니다.

그리고, 짝수만을 걸러낸 리스트를 언패킹 과정을 통해 출력할 수 있었습니다.

 

짝수와 홀수를 문자로 치환하여 출력하는 문제입니다.

저는 이 문제는 람다 표현식을 활용하여 풀어봤는데 a리스트에 입력된 정수들을 비교하여 짝수이면 'even' 홀수이면 'odd'로 바꾸어 출력하도록 하였습니다.

 

입력받은 값에 따라 출력하는 값을 다르게 하게 하기 위해 조건문을 사용할 수 있습니다.

리스트의 요소들을 for 반복문을 통해 하나씩 꺼내어 양수와 음수를 비교하여 다른 결과를 출력합니다.

 

정수 하나를 입력받아 특정 조건이 되면 특정 값을 출력하는 문제로 삼항 연산을 활용할 수 있습니다.

if와 else 사이에 조건을 작성하고 왼쪽에는 참일 때 결과, 오른쪽은 거짓일 때의 결과를 써넣어 연산을 할 수 있습니다.

 

파이썬에서는 switch문이 존재하지 않습니다. 그렇기에 다른 방법을 이용하여야 하는데 첫 번째가 딕셔너리를 이용한 get메서드를 통해 특정 값을 입력받을 때, 특정 값을 출력하는 형식을 표현할 수 있는 방법입니다.

 

switch문의 다른 방법으로는 if문, elif문을 사용하는 것입니다. 특정 값이 특정 조건에 해당하는 것이면 특정 값을 출력하도록 만드는 방법입니다.

 

파이썬에서는 goto함수도 사용을 하지 못합니다. 그렇기에 반복문을 사용하지 않고 조건에 따라 계속 반복해야 될 코드가 있으면 재귀 함수를 통해 조건과 반복을 수행할 수 있습니다.

위의 문제는 입력받을 개수는 알지 못하기에 가변 함수 형식으로 호출하여 조건에 맞춰 풀어나가면 됩니다.

 

위는 출력할 정수의 개수를 입력하여 입력받은 값에서 개수만큼 출력하는 문제로 함수에 두 개의 인자를 가지도록 하여 문제를 풀면 됩니다.

밑에 주석은 반복문을 이용할 때 사용되는 간단한 코드이며 반복문과 print() 함수 사이에 조건을 넣어 입력받은 개수만큼의 출력이 가능하도록 할 수 있습니다. 

 

무한 반복을 사용하여 입력받은 값이 0이 아닐 때까지 반복하는 문제로 요소를 확인하여 출력하는 방법으로 문제를 풀 수 있습니다.

for반복문을 사용하면 무한 반복은 아니지만 입력받은 정수의 개수만큼 반복되며 간단한 코드로 입력된 0을 만나면 반복문이 종료되는 코드로 작성할 수 있습니다.

 

정수를 입력받아 1씩 값을 줄이는 형식으로 입력받은 값이 0이 아닐 때까지 반복하여 값을 출력할 수 있습니다.

 

0까지 출력하기 위해서는 입력받은 값을 1씩 줄이는 식을 출력하는 함수보다 위로 올려 0까지 출력되게 만들 수 있습니다.

 

영문자(소문자)를 입력받아 알파벳의 시작부터 입력받은 알파벳만큼 출력하는 문제입니다.

아스키코드 문자표를 이용하면 되는데 ord() 함수를 통해 입력받은 알파벳을 아스키코드의 숫자로 변형시켜 'a'의 아스키코드 숫자를 증가시키는 방법으로 출력시킬 수 있습니다. 출력할 때는 chr() 함수를 이용하여 알파벳으로 다시 변환시키며 출력하면 됩니다.

 

이 문제는 알파벳에서 정수로 바뀌었을 뿐 원리는 같습니다.

증가 값을 설정하여 입력받은 값만큼 증가시키며 출력하면 원하는 값이 출력됩니다. 

 

선택 실행 구조와 반복 실행 구조에 대한 문제들을 풀어보았습니다.

헷갈리는 부분이 많은데 천천히 원리를 파악하며 풀어보면 답을 구할 수 있을 것입니다.

감사합니다~