전체 글 45

[알기쉽게 해설한 파이썬 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

[컴활 1급 핵심 이론] POINT 04. 설정 (1)

01. 앱 앱 및 기능앱을 가져올 위치를 선택할수 있다.앱 및 기능 영역의 '선택적 기능'에서 앱을 제거하거나 기능을 추가할 수 있다.앱 및 기능의 영역의 '앱 실행 별칭'에서 명령 프롬프트로 앱을 실행하는 데 사용되는 이름을 선언할 수 있고, 이름이 동일할 경우 사용할 앱 하나를 선택한다.앱을 [이동], [수정], [제거]할 수 있으며 드라이브별로 검색, 정렬 및 필터링도 가능하다. 기본 앱메일, 지도, 음악 플레이어, 사진 뷰어, 비디오 플레이어, 웹 브라우저와 같은 작업에 사용할 앱을 선택한다.[파일 형식별 기본 앱 선택], [프로토콜별 기본 앱 선택], [앱별 기본값 설정]이 가능하다.Microsoft에서 권장하는 기본 앱으로 돌아가려는 경우 'Microsoft 권장 기본값으로 초기화'에서 [초기..

[알기 쉽게 해설한 파이썬 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

[이것이 자바다] CHAPTER 14. 멀티 스레드

14.1 멀티 스레드 개념 운영체제는 실행 중인 프로그램을 프로세스(process)로 관리한다. 멀티 태스킹(multi tasking)은 두 가지 이상의 작업을 도잇에 처리하는 것을 말하는데, 이때 운영체제는 멀티 프로세스를 생성해서 처리한다. 하지만 멀티 태스킹이 꼭 멀티 프로세스를 뜻하지는 않는다. 하나의 프로세스가 두 가지 이상의 작업을 처리할 수 있는 이유는 멀티 스레드(nulti thread)가 있기 때문이다. 스레드(thread)는 코드의 실행 흐름을 말하는데, 프로세스 내에 스레드가 두 개라면 두 개의 코드 실행 흐름이 생긴다는 의미이다. 멀티 프로세스가 멀티 프로그램 단위의 멀티 태스킹이라면 멀티 스레드는 프로그램 내부에서의 멀티 태스킹이라고 볼 수 있다.  멀티 프로세스들은 서로 독립적이..

[알기 쉽게 해설한 파이썬 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 반복문을 이용하여 ..

[이것이 자바다] CHAPTER 13. 제네릭 | 개념

13.1 제네릭이란? 다음과 같이 Box 클래스를 선언하려고 한다. Box는 다양한 내용물을 저장해야 하므로 Object 타입으로 선언한다.public class Box { public Object content;}  Object 타입은 모든 클래스의 최상위 부모 클래스이다. 그렇기 때문에 모든 객체는 부모 타입인 Object로 자동 타입 변환이 되므로 content 필드에는 어떤 객체든 대입이 가능하다.Box box = new Box();box.content = 모든-객체;  content는 Object 타입이므로 어떤 객체가 대입되어 있는지 확실하지 않다. 이때 대입된 내용물의 타입을 안다면 강제 타입 변환을 거쳐 얻을 수 있다.String content = (String) box.content;  ..