|
창조 팁 - '창조' 에 관한 팁을 올리는 곳입니다. 다수의 이미지가 필요하시면 아래 '이미지 자료실' 에 업로드 후 불러와 주세요.. |
| Posted by Anonymous | 2002-09-17 01:12:59, Hit : 6862 | |
|
|
|
존댓말 없습니다 ;;;
'이넘 역시나 -_-;; 건방으로 찜쪄먹을 넘이군'하고 읽어주시길.
-----------------
먼저 파일에서 읽은 것이 아닌, 일반 16진이라 가정한다.
* 파일에서 추출한 16진은 순서가 반대로 되어 있다. 관련 파일 억새스 함수를 참조하기 바람.
16진 = 2진
1 = 0001
2 = 0010
3 = 0011
...
9 = 0101
A = 0110
B = 0111
C = 1100
D = 1101
E = 1110
F = 1111
에.. 대강 이렇다. ;; 그러면 이렇게 바꿔주면 된다.
문자열을 한자씩 자른 다음에 계속 바꿔준다. ;;; (무식하지만 별 방법이 없다)
그러면 2진으로 된 재미없는 결과물이 튀어나오는데, 여기서 끊으면 2진만 튀어나온다.
덤으로 10진으로 바꾸는 것도 알려주도록 하겠다.
먼저 제곱이 되는지 안되는지 확신을 하지 못하므로
제곱함수가 있다고 가정하고 ;; 하도록 한다.
* 소스가 100% 맞는다는 보장은 없다. 문법에 맞도록, 함수 이름도 바꾸고 해야 할 것으로 보인다. 주석은 달아놓았으니 조금만 지식이 있다면 별 무리 없을 듯하다. 알고리즘이지, 다른게 중요한것이 아니다. ;; (또 그핑계다 -_-)
* 사용자함수0.제곱함수는 기준과 제곱수를 얻어 실수로 되돌려준다. 2^13이라면, 2가 기준이고 13이 제곱수. (맞는 용어인지는 모른다)
실수 임시1, 십진결과, 임시2;
문자 이진결과, 임시3;
// '이진결과'에는 아까 그 결과물, 재미없는 문자 0,1 들이 잔뜩 들어있따 ;;
임시1 := 사용자함수0.제곱함수(2, 문자열길이(이진결과)); // 그러면 2에 문자열길이를 제곱한... (10바이트라면 2의 10승이 되는 셈이다).
임시2 := 0;
반복 (임시1 = 1) // 한지가 오래되어 헷갈린다. 중요한 것은 임시 1이 1이 되면 반복문을 한 번 더 돌고 나가야 한다는 사실이다.
{
임시3 := 문자열자르기(이진결과, 임시2, 1); // 이진결과 문자열에서 임시2 위치에서 1바이트 자른다.
십진결과 := 십진결과 + (문을수(임시3,0)*임시1); // 곱해서 넣는다. 문을수 함수는 알고 있으리라 여기고 넘어간다. (아스키 코드 얻는 함수는 절대 아니다) 0 이면 결과는 십진결과 자신이 될 것이다.
임시2 := 임시2 /2; // 다음 연산을 위해 2로 쪼갠다. 2진법을 안다면 왜 쪼개는지도 이해하리라.
임시2 := 임시2 + 1; // C라면 임시2++; 이렇게 하겠지만 ;;
}
이렇게 돌리고 나면 십진 결과물에는 이름 그대로 10진법으로 변환한 결과물이 남게 된다.
* 노가다식 변환법이니 더 효율적인 방법이 있으면 그것을 쓰기 바란다. |
|
|
정윤부 2002-10-21 PM 10:03:52 |
|
|
|
헉.. 어렵다.. |
|
|
지상현 2003-02-26 PM 4:09:19 |
|
|
|
정수를16문
이라는 함수도 알아두시고... 반대의 경우입니다. |
|
|
지우개 Expert 3.0 제작자 : 천호성 님 [LINK] |
|
|
|
대박로또2005 제작자 : 최재일 님 [LINK] |
|
|
1 | 박종훈 님 | 15292 점 | |
2 | 지상현 님 | 8809 점 | |
3 | 손상진 님 | 7388 점 | |
4 | 권선중 님 | 6060 점 | |
5 | 이진백 님 | 5174 점 | |
|
|
|
가입일 | 닉네임 |
05/31 | 김동률 |
03/31 | 홍형기 |
09/01 | o00pp99oo |
12/27 | 이재민 |
11/20 | 이희철 |
|
|
|
|
. |
. |
. |
|