본문 바로가기

전체 글31

[C++ 독학] 구조체 <C++ 의 기초> 06 구조체 자료들의 집합! 구조체는 서로 연관성 있는 자료들을 묶어 데이터를 구조화(structuring) 하는 것이다. 구조체는 기존에 정의되어 있던 자료형(int, double, string 등등,,,)을 이용해 새로운 구조체를 만들게 되는데 이것을 '구조체를 정의한다'라고 한다. 구조체 정의 먼저 우리가 자동차에 관한 정보를 작성해보다 정보는 자동차의 이름, 최고속도, 연비, 가격 등이 있다고 가정 한다. 아마 기존의 우리는 다음과 같이 코드를 작성했을 것이다. string car1_name; int car1_speed; int car1_fuel_efficiency; int car1_price; 끔찍하게도 자동차의 개수가 늘어갈수록 더 많은 n*4개의 변수를 생성하게 될 것이다. 이럴 때 사용할 수 있.. 2022. 6. 6.
[ERROR | Python] AttributeError: 'builtin_function_or_method' object has no attribute 오류 from random import random def fresh_deck(): suits = {"Spade", "Heart", "Diamond", "Club"} ranks = {"A", 2, 3, 4, 5, 6, 7, 8, 9, 10, "J", "Q", "K"} deck = [] for s in suits: for r in ranks: card = (s, r) deck.append(card) random.shuffle(deck)// 2022. 6. 4.
[C++ 독학] 포인터 <C++ 의 기초> 05 포인터 포인터(pointer)는 변수나 자료의 주소 값을 저장하는 변수이다. 일반적인 변수(int, char등) 는 정수, 문자와 같은 자료를 저장하는 것과 같이 포인터는 어떤 변수의 주소 값을 저장하는 변수라고 생각한다. 포인터는 다음과 같이 타입과 변수이름 사이에 '*' 아스트릭(asterisk mark)을 추가해 선언한다. int *ptr; 포인터의 값으로는 변수의 주소를 넘겨주어야 하는데 변수의 주소는 '&' 앰 퍼센트(ampersand) 기호를 사용해서 접근한다. int var = 10; int *ptr = &var; // 변수 var의 주소값 참조 int arr[5]; int *arrPtr = arr; // 배열 arr의 첫번째 주소 참조 만약 포인터 변수를 출력하면 참조한 변수의 주소값이 나.. 2022. 4. 5.
[C++ 독학] 배열 <C++기초> 04 배열 배열은 같은 타입의 변수를 나열해 놓은 것입니다. 회사 직원 10명의 아이디를 저장해야 된다고 생각해보면 다음과 같이 변수 10개를 생성해야 합니다. int id1; int id2; int id3; ... int id10; 이는 굉장히 귀찮은 일입니다. 만약 id가 100개, 1000개가 된다면 변수를 1000개나 생성해야 하는 고역을 겪을 수도 있습니다. 우리는 이럴 때 배열을 사용할 수 있습니다. 배열의 선언은 다음과 같습니다. int myArr[10]; 변수와 같이 생성하다가 뒤에 대괄호[] 안에 숫자를 넣은 형태입니다. 직관적으로 봤을 때 10개의 변수를 나열할 수 있도록 배열을 생성해 주었습니다. 이런 배열을 초기화는 다음과 같이 할 수 있습니다. int myArr[10] = {10,20,.. 2022. 3. 31.