C++ 생성자, 디폴트 생성자, 위임 생성자 C++에서 생성자에 대해서 알아보겠다. 12345678910111213141516171819202122232425#include using namespace std; class Position{public: int x; int y; char ch; void OutPosition() { cout
C++ 실행 시간 측정하기 내가 만든 함수가 얼마나 빠른지를 보기 위해서 실행 시간 측정하는 방법에 대해 알아보겠다. vector를 이용해서 동적 배열로 10개를 만든 다음무작위로 순서를 섞어서 std::sort 를 얼마 만큼의 시간이 들어가는지 측정을 해 볼 것이다. 1234567891011121314151617181920212223242526272829303132333435363738394041424344#include #include #include #include #include using namespace std; class Timer{ using clock_t = std::chrono::high_resolution_clock; using second_t = std::chrono::duratio..
C++ vector을 stack처럼 활용하기 이번에는 vector을 stack처럼 활용하는 방법에 대해서 알아보겠다. stack은 넣는 것을 push라 하고 빼는 것은 pop이라 한다. 1234567891011121314151617181920212223242526272829#include #include using namespace std; void printStack(const vector &stack){ for (auto &e : stack) cout
함수 포인터의 사용 예 함수포인터를 어떻게 쓰이는 건지 어디에 쓰이는 건지에 대해서 알아보자. 123456789101112131415161718192021222324252627282930313233343536373839#include #include using namespace std; bool isEven(const int &number) // 짝수{ if (number % 2 == 0) return true; else return false;} bool isOdd(const int &number) // 홀수{ if (number % 2 != 0) return true; else return false;} typedef bool(*check_fcn_t)(const int&);// using check_..
선택정렬 알고리즘(Selection sort) 선택정렬 알고리즘에 대해서 설명하겠습니다.선택정렬 알고리즘이란?? 그림으로 보면 이렇다.그림으로 보면은 정렬할 값을 콕 찝어서 정렬을 하는거 같지만 우리가 코드로 나타내면 하나하나 일일이 다 값을 비교를 해봐야 한다.그래야 정렬이 되니까. 그럼 바로 코드를 보자 1234567891011121314151617181920212223242526272829303132333435#include using namespace std;void printArray(const int array[], const int length){ for (int index = 0; index
C++ 난수 생성의 원리와 사용법이번에는 C++에서 난수 생성의 원리와 난수 생성 라이브러리를 사용해 볼 것이다.우선 난수 생성의 원리를 알아보자. 123456789101112131415161718#include using namespace std; unsigned int PRNG(){ static size_t seed = 5523; seed = 8253729 * seed + 2396403; return seed % 37268;}int main(){ for (int count = 1; count
퀵정렬(Quick Sort) 구현 이번에는 퀵정렬 알고리즘을 구현을 해보겠다.퀵정렬이 이미 구현되어 있는 함수도 있기야 하지만 퀵정렬이 어떻게 돌아가는지 알기 위해서 구현을 한번 해보았다.퀵정렬 구현되어 있는 함수 -> qsort() 함수 1234567891011121314151617181920212223242526272829303132333435#include using namespace std;void quick_sort(int data[], int left, int right){ int i, j, key, temp; if (left
qsort() 구조체 정렬하는 법 이번에는 qsort 함수(퀵 정렬)을 구조체 정렬하는 법을 적어보겠다. qsort 기본 사용법은 -> http://aossuper8.tistory.com/39 Quick Sort 알고리즘 구현은 -> http://aossuper8.tistory.com/74 #include using namespace std; typedef struct { char student_number[10]; char name[20]; double subject[5]; }ITEM; int compare(const void *m, const void *n) { return ((ITEM*)m)->subject[3] - ((ITEM*)n)->subject[3]; } int main() { ITEM st..
스택(Stack)과 큐(Queue)를 이용한 지렁이 게임 이번에는 스택(Stack)과 큐(Queue)를 이용한 지렁이 게임을 만들어 보겠다.스택은 LIFO (Last In First Out) 나중에 들어온 것이 제일 먼저 나간다라는 뜻이다.스택을 이용한 계산기도 있으니 이 게시물을 통해서 스택의 구조를 먼저 익히고 오기를 바란다. [프로그래밍/C] - 스택(Stack)을 이용한 계산기 프로그램 그리고 큐는 FIFO (First In First Out) 먼저들어온게 먼저 나간다라는 뜻이다. 큐를 이용한 계산기가 마찬가지로 있으니 이 게시물을 통해서 큐의 구조를 먼저 익히고 오기를 바란다. [프로그래밍/C] - 큐(Queue)를 이용한 계산기 프로그램 이 두개를 알아보았으니 스택과 큐를 이용해서 지렁이 게임..
메시지, 파일 암호화 및 복호화하기 이번에는 메시지 암호화 및 복호화 하는 방법을 알아보겠다.일단 암호화란 무엇일까??문서 및 메시지를 다른 사람이 구분할 수 없는 문자 코드로 변경하는 것을 뜻합니다. 복호화는 무엇일까??암호화된 문서 및 메시지를 원래의 형태로 복원하는 것을 뜻합니다. 우리는 XOR 연산으로 암호화를 해 보겠다. #include #define SECRETKEY "!@#$%^&*()_+=-" int strlen(char *dest); int main() { char string[] = "1234567890"; int n = strlen(string); puts(string); for (int i = 0; i < n; i++) string[i] ^= SECRETKEY[i]; puts(str..
큐(Queue)를 이용한 계산기 프로그램 이번에는 큐를 이용해서 계산기를 만들어 볼 것이다.우리가 사용할 함수는 strlen, memset, memcpy, atoi 함수이다. strlen = 문자열의 길이를 알아내는 함수 memset = 메모리 채우기 함수 memcpy = 메모리 복사 함수 atoi = 문자열을 정수로 변환하는 함수 [프로그래밍/C] - memcpy, memmove, memset 함수 구현 [프로그래밍/C] - strcspn 문자열 중에서 일치되는 첫 문자의 위치 구하기 [프로그래밍/C] - strlen 문자열 길이 이 프로그램은 함수를 헤더파일을 include 해서 만든 프로그램이 아니고 직접 구현해서 만든 프로그램이다. 123456789101112131415161718192021222..
스택(Stack)을 이용한 계산기 프로그램 이번에는 스택(stack)을 이용해서 계산기 프로그램을 만들어 볼것이다.사용할 함수는 strlen, memset, strcspn, memcpy, atoi 함수를 사용해서 만들어보자. strlen = 문자열 길이 구하기. memset = 메모리 채우기 strcspn = 문자열 중에서 일치되는 첫 문자의 위치 구하기 memcpy = 메모리 복사하기 atoi = 문자열을 정수형으로 변형하기 [프로그래밍/C] - memcpy, memmove, memset 함수 구현 [프로그래밍/C] - strcspn 문자열 중에서 일치되는 첫 문자의 위치 구하기 [프로그래밍/C] - strlen 문자열 길이 이 프로그램 함수들은 헤더파일을 include 해서 만든것이 아니라 직접 구현..