2009년 10월 26일
남이섬에서 다람쥐를 봤습니다.


여친님이랑 남이섬에서 오솔길을 걷던 중에 갑자기 튀어나온 녀석입니다.
갑자기 튀어나올땐 놀랐는데, 보니까 다람쥐더라구요.
뭔가를 먹고 있는 모습이 귀엽더군요.
아무래도 이날의 포토재닉은 다람쥐가 가져간듯 하네요!
# by | 2009/10/26 17:08 | Diray | 트랙백 | 덧글(1)


# by | 2009/10/26 17:08 | Diray | 트랙백 | 덧글(1)






# by | 2009/08/05 11:33 | Diray | 트랙백 | 덧글(3)
최근 동아리 신입생 교육에 대해서 골머리를 앓던중에 갑자기 이런생각이 들었다.
신입생들에게 과연 알고리즘을 왜 배워야하는지 설명하려면 어떻게 해야할까?
단순히 백과사전처럼 알고리즘이란
어떤 문제의 해결을 위해 컴퓨터가 사용 가능한 정확한 방법을 말한다. 알고리즘은 여러 단계의 유한한 집합으로 구성되는데, 여기서 각 단계는 하나 또는 그 이상의 연산을 필요로 한다.
이라고 설명해줘야할까?
그건 아니라고 본다. 분명히 이해도 못할 뿐더러 필요성도 못느낄것이리라는 생각이 들었다.
하여 고민중에 이런 생각이 들었다.
자 제군들 1부터 100까지 더하는 프로그램을 만들어라.
아마 대부분 다음과 같은 프로그램을 코딩할것이다.
#include <stdio.h>
#include <conio.h>int main(){
int sum, maxplus;
sum = 0;
maxplus = 100;
for(int i = 1; i <= maxplus; i++)
sum += i;printf("%d\n",sum);
getch();
return 0;
}
그러나 알고리즘을 알고 있다거나 조금 머리가 비상한 친구는 다음과 같이 코딩을 할 수도 있을 것이다.
#include <stdio.h>
#include <conio.h>int main(){
int sum, maxplus;
sum = 0;
maxplus = 100;
sum = (maxplus+1)*(maxplus/2);
printf("%d\n",sum );
getch();
return 0;
}
(x/2) * (x + 1) = r
(ex: 50 * 101 = 5050)

# by | 2009/07/27 11:48 | Development | 트랙백 | 덧글(17)
<input type="text" name="temp" id="temp" value="0" />
<input type="text" name="temp" id="temp" value="1" />
<input type="text" name="temp" id="temp" value="2" />
<input type="text" name="temp" id="temp" value="3" />
Request.Form("temp")(1) = 0
Request.Form("temp")(2) = 1
Request.Form("temp")(3) = 2
Request.Form("temp")(4) = 3
Dim arrRequestVar
Set arrRequestVar = Request.Form("temp")
arrRequestVar (1) = 0
arrRequestVar (2) = 1
arrRequestVar (3) = 2
arrRequestVar (4) = 3
# by | 2009/07/20 11:36 | Development | 트랙백 | 덧글(0)
저장프로시저를 통해 혹은 동적 쿼리를 이용하여 테이블을 생성할 때
같은 이름의 테이블이 존재하면 에러메세지와 함께 프로그램이 종료(해당 처리가 되어 있을 경우)가 되게 된다.
이를 막기 위해서는 두가지 가정을 할 수 있는데
P) 같은 이름의 테이블이 존재한다면
1. 해당 테이블을 삭제 하고 테이블을 새로 생성
2. 해당 테이블이 있으므로 생성하지 않음
이런경우 우리는 쿼리를 이용하여 두가지 경우 모두를 해결할 수 있다.
바로
IF EXISTS()
IF NOT EXISTS()
구문이다
이는 해당 조건을 만족하면 실행하고 그렇지 않을경우 실행하지 않는 것인데,
이를 이용하면 동적으로 테이블을 생성할 경우 중복 테이블을 방지 할 수 있다.
1. 해당 테이블을 삭제 하고 테이블을 새로 생성
IFEXISTS(SELECT name
FROM sysobjects
WHERE name = N'table_name'
AND type = 'U')DROP TABLE table_name
GO
CREATE TABLE table_name (
<column_1, sysname, c1> <datatype_for_column_1, , int> NULL,
<column_2, sysname, c2> <datatype_for_column_2, , int> NOT NULL)
GO
2. 해당 테이블이 없으면 테이블을 생성함
IFNOT EXISTS(SELECT name
FROM sysobjects
WHERE name = N'table_name'
AND type = 'U')BEGIN
CREATE TABLE table_name (
<column_1, sysname, c1> <datatype_for_column_1, , int> NULL,
<column_2, sysname, c2> <datatype_for_column_2, , int> NOT NULL)
END
예전에 작성해둔것이었는데 이게 은근히 헷갈린다.
하여 다시 포스팅을 했다.
# by | 2009/07/20 10:46 | DBMS | 트랙백 | 덧글(0)
| 상수 | 값 | 설명 |
| adBigInt | 20 | 8 바이트의 부호 있는 정수(DBTYPE_I8)를 나타낸다. |
| adBinary | 128 | 이진 값(DBTYPE_BYTES)을 나타낸다. |
| adBoolean | 11 | Boolean 값(DBTYPE_BOOL)을 나타낸다. |
| adBSTR | 8 | Null 종결 문자열(유니코드)(DBTYPE_BSTR)을 나타낸다. |
| adChapter | 136 | Child RowSet에서 Row를 식별하기 위해서 사용되는 4 바이트 Chapter 값(DBTYPE_HCHAPTER)을 나타낸다. |
| adChar | 129 | String 값(DBTYPE_STR)을 나타낸다. |
| adCurrency | 6 | Currency 값(DBTYPE_CY)을 나타낸다. Currency는 소수점 이하의 자릿수가 4개인 고정 자릿수이다. 이 값은 10,000으로 환산된 8바이트의 부호 있는 정수로 저장된다. |
| adDate | 7 | Date 값(DBTYPE_DATE)을 나타낸다. 날짜는 Double 형식으로 저장되며, 정수 부분은 1899년 12월 30일 이후의 날짜수이며 소수 부분은 하루 중 시간을 나타낸다. |
| adDBDate | 133 | 날짜 값(yyyymmdd)(DBTYPE_DBDATE)을 나타낸다. |
| adDBFileTime | 137 | 파일-시간 값(DBTYPE_DBFILETIME)을 나타낸다. |
| adDBTime | 134 | 시간 값(hhmmss)(DBTYPE_DBTIME)을 나타낸다. |
| adDBTimeStamp | 135 | 날짜-시간 스탬프(yyyymmddhhmmss에 10억분의 1초 단위가 추가된)(DBTYPE_DBTIMESTAMP)를 나타낸다. |
| adDecimal | 14 | 고정 정밀도와 크기로 나타낸 정확한 숫자 값(DBTYPE_DECIMAL)을 나타낸다. |
| adDouble | 5 | 배정도의 부동 소수점 값(DBTYPE_R8)을 나타낸다. |
| adEmpty | 0 | 지정된 값 없음(DBTYPE_EMPTY)을 나타낸다. |
| adError | 10 | 32 비트 오류 코드(DBTYPE_ERROR)를 나타낸다. |
| adFileTime | 64 | 1601년 1월 1일 이후의 1000만분의 1초 간격의 숫자를 표현하는 64 비트 값(DBTYPE_FILETIME)을 나타낸다. |
| adGUID | 72 | 전역 고유 식별자(GUID)(DBTYPE_GUID)를 나타낸다. |
| adIDispatch | 9 | OLE 개체에서 IDispatch 인터페이스에 대한 포인터(DBTYPE_IDISPATCH)를 나타낸다.참고 이 데이터 형식은 ADO에 의해서 현재는 지원되지 않는다. 이 데이터 형식의 사용은 예기치 않은 결과를 초래할 수 있다. |
| adInteger | 3 | 4바이트의 부호 있는 정수(DBTYPE_I4)를 나타낸다. |
| adIUnknown | 13 | OLE 개체에서 IUnknown 인터페이스에 대한 포인터(DBTYPE_IUNKNOWN)를 나타낸다.참고 이 데이터 형식은 ADO에 의해서 현재는 지원되지 않는다. 이 데이터 형식의 사용은 예기치 않은 결과를 초래할 수 있다. |
| adLongVarBinary | 205 | Long 이진 값(Parameter 개체만 해당)을 나타낸다. |
| adLongVarChar | 201 | Long String 값(Parameter 개체만 해당)을 나타낸다. |
| adLongVarWChar | 203 | Long Null 종결 문자열 값(Parameter 개체만 해당)을 나타낸다. |
| adNumeric | 131 | 고정 정밀도와 크기로 나타낸 정확한 숫자 값(DBTYPE_NUMERIC)을 나타낸다. |
| adPropVariant | 138 | 자동화 PROPVARIANT(DBTYPE_PROP_VARIANT)를 나타낸다. |
| adSingle | 4 | 단정도의 부동 소수점 값(DBTYPE_R4)을 나타낸다. |
| adSmallInt | 2 | 2 바이트의 부호 있는 정수(DBTYPE_I2)를 나타낸다. |
| adTinyInt | 16 | 1 바이트의 부호 있는 정수(DBTYPE_I1)를 나타낸다. |
| adUnsignedBigInt | 21 | 8 바이트의 부호 없는 정수(DBTYPE_UI8)를 나타낸다. |
| adUnsignedInt | 19 | 4 바이트의 부호 없는 정수(DBTYPE_UI4)를 나타낸다. |
| adUnsignedSmallInt | 18 | 2 바이트의 부호 없는 정수(DBTYPE_UI2)를 나타낸다. |
| adUnsignedTinyInt | 17 | 1 바이트의 부호 없는 정수(DBTYPE_UI1)를 나타낸다. |
| adUserDefined | 132 | 사용자 정의 변수(DBTYPE_UDT)를 나타낸다. |
| adVarBinary | 204 | 이진 값(Parameter 개체만 해당)을 나타낸다. |
| adVarChar | 200 | String 값(Parameter 개체만 해당)을 나타낸다. |
| adVariant | 12 | 자동화 Variant(DBTYPE_VARIANT)를 나타낸다. |
| adVarNumeric | 139 | 숫자 값(Parameter 개체만 해당)을 나타낸다. |
| adVarWChar | 202 | Null 종결 유니코드 문자열(Parameter 개체만 해당)을 나타낸다. |
| adWChar | 130 | Null 종결 유니코드 문자열(DBTYPE_WSTR)을 나타낸다. |
# by | 2009/07/03 11:35 | Web | 트랙백 | 덧글(2)
# by | 2009/07/02 16:03 | Development | 트랙백 | 덧글(2)
# by | 2009/06/25 09:16 | Fashion | 트랙백 | 덧글(3)
| 생김새가 고운 사람으로 머리가 비상하고 이론적인 사람이라 힘든 노동은 맞지 않고 본인도 하지 않는다. 성격이 외골수이고 급한데 발근 했다가도 금방 풀리는 것이 특징이다. 못 배웠어도 배운 사람 못지 않게 해박하나 이 사람이 살아가는데는 학벌이 필수이고 못 배우면 평생 후회하고 고생이 많이 따른다. 대개 외동이나 중간에서 많이 보는데 맏이로 태어났다면 맏이 역할은 못하고, 늦게라도 학문이나 기술을 익혀 머리로 먹고살아야 대우받고 편하다. 이 사람은 무슨 일이든 쉽게 생각하고 시작도 잘 하는데 걱정거리나 일이 있으면 밤새 잠 못 자고 고민도 잘 하며 어떤 일은 밤을 새더라도 끝을 마쳐야 직성이 풀리는 성격이다. 남과 대화 할 때도 얼떨결에 대답은 해놓고 뒤에 흔들리며 분명히 안 되는 줄 알면서도 머뭇거리며 따라다니다 나중에 배신도 잘 당하고 후회한다. 꼼꼼할 땐 엄청 꼼꼼한데 장기적인 것은 건성이고 일도 대충대충 일단 저지르고 보는 타입이라 이것저것 손은 많이 대는데 포기도 빠르고 결과가 확실한 것이 없으니 한가지라도 끈기 있게 밀고 나가는 근성을 길러라. 임기 응변에는 능하고 사람이 착해서 남의 부탁을 거절 못하고 할 수 있는 일이나 없는 일이나 일단 대답은 잘하지만 실천력이 부족하여 지키지 못할 때가 많다. 주의 할 것은 뒤가 없기 때문에 안좋은 일도 금방 잊어버리고 같은 상황이 되면 몇 번이고 반복하는 것이 문제이니 조심하고 처음 볼때는 좀 까다롭고 쌀쌀 맞은 것 같지만 알고 보면 온화하고 착하면 정직한 사람이다. 마음이 약해서 남의 초상집에 대신 우는 사람이고 돈을 빌려줘도 모질지 못해 받을 때는 힘이 드니 돈 거래는 안하는 것이 좋다. 인색할 때는 대단히 인색하지만 쓸데없이 엉뚱한 곳에 돈을 잘쓰고 고지식한 면이 있어 한번 마음먹으면 일편단심 내 마음 같이 하지만 세상물정을 잘 몰라 남에게 당하기도 잘한다. 이 사람은 팔자에 공짜 돈이 없으니 노력한 만큼 재물을 얻고 성격은 직선적에다 자존심은 강하지만 뒤가 없다. 투기 쪽은 패가 망신하고 사업은 가급적 안 하는 것이 좋지만 만약 한다면 호텔, 백화점, 서비스업이나 현금이 바로 되는 것, 재고 남지 않는 것, 중개 도매 역할 등 바로 눈에 보이는 사업은 괜찮고 제일 좋은 것은 직장생활이나 기술분야면 더 할 나위 없다. 공부를 많이 한 사람은 교직, 학원, 방송, 관광, 광고, 연구직, 한의 쪽이 잘 맞는다. 이 사람은 무슨 일이 있으면 우선 걱정부터 하는 타입인데 성격을 대범하게 가지는 것이 좋고 가끔은 체면이 깎이더라도 목적을 이루는데 필요하면 자존심도 버릴줄 알아야한다. 남이 조금만 잘해줘도 고맙게 생각하는 사람이기는 한데 정작 자신은 상대에게 진짜 할 말도 곤란한 것은 말을 못하고 우물쭈물 하는게 흠이고 남의 말에 귀가 얇으니 주관이 약한 것이 흠이다. 공부는 오래 동안 하는 것은 잘 안되고 잠깐 잠깐씩 해야 머리에 잘 들어오며 서기로 짝수 년에 더 잘되고 시험 운도 따라준다. 이 사람에게 맞는 대학은 연고대, 경희대, 외대, 중앙대, 서강대, 인하대, 이대, 성신대 등인데 공대 쪽이면 더 좋고 학과는 신문방송, 광고, 관광 등 통역이나 가이드, 스튜어디스 가 괜찮다. *寅,申(인,신)時생은 명예로 성공한다. *巳,亥(사,해)時생은 부인의 주장을 따라야 순탄. | ![]() |
# by | 2009/06/01 21:35 | Diray | 트랙백 | 덧글(3)
◀ 이전 페이지 다음 페이지 ▶