반응형

전체 652

c언어 재귀 함수(recursive function)

글의 주제와 상관은 없지만 프로그래밍을 잘하기 위한 필요한 능력 중에 하나가 단기기억력이라고 생각된다. 수천, 수만 줄의 코드에서 연관된 코드들을 살펴볼 때 단기 기억력이 좋다면 까먹고 다시 돌아가는 일이 적어지기 때문이다. 단기 기억력은 결국은 집중력과 연관되는데 아무튼 프로그래머는 참 에너지 소비가 많은 직종 중에 하나라고 생각된다.그리고 개인적인 경험에 비춰보면 대부분의 프로그래밍을 하는데 있어서 알고리즘은 필수는 아니지만 게임프로그래밍과 같이 수학적 베이스를 요구 하는 프로그램을 만드는데 있어서 알고리즘을 잘 다루는 것은 큰 이점이 된다. 이 포스팅에서 다룰 재귀 함수 또한 다양한 알고리즘의 기본 토대가 되는 개념이다.그럼 이 글의 주제인 재귀함수는 무엇인가?쉽게 말해 자기 자신을 호출하는 함수를..

OSI 7계층 이해하기

네트워크를 공부하는 첫 관문 중에 하나가 OSI 7계층을 이해하는 것입니다.OSI(Open System Interconnection) 7계층은 국제표준기구(ISO)에서 제시한 네트워크 모델입니다.그러면 이러한 표준은 어떤 것이며 이를 지정하는 이유는 무엇일까요?예를들어 우리가 전기를 사용하기 위해 콘센트에 꼽는 돼지코 모양은 어떤 전자제품이라도 동일하게 되어 있습니다. 만약 제조사마다 규격을 아무렇게나 만들면 문제가 발생하겠죠? 이것이 표준의 필요성입니다.이렇게 표준을 정하는 기구가 생기게 되었고 제품을 만들 때 이런 기구에서 권장하는 표준을 따르는 것입니다. 물론 표준기구에서 제시했다고 해서 꼭 따르라는 법은 아닙니다만 안따르면 손해겠죠.컴퓨터(PC), 태블릿, 스마트폰 등등 네트워크에 연결된 모든 기..

네트워크 2017.07.13

엑셀 중복값 제거 제대로 이해하기

오늘은 엑셀 중복값 제거에 대해서 알아보려고 합니다.좀 더 정확히 말하면 중복된 데이터가 없도록 만드는 것입니다.예를들어 침대, 침대, 의자, 세탁기, TV, 침대 이렇게 데이터들이 나열되어 있을 때 침대가 세번 언급되어 중복되어 있습니다.중복을 제거하면 침대, 의자, 세탁기, TV 이렇게 되는 것입니다.엑셀에서는 보통 데이터들을 표에 넣어 다루기 때문에 중복을 검사할 부분이 표의 특정 열 하나만 일 수도 있고 연관된 여러 열들을 합쳐서 검사할 수도 있습니다. 쉽게 말해서 핵심은 표의 열을 기준으로 중복을 검사한다는 것입니다.그럼 구체적인 예를 들어 설명하겠습니다.엑셀 중복값 제거다음과 같이 3 개의 열을 갖는 표가 있을 때 중복을 제거하려고 합니다. 이 때 검사 기준을 명확히 해야하는데 우선 NO(일련..

엑셀 2017.07.12

pdf 엑셀 변환 간단히 해결하기

pdf 파일을 엑셀 파일로 변환하기 전에 한가지 짚고 넘어가야 할 것이 있다.우리가 엑셀로 변환할 pdf 파일의 내용이 어떤 형식이냐 하는 것이다.일반적으로 pdf 파일의 내용이 격자(셀)들로 이루어진 표와 같은 형식이어야 엑셀파일로 변환이 의미가 있기 때문이다.물론 단순히 문장 문단들로 이루어진 설명문 종류의 pdf 파일이라도 엑셀파일로 변환이 가능하지만 이런 변환은 큰 의미가 없고 차라리 워드나 한글과 같은 포맷으로 변환하는 것이 의미있을 것이다. 그럼 이제부터 pdf 파일을 엑셀로 변환하는 방법을 알아보도록 하겠다.pdf 엑셀 변환아래 준비된 pdf 파일의 내용을 보면 격자(셀) 형식의 표가 있다.사실 이 pdf 파일은 엑셀파일로 부터 변환된 파일이다. ※ 참고 : 엑셀 파일을 pdf 파일로 만드는..

엑셀 2017.07.11

티스토리에서 Daum 포토업로더는 Flash Player 10에 최적화 되어 있습니다. 해결 방법

티스토리 포스팅을 하다가 사진을 올리려 할 때 갑자기 "Daum 포토업로더는 flash player 10에 최적화 되어 있습니다. 최신 버전의 flash를 설치하신 후 다시 시도해주세요."라는 문구가 뜨면서 사진을 올리지 못할 때가 있습니다.분명 어제까지는 잘되었고 브라우저나 다른 설정을 바꾼적도 없는데 이런 경우가 생기더군요.개인적으로 이 문구가 왜 뜨는지 의심되는 것은 있습니다. 바로 크롬 브라우저를 사용하고 크롬 아이디를 사용하며 동기화 서비스를 이용하는 경우 입니다. 그리고 스마트폰이나 PC의 웹브라우저에서 이전에 방문했던 페이지의 주소를 지우는 경우 간혹 브라우저의 설정이 의도치 않게 바뀌게 되는 것 같습니다.이유야 어쨌든 이 문제를 해결해보도록 하겠습니다. (크롬브라우저)먼저 크롬 브라우저의 ..

파페포포 메모리즈 아날로그 감성을 자극하는 책(도서, 만화)

시대가 시대인지라 감성도 디지탈화 되버리는 것 같은 느낌이 든다.예전에는 거리에서 울려퍼지는 슬픈 발라드 음악에 잠시라도 마음속 그리움을 살짝 끄집어 내기도 했었던 것 같다.그런데 언제부턴가 강한 비트와 중독적인 음악만 들리기 시작하고 인터넷과 유튜브에서는 짧고 강렬하고 자극적인 콘텐츠가 넘쳐나고 있어서일까? 가끔 나도 뭔가를 급하게 그리고 빨리 이루고자 하면서 여유를 잃어가고 아날로그 보다는 디지털이 익숙해져 가는 자신을 발견한다.예전엔 안그랬는데 하면서도 세상이 변하는 흐름이 너무 빠르다 보니 아날로그 감성은 시대 흐름에 맞지 않는 다는 생각이 들 수 밖에 없는 것 같다.이런 생각이 깊어갈 무렵 예전에 선물받아 놓은 책을 꺼내 들었다. 파페포포 메모리즈... 사실 이 책은 선물 받고 거의 보질 않았었..

관심사/도서 2017.07.09

엑셀 COUNTA 함수 이해와 활용하기

엑셀에서 COUNT 계열의 함수들은 공통적으로 지정한 범위 내에서 셀의 개수를 세어주는 함수입니다.이 때 함수 이름의 뒤에 붙는 접미사에 따라서 셀의 개수를 세는 방식이 달라집니다.기본 함수인 COUNT 함수는 숫자가 있는 셀의 갯수를 세어주고 COUNTIF 함수는 조건에 맞는 셀을 COUNTBLANK는 빈 셀의 갯수를 세어줍니다. 다음은 각 함수들을 사용한 모습입니다.각 함수를 차례대로 살펴보면 셀 범위에 숫자값을 갖는 셀은 4개만 있으므로 COUNT 함수의 결과는 4가 나옵니다. COUNTIF의 조건 2보다 큰 숫자는 3, 5 두개로 2가 나오고 지정된 범위에서 빈 셀은 하나이므로 COUNTBLANK의 결과 1이나옵니다.그리고 오늘 공부할 엑셀 COUNTA 함수는 비어있지 않은 셀을 세어주는 함수입니..

엑셀 2017.07.08

파이썬(python) 플라스크(flask) 설치와 기본 예제

앞으로 플라스크를 사용해야할 듯 싶어서 설치를 하려고 보니까 엥? 이미 설치가 되어 있었다.기억은 안나는데 내가 사용하는 파이썬이 아나콘다여서 이미 설치가 되어 있는 것인지 아니면 예전에 내가 설치했던 것인지 기억이 나지 않는다.아나콘다 홈페이지 가서 살펴보니 기본적으로 설치되어 있는 것 같았다. 파이썬3에서 플라스크를 사용하려면 아나콘다 최신버전을 설치하던지 아니면 아나콘다에서 플라스크(flask) 버전을 바꾸는 방법을 사용하면 된다.아나콘다 플라스크아나콘다를 설치함으로서 이렇게 플라스크는 간단히 설치된다.파이썬으로 어떤 프로젝트를 시작하든 가장 기본이 되는 것은 가상환경 설정이다.여기서 가상환경은 파이썬 3.3이상의 버전에서는 vevn이라는 도구를 사용하여 설정할 수 있는데 프로젝트 별로 라이브러리의..

엑셀 평균구하기 함수 AVERAGE, AVERAGEIF

엑셀 평균구하기 함수에 대해서 알아보겠습니다.상식적으로 생각해서 엑셀에서 평균을 구하는 방법은 모든 데이터를 더해서 더한 데이터 갯수로 나누어 주면 됩니다.이 상식적인 방법은 아주 간단해 보이지만 실제로는 SUM 함수와 COUNT 계열 함수를 사용하여 약간 복잡한 수식을 세워야할 수 있습니다.다행히 엑셀에는 평균구하기 함수가 마련되어 있습니다.(AVERAGE, AVERAGEIF, ...) 우선 엑셀 AVERAGE 함수를 사용하여 평균을 구하는 예를 살펴보겠습니다.엑셀 AVERAGE 함수AVERAGE(데이터1, 데이터2, .......) 데이터 - 단일 값 또는 평균을 구하려는 값들의 범위가 될 수 있다.단일 값은 숫자 또는 숫자를 가진 셀이 될 수 있고값들의 범위는 숫자 배열 또는 숫자를 가진 셀 범위가..

엑셀 2017.07.06

엑셀 sumproduct 함수 이해와 응용

엑셀 sumproduct 함수를 설명하기 전에 product가 무엇을 뜻하는지 잠시 설명하고 넘어가겠습니다.수학을 싫어하시는 분들도 계시겠지만 product는 벡터의 내적(inner product)과 외적(cross product)을 의미하는 용어입니다.특히 sumproduct는 내적과 관계가 있습니다. 그렇다고 내적을 공부할 필요는 없습니다. 단지 어떻게 동작하는지만 알면 되니까요.쉽게 말해 좌표 (a, b, c)와 (d, e, f)가 있을 때 두 좌표를 내적하면 ad+be+cf가 됩니다.그럼 이제 sumproduct 함수를 살펴보겠습니다.엑셀 sumproduct다음은 파란 범위와 빨간 범위를 SUMPRODUCT 함수에 인수로 전달한 결과입니다.32가 나왔군요. =SUMPRODUCT(B2:B4, C2:..

엑셀 2017.07.05
반응형