파이썬과 C언어의 변수 저장 방식 차이 C언어 메모리 공간을 할당받고 값을 집어넣어서 사용한다. 방식 1 : 정적 메모리 할당 컴파일시 고정된 크기/타입의 메모리 공간을 할당받아서 사용 가능.(스택 공간) 크기가 정해지면 중간에 바꿀 수 없음 소멸시 운영체제가 자동으로 메모리를 반납 int a = 0; a라는 변수가 int형 크기만큼 메모리 공간을 할당받아서 0이라는 값을 넣음. 프로그램 종료시 운영체제가 자동으로 메모리 반납 방식 2 : 동적 메모리 할당과 포인터 런타임에 원하는 크기/타입의 메모리 공간을 만들고, 그 공간을 가리키는 주소를 포인터 변수에 저장하여 사용.(힙 공간) 포인터 변수는 주소를 가리키는 변수. 소멸시 메모리 반납을 수동으로 해줘야 함. char *str = NULL; # 포인터..
반복 과정에서 조건 판단 다음은 n을 입력받고 1부터 값을 증가시키면서 홀수인 경우 +, 짝수인 경우-를 출력하는 코드이다. n = int(input('몇 개를 출력? :')) for i in range(1, n+1): if i % 2: print('+', end='') else : print('-', end='') print() 이 코드는 n의 값이 커지면 if문도 그만큼 반복되어야하므로 상황에따라 유연하게 수정하기 어려워진다. 개선한 코드 n = int(input('몇 개를 출력 :')) for _ in range(n // 2): print('+-', end='') if n % 2: print('+', end='') print() +-가 반복되는 부분은 반복문에서 모두 출력되도록 하고, 입력받은 값이..
알고리즘 : 어떠한 문제를 해결하기 위해 정해놓인 일련의 절차 자료구조 : 컴퓨터에 정보를 효율적으로 저장하고 관리하는 방법 알고리즘과 자료구조는 서로 상호 보완 관계에 있다. 자료구조를 만드는 과정이 알고리즘으로 순서화되어 있기 때문이다. 이 포스팅을 하면서 코딩테스트에 대한 대비뿐만 아니라, 논리적인 사고 능력을 기르고 파이썬을 파이썬스럽게 잘 활용할 수 있는 방법들을 배우는데 큰 도움이 되기를 기대한다. print('세 정수의 최댓값 구하기') a = int(input('정수 a의 값을 입력하시오')) b = int(input('정수 b의 값을 입력하시오')) c = int(input('정수 c의 값을 입력하시오')) maximum = a if b > maximum: maximum = b if c ..