변경사항
------------------------------------------------------------------
11. 11. 2
------------------------------------------------------------------
- BigInteger.h헤더 파일에서 N값을 모두 32로 바꾸었습니다.
- __int64형을 long long형으로 바꾸었습니다.
- int형으로부터 생성/변환이 64비트환경에서도 잘 작동하게 됩니다.
------------------------------------------------------------------
11. 10. 1
------------------------------------------------------------------
- StringtoBigInteger 함수 이름을 stob로 바꾸었습니다.
- ToString 함수 이름을 btos로 바꾸었습니다.
- CompareTo 함수 이름을 compare로 바꾸었습니다.
------------------------------------------------------------------
11. 9. 26
------------------------------------------------------------------
- radix_b[22]의 숫자를 제대로 바꾸었습니다.
------------------------------------------------------------------
11. 9. 25
------------------------------------------------------------------
- double dabble 알고리즘을 n진법에 대해 일반화 하였습니다.
------------------------------------------------------------------
11. 9. 17
------------------------------------------------------------------
- 출력 알고리즘을 double dabble 알고리즘으로 바꾸었습니다.
- << 쉬프트 함수에 blk 초기화 부분을 추가하였습니다.
------------------------------------------------------------------
11. 9. 17
------------------------------------------------------------------
- add, subtract, multiply, divide, mod 함수를 추가하였습니다.
- 각 함수별로 0에 대해서도 잘 작동 되도록 조정하였습니다.
------------------------------------------------------------------
11. 9. 15
------------------------------------------------------------------
- 변환 함수 부분을 수정하였습니다.
operator int();
operator int() const;
이렇게 두개였던 변환 함수를 const가 들어간 함수로
통일하였습니다.
------------------------------------------------------------------
11. 9. 14
------------------------------------------------------------------
- 무의미한 const를 삭제하였습니다.
- 0의 정의를 바꿨습니다. 불필요한 할당, 해제를 줄이기 위해서
입니다.
len = 1 -> len = 0
blk = Allocate(1) -> blk = NULL
blk[0] = 0 -> x
sign은 그대로
- ++, -- 연산자의 내부를 바꿨습니다.
기존에는 내부에서 *this += 1 을 호출하였지만,
이제는 따로 함수를 만들어 속도 향상에 기여하였습니다.
- 0의 정의를 바꾸면서 0을 파괴할 때, 에러가 나는 경우가
발생합니다. 파괴자 부분을 수정하였습니다.
- explicit 지시어를 생성자에서 제거하였습니다.
------------------------------------------------------------------
11. 9. 9
------------------------------------------------------------------
- BigInteger.h 안에서 using namespace std;를 삭제하였습니다.
- cmpResult를 삭제하였습니다. 정수형을 리턴합니다.
( A.CompareTo(B) 에서 A가 크다면 1을, 같다면 0, B가 크다면
-1을 리턴합니다.
------------------------------------------------------------------
11. 8. 30
------------------------------------------------------------------
- BigInteger형이라는 단어 자체가 자주 쓰이게 되면 타이핑하는데
짜증을 유발 할 수 있습니다.
따라서, bigint라고 사용해도 되게 하였습니다.
ex) bigint a;
a = 123213213213213;
cout << a << endl;
------------------------------------------------------------------
11. 8. 18
------------------------------------------------------------------
- BlkInit 함수를 추가하였습니다.
blk 배열을 0으로 초기화하는 함수입니다.
- BlkCopy 함수를 추가하였습니다.
blk 배열을 복사하는 함수입니다.
- blk를 할당, 재할당 할 때, 0으로 초기화 하지 않습니다.
0으로 초기화 하지 않아도 연산과정에 지장을 주지 않는것이
대부분입니다.
0으로 초기화를 해야한다면 BlkInit함수를 호출하면 0으로
초기화 할 수 있습니다.
'프로젝트 > 큰수 클래스(Big Numerics)' 카테고리의 다른 글
[BigInteger] 목차 (1) | 2011.07.14 |
---|---|
[BigInteger - 19] 맺음 및 배포 (1) | 2011.07.14 |
[BigInteger - 17] 문자열로 입력받기 (0) | 2011.07.14 |
[BigInteger - 16] 문자열로 출력하기 (0) | 2011.07.12 |
[BigInteger - 16] 나눗셈(Part 3) (0) | 2011.07.11 |