본문 바로가기

* Language23

[Python] 파이썬 반복문(for문)을 이해하기 전... 우리는 수학연산에서 곱셈을 배우기 이전에 덧셈을 먼저 배운다. 덧셈을 모르는데 곱셈을 배운다는건 곱셈의 원리를 모르고 단순 암기를 하고 있다는것이 되버린다. 아래의 2가지 케이스를 살펴보자 case1) a = 5 b = 10 print(a*b) #50 : 그냥 단순 두 변수를 곱해서 결과를 출력하는 연산이다. case2) a = 5 ans = 0 for _ in range(10): ans += a print(ans) #50 : 곱셈의 원리인 덧셈을 활용한 것. 즉 5를 10번 더한것이 5 * 10이기에 반복문을 통해 해당 결과를 출력 한 것. 순서가 어찌됬든 위의 2가지의 경우 모두를 알고 있어야 한다고 생각한다. Case 2의 경우 만약 (파이썬의 경우)로 연산횟수가 약 1000만이 넘어가게 되면 시간.. 2021. 2. 15.
[C++] C++ STL vector 개념(왜 사용할까?) 이 글은 c++ vector에서 사용하는 기본 함수를 다루기 보다는 vector에 대한 기본적인 그림을 그리기 위해 작성한 글이다. C++를 막 입문하고, vector라는 개념을 알고 싶고 왜 사용하는지 궁금해하는 초보자를 위한 글이다. 벡터(Vector)란? c++ 에서 쓰이는 vector라는 개념은, 동적 배열로 c++에서 제공하는 라이브러리이다. 이게 무슨 소리일까? 간단한 예로 스택을 구현해보고자 할 때 C언어에서는 하나부터 열까지 모든 것을 구현해봐야 했다. (stack에 대한것, push()와 pop() 에 관한 것) 하지만 C++ 에서는 이것을 라이브러리에다 담아 마치 하나의 객체처럼 사용할 수 있게끔 구현해놨다. 아래의 코드를 보면 알 수 있다. * C++ 1 2 3 4 5 6 7 8 9 .. 2021. 1. 11.
[C언어] 확실히 알고가자 프로토타입(Prototype)이란?(개념잡기) C언어를 공부하다 보면 코딩을 하는 능력과는 별개로 단어적인 개념으로 인해 쉽게 지치기 마련이다. 단어를 사전적 그대로 받아들이기보다 어떠한 이미지로 기억하는 것이 훨씬 더 효율적이다. 포로토타입(Prototype)이란 무엇일까? Pro의 접두사로 "~~ 이전에"라는 의미가 가진 무엇인가 라는 생각이 든다. Pro(~이전에) + to(~에) + type(타입, 유형) : ~하기 이전에 어떠한 타입으로 무언가를 해놓은 것. 위의 개념적 이미지를 가지고 다음 사례를 읽어보자 1. 책을 읽기 이전에 어떠한 책인지 대략적으로 파악할 수 있는 어떠한 타입? : 목차 2. 본격적인 출시 이전에 어떠한 기능을 검증하기 위해 제작하는 제품(타입)? : 시제품 핵심 이미지 : ~을 하기 이전에 미리 확인하는 이미지 C언.. 2021. 1. 6.
[Python] 파이썬 : 객체지향 프로그래밍(OOP)란? 이 질문에 대답을 하기전, 우선 프로그래밍 언어들이 나누어지는 기준을 알아야 합니다. 크게 절차 지향 언어와, 객체지향 언어입니다. 대략적으로 절차 지향 언어는 C언어를 생각하시면 되며, 객체 지향 언어는 Python의 예시를 생각해보시면 됩니다. C언어의 경우는 오로직 위에서 아래로 흘러가는 프로그래밍 기법을 사용하고 있으나, Python의 경우는 이와는 별개로 독립적인 프로그래밍 기법을 사용하고 있습니다. Ref) 2020/12/30 - [* IT/Dictionary] - 객체지향 언어를 위한 필수 지식 : 객체(Object)와 클래스(Class) 개념 객체지향 언어를 위한 필수 지식 : 객체(Object)와 클래스(Class) 개념 객체지향 언어를 공부하다보면(C++, Java, Python 등.... 2020. 12. 31.
[Python] 파이썬 : 예외 처리(try-except-finally) 단계별로 이해하기 코드를 작성하다가 오류가 출력되었을 때 이러한 오류 관리를 보다 쉽게 할 수는 없을까? 오류 관리에 대한 문제를 해결해보고자 파이썬 예외 처리 try-except-finally를 이해해보자. 단계 1) : 오류가 발생한다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 nums = [1,2,3,4,5] print(nums[0]) # 1 정상 출력 print(nums[5]) # 오류 발생 # --------------------------------------------------------------------------- # IndexError Traceback (most recent call last) # in # 2 # 3 print(nums[0]) # ----> 4 p.. 2020. 12. 24.