본문 바로가기

컴퓨터219

cubic spline interpolation cubic spline은 주어진 점을 매끄럽게 연결하는 알고리즘이다. 왜 cubic 이냐 하면, 두 점을 잇는 곡선을 3차 다항식(a0 + a1x + a2x2 + a3x3)으로 사용하기 때문이다. 즉, 다시 말해, 서로 떨어져 있는 두 점 사이를 연결해야 하는데(그래서 interpolation), 그 연결하는 선을 3차 다항식으로 만들고자 하는 것이다. 이와 같은 목적에 부합하는 알고리즘 중 널리 사용되는 것의 원리는 다음과 같다. 우리가 갖고 있는 점은 위의 녹색점 뿐이라고 하자. 그 중간을 곡선으로 매끄럽게 연결하고 싶다. 즉, 각 데이터 xi, xi+1은 곡선 Si로 연결을 시키는데, 각 Si가 3차 다항식이라고 가정하는 것이다. 이 상황에서, 각 xi+1에서 두 곡선 Si와 Si+1이 부드럽게 연.. 2010. 1. 11.
파일 목록 가져 오기 일반화 시키기 python의 glob과 같은 기능, 즉 정해진 경로 안에 있는 파일 목록을 모두 얻어 오는 기능은 빈번하게 사용되는 기능임에도 불구하고 STL이나 MFC/API에는 이에 관한 기능이 하나의 함수로 제공되지 않는 것으로 보인다. 대신 FindFirstFile, FindNextFile API를 이용하여 파일 목록을 얻어갈 수는 있다. 파일 목록을 얻어갈 때, 얻어 갈 파일의 속성으로 주로 확장자를 사용하는 경우가 많다. 즉, 확장자가 jpg 인 것이나 txt 인 것들을 얻어가는 경우처럼. 또는 특정 파일 속성, 가령 FILE_ATTRIBUTE_ARCHIVE와 같은 속성을 검사할 수도 있기는 한데, 어쨌거나 파일의 특성에 대하여 확장자나 이러한 속성만을 사용하여 파일 목록을 얻어간다는 것은 융통성이 없다. .. 2010. 1. 9.
영어 듣기 반복 프로그램 이 프로그램은 내가 영어 듣기 공부를 하기 위해 만든 것이다. 사용법은 mp3 파일을 부른 후, 재생을 하면서 받아 쓰기를 하면 된다. 받아 쓰는 내용은 자동으로 저장이 된다. Control + Space 키를 누르면 반복 구간이 옆으로 이동하게 된다. 설치는 압축을 풀면 나오는 RepeatAgain.exe 파일을 통해 할 수 있으며, 프로그램은 델파이로 만들어 졌고, 소스까지 올리므로 수정/변경해서 사용할 사람은 마음껏 사용해도 된다. 2010. 1. 5.
명확하지 않게 다가오는 컴파일 에러 메세지들과 그 뜻 글에 대한 공지 만약 검색 엔진에 컴파일 에러 메세지를 입력하여 이 글을 읽게 되었다면, 에러 메세지와, 에러가 난 코드를 답글로 달아 주세요. 같이 풀어 봅시다. 컴파일러의 에러 메세지를 보고 그 원인을 곧바로 생각하기가 가끔 어려울 때가 있다. 하지만 에러가 난 곳을 제대로 찾거나 조금만 들여다 보면 물론 컴파일러 제작자들의 노고에 감사하지 않을 수 없을만큼 에러 메세지의 의미가 명확해 지는데, 이 글은 그와 같은 경우들에 대해서 살펴 보도록 한다. 내가 작업하며서 만나게 될 그와 같은 경우들을 정리하는 것이기 때문에 꽤 오랜 기간에 걸쳐 추가/수정이 이루어질 것으로 생각하고 있다. 사용 컴파일러에 대한 표시는 다음을 따른다. VC6 : Visual Studio 6.0 VC9 : Visual Stud.. 2009. 12. 30.