본문 바로가기
728x90
반응형
SMALL
[파이썬, Python] 백준 2920번 - 음계 백준 2920번 음계 https://www.acmicpc.net/problem/2920 2920번: 음계 다장조는 c d e f g a b C, 총 8개 음으로 이루어져있다. 이 문제에서 8개 음은 다음과 같이 숫자로 바꾸어 표현한다. c는 1로, d는 2로, ..., C를 8로 바꾼다. 1부터 8까지 차례대로 연주한다면 ascending, 8 www.acmicpc.net 문제 다장조는 c d e f g a b C, 총 8개 음으로 이루어져있다. 이 문제에서 8개 음은 다음과 같이 숫자로 바꾸어 표현한다. c는 1로, d는 2로, ..., C를 8로 바꾼다. 1부터 8까지 차례대로 연주한다면 ascending, 8부터 1까지 차례대로 연주한다면 descending, 둘 다 아니라면 mixed 이다. 연주.. 2023. 3. 10.
[파이썬, Pyhthon] 백준 2750번 - 수 정렬하기 백준 2750번 수 정렬하기 https://www.acmicpc.net/problem/2750 2750번: 수 정렬하기 첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 수가 주어진다. 이 수는 절댓값이 1,000보다 작거나 같은 정수이다. 수는 중복되지 않는다. www.acmicpc.net 문제 N개의 수가 주어졌을 때, 이를 오름차순으로 정렬하는 프로그램을 작성하시오. 입력 첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 수가 주어진다. 이 수는 절댓값이 1,000보다 작거나 같은 정수이다. 수는 중복되지 않는다. 출력 첫째 줄부터 N개의 줄에 오름차순으로 정렬한 결과를 한 줄에 하나씩 출력한다. 예제입력 5 5 2 .. 2023. 3. 10.
[파이썬, Python] 객체지향 프로그래밍 - 객체 지향과 클래스(Class) 1. 객체지향 프로그래밍 문제를 여러개의 객체 단위로 나눠 작업하는 방식 특징 Abstraction(추상화) : 만들고자 하는 것들의 공통적인 것을 바탕으로 하나로 묶는 것 Encapsulation(캡슐화): 맡은 역할의 수행을 위해 최소한의 외부 접근만을 허용하는 것 Polymorphism(다형성): 자료형에 구애 받지 않고 프로그래밍 하는 것 Inheritance(상속): 하위 개념이 상위 개념의 속성 및 동작 등을 물려받는 것 1-1. 객체(Object)란? 물리적으로 존재하거나 추상적으로 생각할 수 있는 것 중에서 자신의 속성을 가지고 있고 다른 것과 식별 가능한 것을 말함 하나의 클래스로부터 여러 개의 객체(object)가 생성될 수는 있지만 각각은 서로 유일(unique) 서로 다른 객체는 특.. 2023. 3. 9.
[파이썬, Python] 변수의 범위 - 스코프(Scope), 지역변수(local 변수), 전역변수(global 변수), global 키워드 1. 스코프(Scope) 변수에 접근할 수 있는 범위 local: 가장 가까운 함수 안의 범위 global: 함수 바깥의 변수 또는 import 된 module 1-1. 지역변수(local variable) 함수 내에서 선언된 변수 함수 내에서만 유효한 변수 1-2. 전역 변수(global variable) 함수 외부에서 선언된 변수 def func1(): num1 = 20 # local 변수 print(num1) # num1 는 func1 함수안에 정의된 지역변수이기 때문에 함수 바깥에서 사용할 수 없음 print(num1) >>> NameError: name 'num2' is not defined # 함수 실행 func1() >>> 20 num2 = 10 # global 변수 print(num2) >.. 2023. 3. 9.
[파이썬, Python] 함수 - 2️⃣ 콜백 함수(Callback Function) 1. 콜백 함수(Callback Function)란❓ 직접 호출하는 것이 아닌 다른 함수에 의해 호출되는 함수 함수 호출 시에 함수를 입력 인자로 전달하고 호출받은 함수에서는 전달받은 함수를 호출하여 사용 1-1. 콜백 함수 만들기 def callback_func(func): for i in range(5): func() def print_hello(): print('안녕하세요') print_hello() >>> '안녕하세요' # 전달받은 매개변수 함수(print_hello())의 메모리주소를 입력받아 함수를 실행함 callback_func(print_hello) >>> 안녕하세요 안녕하세요 안녕하세요 안녕하세요 안녕하세요 # 콜백 함수에 매개변수로 함수가 아닌 다른 데이터를 넣었을 때 에러! callb.. 2023. 3. 9.
[파이썬, Python] 함수 - 1️⃣ 사용자 정의 함수 1. 함수란❓ 변수 x, y에 대해 x값이 정해지면 그에 따라 y값이 결정되는 것 반복적으로 사용되는 가치 있는 부분을 묶어서 하나의 집합으로 만듦 코드를 재활용하기 위한 목적 파이썬에서의 함수 만들기: def 키워드 사용 1-1. 이름만 있는 함수 함수 정의 def 함수명(): 함수가 호출되면 실행할 문장 ... 함수 호출 함수명() 사용자 정의 함수를 만들어보자. def func1(): print('처음으로 만든 함수에 의해 출력됩니다') func() >>> 처음으로 만든 함수에 의해 출력됩니다 func() >>> 처음으로 만든 함수에 의해 출력됩니다 func() >>> 처음으로 만든 함수에 의해 출력됩니다 # 호출할 때 마다 반복적으로 사용 가능 # for문을 이용하여 함수 사용하기 for i in.. 2023. 3. 9.
[파이썬, Python] 자료구조(Data Structure) - 4️⃣ 세트(set) 1. 세트(set) 수학의 집합과 비슷한 형태로 순서가 없어서 어떤 값이 먼저 나올지 알 수 없고, 중복되는 데이터를 허용하지 않음. 딕셔너리처럼 중괄호를 사용해서 선언하지만, key는 존재하지 않고 value만 존재 1-1. set 만들기 {값1, 값2, ...} set() set1 ={} print(set1) >>> {} print(type(set1)) >>> # 빈 중괄호는 dict로 만듬 set1 = {1, 3, 5, 7} print(set1) >>> {1, 3, 5, 7} print(type(set1)) >>> # 값을 넣어주면 set이 됨 set3 = {1, 3, 5, 3, 7, 9, 1} print(set3) >>> {1, 3, 5, 7, 9} # 중복데이터 허용하지 않음 li1 = [1, .. 2023. 3. 8.
[파이썬, Python] 자료구조(Data Structure) - 3️⃣ 딕셔너리(Dictionary, dict) 1. 딕셔너리(Dictionary) 대응관계를 나타내는 자료형으로 key와 value라는 것을 한 쌍으로 갖는 형태 하나의 딕셔너리의 key는 중복될 수 없음 하나의 딕셔너리의 value는 중복될 수 있음 1-1. 딕셔너리 만들기 변수 = {key1:value1, key2:value2, ...} # 빈 딕셔너리 생성 dic1 = {} print(dic1) >>> {} print(type(dic1)) >>> # key와 value값으로 딕셔너리 만들기 dic2 = {1:'김사과', 2:'반하나', 3:'오렌지', 4:'이메론'} print(dic2) >>> {1: '김사과', 2: '반하나', 3: '오렌지', 4: '이메론'} # value값에 여러 요소를 담을 때는 대괄호로 감쌈 dic4 = {'num.. 2023. 3. 8.
[파이썬, Python] 제어문 - 2️⃣ 반복문(2)_다중반복문, 컴프리헨션(Comprehension) 1. 다중반복문 반복문이 2가지 이상 겹쳐져 있는 형태 for i in range(1, 4): # 증가값 1 print(f'🥙 1:{i}') for j in range(1, 4): print(f' 🥗 1:{j}') >>> 🥙 1:1 🥙 1:2 🥙 1:3 🥗 1:1 🥗 1:2 🥗 1:3 # 블록처리 for i in range(1, 4): # 증가값 1 print(f'🥙 1:{i}') for j in range(1, 4): # 증가값 1 print(f' 🥗 1:{j}') >>> 🥙 1:1 🥗 1:1 🥗 1:2 🥗 1:3 🥙 1:2 🥗 1:1 🥗 1:2 🥗 1:3 🥙 1:3 🥗 1:1 🥗 1:2 🥗 1:3 📌문제 '🌷'를 이용하여 아래와 같은 도형을 만들어보자. 1) 🌷 🌷 🌷 🌷 🌷 🌷 🌷 🌷 🌷 🌷 🌷 🌷.. 2023. 3. 8.
[파이썬, Python] 제어문 - 2️⃣ 반복문(1)_bool(), 대입연산자, while문, for in 문, zip함수, enumerate함수 1. 자료형 참/거짓 판단하기 파이썬에서 사용하는 모든 자료형은 참 또는 거짓으로 표현이 가능 파이썬에서 모든 자료형은 요소가 있는 경우는 True, 요소가 없는 경우는 False a = '100' print(type(a)) >>> print(type(int(a))) >>> bool1 = True print(bool1) >>> True print(type(bool1) >>> bool(int/float): 숫자형 데이터 타입의 경우 0이면 False, 0이 아닐 경우 모두 True num1 = 10 print(num1) print(type(num1)) print(bool(num1)) >>> 10 True num2 = 0 print(num1) print(type(num2)) print(bool(num2)) .. 2023. 3. 8.
[파이썬, Python] 제어문 - 1️⃣ 조건문_ if문, 삼항 연산자, 논리 연산자 1. 제어문 이란 ❓ 프로그램의 흐름을 제어하는 문장 프로그램의 흐름을 효율적으로 이용하기 위해 사용 조건문 : if문 반복문: while문, for문 2. 조건문 2-1. 비교 연산자 참인지 거짓인지 판단하기 위해 사용되며 참일 경우 True, 거짓일 경우 False 반환한다. 비교연산자 설명 x > y x 는 y 보다 크다 x >= y x 는 y 보다 크거나 같다 x >> True print(10 >> False print(10 >= 5) >>> True print(10 >> False print(10 == 5) >>> False print(10 != 5 ) >>> True 2-2. if 문 if 문의 형식 if 조건식(결과가 True 또는 False.. 2023. 3. 7.
[파이썬, Python] 부동 소수점(floating point number) - 실수의 연산, 부동 소수점 오차, 실수의 비교 ✔ 실수의 연산 파이썬에서 실수를 연산할 때 가끔 사람의 직관에 반대되는 결과가 도출될 때가 있다. 예를들어 정수 10과 3을 나누는 연산을 해보자. 일반적으로 사람은 연산의 결과가 3.333(반올림/내림 법칙에 따른 소수점 버림)정도 혹은 3.33333333.....으로 생각할 것이다. print(10 / 3) >>>3.3333333333333335 하지만 파이썬에서 결과는 3.3333333333333335이다. 이는 계산의 오류일까? 또, 0.1과 0.2 두 실수의 덧셈 연산을 해보자. 사람은 0.3이라고 도출된 결과에 참이라고 대답할 것이다. 0.1 + 1.1 == 1.2 >>> False 하지만 컴퓨터는 False 결과를 도출한다. 이는 컴퓨터의 오류일까? ✔ 정수와 실수 자료형 파이썬에서는 정수.. 2023. 3. 7.
728x90
반응형
LIST