파이썬 16

[알기쉽게 해설한 파이썬 with 컴퓨팅 사고력] CH10. 객체 지향: 클래스와 객체

Section 01. 객체 지향의 개요 1. 객체지향의 개념 객체 지향(Object-oriented)이란 객체를 중심으로 모든 것을 기술한다는 의미이다. 컴퓨터가 개발된 초개의 프로그래밍 언어는 순서에 의해 수행되는 절차 지향 언어(procedure-oriented language)가 대부분이었다. 절차 지향 언언어들은 여러 단점 중에서 한 번 작성된 기능을 하나의 프로그램에서만 사용할 수밖에 없다는 치명적인 단점이 있었다. 그러한 단점은 소프트웨어의 생산성을 저하시키는 요인이 되었다. 객체 지향 프로그래밍에서는 모든 요소들을 객체로 모델링하며, 이러한 객체를 연결하여 프로그래밍이 이루어진다. 한 번 만들어진 객체는 다양한 프로그램에서 재사용될 수 있어 소프트웨어의 생산성을 높일 수 있다. 객체 지향 프..

파이썬/개념 2024.12.14

[알기 쉽게 해결된 파이썬 with 컴퓨팅 사고력] CH09. 함수와 모듈

Section 01. 프로그램과 함수 1. 프로그램과 함수의 관계  프로그램(program)은 일상생활의 문제를 컴퓨터로 해결하는 과정을 기술한 절차이다. 다양한 형태의 규모와 복잡성을 가지고 있다. 프로그램이 비교적 단순하고 간단하다면, 하나의 프로그램 내에서 작성하는 것이 가능하다. 하지만 프로그램의 논리가 복잡하고 대규모로 확장된 프로그램인 경우에 프로그램을 하나로 작성한다는 것은 매우 어려우며 이해하기 쉽지 않고 유지 보수도 매우 어렵다. 이와 같이 프로그램의 규모가 커질 경우, 경우 프로그램을 작은 단위로 나누어 여러 개의 프로그램으로 작성하는 것이 원칙이다. 이러한 작은 단위의 프로그램을 함수(function)나 서브 프로그램(sub program), 또는 프로시저(procedure)라고 부른..

파이썬/개념 2024.12.08

[알기 쉽게 해설한 파이썬 with 컴퓨팅 사고력] Chapter 06 연습 문제

01. 입력된 문자가 회문(앞뒤에서 읽어도 같은 문자)인지를 판별하는 프로그램을 작성하시오. 단 대소문자를 같은 문자로 취급하고, 문자열에 공백이 있을 경우 공백을 제고하고 판단하시오.문자열을 입력 : Madam회문입니다문자열을 입력 : Nurses Run회문입니다문자열을 입력 : cskim run회문이 아닙니다string = input("문자열을 입력 : ")stringList = ''.join(string.split()).lower()if stringList == stringList[::-1]: print("회문입니다")else: print("회문이 아닙니다")   02. 1부터 1000 사이의 소수를 구하여 리스트에 저장한 후, 소수와 소수의 개수를 출력하는 프로그램을 작성하시오.numL..

파이썬/개념 2024.11.19

[알기 쉽게 해설한 파이썬 with 컴퓨팅 사고력] CH08 파일 입출력

Section 01 입출력의 개요  프로그램에서 무엇인가 나가면 출력이고, 프로그램에 무엇인가 들어오면 입력이다. 즉 프로그램을 중심으로 입출력을 정의할 수 있다. 가장 많이 사용되는 입력장치인 키보드나 하드디스크에 있는 파일, 마켓에서 사용하는 바코드 리더기 등 많은 입력장치가 존재한다. 출력장치 역시 가장 많이 사용하는 모니터, 하드디스크에 저장되는 파일, 프린터 등 많은 출력장치가 존재한다. 이와 같이 모든 입력장치와 출력장치는 프로그램과의 입출력을 통해서 동작한다. 대부분의 프로그래밍 언어는 이러한 복잡한 입출력 과정을 지원하는 라이브러리 함수(전문가에 의해 개발되어 제공)를 제공하고 있다.          Section 02 표준 입출력  파이썬은 다양한 입출력 장치 중에서 키보드와 모니터를 표..

파이썬/개념 2024.11.18

[알기 쉽게 해설한 파이썬 with 컴퓨팅 사고력] CH07. 세트와 딕셔너리

Section 01 세트  파이썬에서 세트(set)는 수학에서의 집합의 개념과 같으며, 순서가 없으면서 중복을 허용하지 않는 자료구조를 의미한다. 세트는 주로 멤버 검사와 중복된 항목을 제거할 때 유용한 자료구조이다.세트는 순서가 없기 때문에 인덱스를 통한 접근이 허용되지 않는다. 시퀀스 자료형에서 허용되는 인덱싱, 슬라이싱, 연결, 반복 등의 기능이 세트에서는 제공되지 않는다. 대부분의 내장함수들은 세트에 적용 가능하다.   1. 세트의 생성 세트는 '{}'을 사용하여 생성할 수 있다. 또한 다른 자료형의 데이터를 set() 함수를 사용하여 세트를 생성할 수 있다. 세트는 중복을 허용하지 않기 때문에 생성 시 중복된 데이터가 입력되어도 하나의 데이터로 간주한다. 세트는 다른 자료형의 데이터를 변환하여 ..

파이썬/개념 2024.11.17

[알기 쉽게 해설한 파이썬 with 컴퓨팅 사고력] CH06. 시퀀스 자료형

Section 01 시퀀스 자료형의 개요  배열(array)은 순서가 있는 동일한 자료들을 표현하는 자료구조이다. 파이썬에서는 기존 언어들에서 제공하는 배열의 기능을 포함하면서도 더 확장된 기능을 제공하는 시퀀스 자료형(Sequence data type)을 제공하고 있다. 시퀀스 자료형은 서로 다른 형의 데이터들을 하나의 자료구조로 표현할 수 있다.  파이썬에서 제공하는 시퀀스 자료형은 다음 3종류이다.문자열리스트튜플 세 가지는 표현 방법은 다르지만 모두 순서가 정해져 있는 자료형이라는 공통적인 특성을 가지고 있다. 이러한 자료형을 시퀀스(sequence) 자료형이라 한다.          Section 02 시퀀스 자료형의 연산  1. 인덱싱  인덱싱(Indexing)은 순차적인 자료구조에 인덱스(첨자..

파이썬/개념 2024.11.16

[알기 쉽게 해설한 파이썬 with 컴퓨팅 사고력] Chapter 05 연습 문제 풀이

01. 10개의 숫자를 입력받아 0보다 큰 수에 대해서만 전체 합과 평균을 출력하는 프로그램을 while 반복문을 이용하여 작성하시오.① 조건 추출 :사용자에게  10개의숫자를 10번 반복하여 입력 받음숫자가 0보다 큰 수에 대해서만 전체 합과 평균을 출력② 연계된 논리 결정 :10개의 숫자를 입력 받음 : 반복 논리0보다 큰 수에 대해서만 합과 평균을 출력 : 선택 논리③ 논리구조도 :num = 0sum = 0avg = 0i = 1while i 0): sum += num i = i + 1avg = sum / 10print("합 :", sum)print("평균 :", avg)  02. 1부터 100까지의 합을 구하여 다음과 같이 출력하는 프로그램을 while 반복문을 이용하여 ..

[알기 쉽게 해설한 파이썬 with 컴퓨팅 사고력] Chapter 04 연습 문제 풀이

01. 다중 if문과 중첩 if문을 활용하여 학점 계산 프로그램을 완성하시오. 입력받는 정수는 반드시 0~100점 사이에 있어야 하고, 잘못된 점수를 입력하면 '점수 입력은 0~100 사이어야 합니다.'를 출력하도록 프로그램을 작성하시오.더보기A학점 : 90~100점     B학점 : 80~89점     C학점 : 70~79점D학점 : 60~69점       F학점 : 60점 미만 score = int(input("점수를 입력하세요(0~100점) : "))if (score >= 0 and score = 90 and score = 80 and score = 70 and score = 60 and score   02. 정수 하나를 입력받아 자릿수를 구하는 프로그램을 작성하시오. 그리고 입력받은 정수가 네 자..

[알기 쉽게 해설한 파이썬 with 컴퓨팅 사고력] Chapter 03 연습 문제 풀이

01. 다음 수식의 우선순위와 결과를 나타내시오.더보기10 - 40 / 5 * 10 + 200① 40 / 5 (= 8)② 8 * 10 (= 40 / 5 * 10 = 80)③ 10 - 80 ( = 10 - 40 / 5 * 10 = -70)④ -70 +200 ( = 10- 40 / 5 * 10 + 200 = 130)  02. 다음 수식의 우선순위와 결과를 나타내시오.더보기5 + 5 * 10 / (10 - 5)① (10 - 5) (= 5)② 5 * 10 (= 50)③ 50 / 5 (= 5 * 10 / (10 - 5) = 10)④ 5 + 10 (= 5 + 5 * 10 / (10 - 5) = 15)  03. 다음 수식의 우선순위와 결과를 나타내시오.더보기15 * 1500 + 3 * 3000① 15 * 1500 (..

[알기 쉽게 해설한 파이썬 with 컴퓨팅 사고력] Chapter 02 연습 문제 풀이

01. 순서도나 의사코드는 건물의 설계도와 같다. ( O / X ) 02. 프로그램을 작성할 때 프로그램을 먼저 작성하고 순서도를 그린다. ( O / X ) 03. 랩터는 순서도에 기반하여 절차를 기술할 수 있는 시각적 개발 환경을 제공한다. ( O / X ) 04. 구조적 프로그램에서의 기본적인 논리는 순서, 선택, 반복 논리이다. ( O / X ) 05. 순서 논리는 순차적인 실행 순서를 가진다는 의미이다. ( O / X ) 06. 컴퓨터에서 선택 논리는 True, False, Unknown의 값을 가진다. ( O / X ) 07. 컴퓨터에서 반복 논리는 무한 반복됨을 의미한다. ( O / X ) 08. 랩터는 미 해군에서 개발되어 무료로 보급되고 있는 소프트웨어이다. ( O / X ) 09. 랩터는..