본문 바로가기

C++

사다리꼴 공식을 이용한 C/C++ 수치 적분 여기서는 사다리꼴 공식 (trapezoidal rule)을 적용하여 주어진 함수의 정적분을 수치적으로 구하는 법에 대해서 알아봅시다. 사다리꼴 공식으로 얻을 수 있는 것은 적분의 근사값입니다만, 원하는 정밀도에 도달할때까지 격자의 갯수를 늘려나가는 방식을 C언어나 C++로 구현하는 것에 대해서도 짚어보겠습니다. 적분의 수학적인 정의 및 정적분과 부정적분의 차이에 대해서는 다음 포스팅에 더 자세한 내용이 소개되어 있습니다. 적분의 개념이 생소하게 느껴지는 분들에게 도움이 되리라 생각합니다. 수학 상식 : 미분과 적분 이해하기 이번 포스팅에서는 고등학교 수학의 종착역이자 고급 수학의 출발점이라고 할 수 있는 미분과 적분에 대해 알아보도록 합시다. 미분과 적분의 기본 개념뿐만 아니라, 미분방정식이나 적분변환 .. 더보기
C/C++ 반복문을 제어하는 continue와 break 이번 포스팅에서는 C언어나 C++ 프로그램에 등장하는 반복문을 제어하기 위한 continue 및 break 명령어들에 대해서 알아봅시다. 이들을 활용하면 반복문 내에서 필요하지 않은 연산문들을 생략할 수 있게 되어 프로그램의 효율성을 높이는 데 도움이 됩니다. 여기서는 C언어나 C++ 프로그램에서의 반복문에 대해서 다루고 있는데, for문 또는 while문을 이용해서 특정 명령문들을 반복적으로 실행하는 방법에 대해서는 다음 포스팅에 더 자세한 내용이 소개되어 있습니다. C언어 프로그래밍 기초 : 반복문 (for, while) 여기서는 C언어나 C++ 프로그램을 작성할 때 특정한 구문들을 반복해서 실행하는 반복문 (loop)에 대해서 알아봅시다. 반복문의 종류와 더불어 반복을 위한 조건을 설정하는 방법에 .. 더보기
C언어 프로그래밍 기초 : 포인터 여기서는 C언어와 C++가 다른 프로그래밍 언어와 차별화되는 요소 중 하나인 포인터 (pointer)에 대해서 알아봅시다. 포인터의 기본 개념과 함께 일반적인 데이터를 저장하는 변수들과의 상관관계에 대해서도 짚어보겠습니다. 포인터에 대해서 간단히 말하자면, 메모리 상에서 변수의 주소를 저장하는 자료형이라고 할 수 있는데요. 따라서 이미 선언된 변수의 주소를 알아낸 뒤, 이를 또 다른 포인터 변수에 저장하는 것이 가능합니다. 포인터를 선언할 때는 변수 이름 앞에 * 기호를 붙이고, 변수의 주소를 얻기 위해서는 이름 앞에 & 기호를 붙이면 되겠습니다. /* 정수형 변수 a를 선언하고 * 그 값을 3으로 정의 */ int a = 3; /* 정수형 변수의 주소를 저장하는 * 포인터 변수 */ int *ptr_a.. 더보기
C언어 프로그래밍 기초 : 반복문 (for, while) 여기서는 C언어나 C++ 프로그램을 작성할 때 특정한 구문들을 반복해서 실행하는 반복문 (loop)에 대해서 알아봅시다. 반복문의 종류와 더불어 반복을 위한 조건을 설정하는 방법에 대해서도 살펴보겠습니다. 반복문은 복잡한 기능을 구현하기 위한 필수요소인 만큼, 프로그래밍에서의 반복문은 매우 중요한 개념입니다. 특정 구문을 계속해서 반복실행할지, 중지시킬지 여부를 결정하기 위해 조건문과 관계연산자가 사용됩니다. 만약 이들이 생소하게 느껴지시는 분들은 시작하기에 앞서서 다음 포스팅을 읽어보시면 큰 도움이 되리라 생각합니다. C언어 프로그래밍 기초 : 조건문과 관계 연산자 여기서는 C언어 또는 C++ 프로그램의 특정 연산문을 실행하기 위한 조건을 설정하는 방법과, 이를 위해 필요한 관계 연산자 (relatio.. 더보기
C언어 프로그래밍 기초 : 조건문과 관계 연산자 여기서는 C언어 또는 C++ 프로그램의 특정 연산문을 실행하기 위한 조건을 설정하는 방법과, 이를 위해 필요한 관계 연산자 (relational operator)에 대해서 알아봅시다. 특정한 조건이 만족되면 실행되는 조건문은 복잡하고 다양한 기능을 구현하기 위해 필수적입니다. 관계 연산자는 대상이 되는 두 개의 변수에 저장된 값들을 비교하는 과정을 포함하고 있습니다. 따라서 변수와 자료형의 개념에 대해서 먼저 익숙해질 필요가 있는데요. 여기에 대한 더 자세한 내용은 다음 포스팅에 소개되어 있습니다. C언어 프로그래밍 기초 : 변수와 자료형 여기서는 C언어로 프로그램을 작성하는데 있어서 가장 기본적인 요소들 중 하나라고 할 수 있는 변수 (variable)에 대해서 알아봅시다. 변수들의 종류를 지정하기 위.. 더보기
C언어 프로그래밍 기초 : 함수와 라이브러리 이번 포스팅에서는 C언어 혹은 C++를 이용해서 복잡하면서도 규모가 큰 프로그램을 작성하는데 필수적인 요소인 함수 (function)와 라이브러리 (library)에 대해서 알아봅시다. 함수를 정의하고 호출하기 위한 방법과 함께, 라이브러리가 어떻게 구성되어 있는지도 짚어보겠습니다. 함수를 정의하고 사용하기 위해서는 함수가 어떤 형태의 데이터를 받아들이고 돌려주는지를 명확히 해야 합니다. 이를 위해서 매개변수와 리턴값의 자료형을 지정하게 되는데요. C언어나 C++ 프로그램에 등장하는 변수들의 여러가지 자료형의 특징에 대해서는 다음 포스팅에 더 자세하게 소개되어 있습니다. C언어 프로그래밍 기초 : 변수와 자료형 여기서는 C언어로 프로그램을 작성하는데 있어서 가장 기본적인 요소들 중 하나라고 할 수 있는 .. 더보기
C언어 프로그래밍 기초 : 연산문과 사칙연산 이번 포스팅에서는 C언어 또는 C++ 프로그램에 등장하는 변수들의 값을 바꾸기 위한 연산문들에 대해 알아봅시다. 여러 개의 연산문들을 순차적으로 실행함으로써, 궁극적으로는 원하는 기능을 구현하게 됩니다. 따라서 사칙연산을 포함한 여러가지 연산자들에 대해 친숙해지는 것은 프로그램을 작성하는 데 있어서 매우 중요하다고 볼 수 있습니다. 변수들을 C언어 프로그램에서 사용하기 위해서는 선언문을 통해서 이들의 존재를 먼저 알려야 합니다. 여러가지 자료형을 통해 다양한 형태의 데이터를 나타내는 변수들을 선언하는 방법에 대해서는 다음 포스팅에 더 자세한 내용이 소개되어 있습니다. 변수와 자료형의 개념이 생소하게 느껴지시는 분들에게 큰 도움이 되리라 생각합니다. C언어 프로그래밍 기초 : 변수와 자료형 여기서는 C언어.. 더보기
C언어 프로그래밍 기초 : 변수와 자료형 여기서는 C언어로 프로그램을 작성하는데 있어서 가장 기본적인 요소들 중 하나라고 할 수 있는 변수 (variable)에 대해서 알아봅시다. 변수들의 종류를 지정하기 위한 다양한 자료형 (data type)들이 어떤 특징을 가지고 있는지에 대해서도 살펴보겠습니다. 이번 포스팅에서는 C언어 프로그램에 대해서 이야기합니다만, 여기서 다루는 내용들은 C++ 프로그램에서도 대부분 적용할 수 있습니다. 변수의 선언 컴퓨터 프로그램의 변수에 대해서 간단히 말하자면 데이터를 저장하기 위한 공간이라고 할 수 있습니다. 프로그램에서 사용하는 변수들은 메모리 혹은 RAM이라고도 부르는 주기억장치에서 할당받은 공간을 차지하게 됩니다. 그리고 프로그램 내의 여러 명령문에 따라서 변수들의 값이 달라지게 되죠. 다만 프로그램이 종.. 더보기
C/C++ 함수가 스스로를 부르는 재귀호출 여기서는 C언어 또는 C++ 프로그램에서의 재귀호출 (recursive call)에 대해서 다뤄보겠습니다. 재귀호출에 대해 간단히 말하자면, 특정한 함수가 스스로를 호출하는 과정을 말하는데요. 재귀호출의 예시와 더불어 주의해야 할 점에 대해서도 짚어보겠습니다. C언어나 C++ 프로그램에서 함수가 어떻게 정의되고 사용되는지 궁금하신 분들은 시작하기에 앞서서 다음 포스팅을 읽어보시면 큰 도움이 되리라 생각합니다. C언어 프로그래밍 기초 : 함수와 라이브러리 이번 포스팅에서는 C언어 혹은 C++를 이용해서 복잡하면서도 규모가 큰 프로그램을 작성하는데 필수적인 요소인 함수 (function)와 라이브러리 (library)에 대해서 알아봅시다. 함수를 정의하고 호출 swstar.tistory.com 원리와 알고리.. 더보기
수학 상식 : 표본평균의 중심 극한 정리 이번 포스팅에서는 모집단에서 유한한 갯수의 표본을 추출해서 평균값을 추정하는 상황에 대해 다뤄보겠습니다. 유한한 크기의 표준편차를 가지는 모집단이 있을 때, 표본평균의 값이 모집단의 평균에 비해 얼마나 차이가 날 수 있는지 살펴볼텐데요. 이를 결정하는 중요한 이론인 중심 극한 정리 (central limit theorem, 줄여서 CLT)에 대해서 알아봅시다. 먼저 평균, 분산 및 표준편차의 수학적인 정의를 알아둘 필요가 있습니다. 그리고 특정한 확률 분포를 따르는 모집단으로부터 유한한 갯수의 표본을 추출한 뒤 평균값을 구하면, 그게 모집단의 실제 평균과는 일반적으로 다르다는 사실도 인지할 필요가 있죠. 여기에 대해서는 다음 포스팅에 더 자세하게 소개되어 있습니다. 수학 상식 : 표본의 평균, 분산과 표.. 더보기