새로운 버그를 발견하였습니다.. ㅜㅜ
역시 우리싸조.. 예리 하더군요.. 딴짓하다 걸렸는데.. ㅋㅋㅋ 바로 버그 발견해서 알려주데요..^^
우리 싸조도 창조아시더군요..^^
암튼 설명들어가용..^^
위 버젼으로 하시면.. 아시는 분은 아시겠지만.. ^^ 100000000000으로 넣으면.. 바로.. 뒤 8자리가 사라지더군요..^^ 즉 100,0 뭐 이렇식이던가.. 아마.. 비슷할것입니다..^^
문자:문,문1,임시글자; <--- 요서 임시글자.. 추가...
실수:문길,수,수1,금액; <--- 요서 금액이라는 실수 추가.. (주1참고..)
문길:=문자길이(에디트0.문자);
만일 (문길 >10 )
{
문:= 문자복사(에디트0.문자, 문길-8, 9);
문1:= 문자삭제(에디트0.문자, 문길-8, 9);
수:=문을수(문,0);수1:=문을수(문1,0);
금액:=수1*1000000000+수; <--- 요거 추가... (10자리이상의 문자를 실수로.. 변경합니다..)
// 잠깐 설명을 드리죠.. //
// 위 금액의 문자자를 9자리로 끝었습니다.. 그렇게 되면.. 앞자리가.. 9자리아래로 떨어지게 되죠..
//그렇기 때문에..앞자리 수자에 뒷자리를 잘라낸 자리수만큼 곱해주는 것입니다..
//예를 들어볼까용 123123456789 이란..숫자기 있습니다..
// 위명령처럼.. 뒷자리 9자리를 잘라보면.. 앞자리는 123 뒤자리는 123456789가 되죠..
// 만일 위문자를 실수화하여 앞자리수+뒷자리수 를 한다면... 처음과 수치가 달라지겠죠...
// 그렇키때문에..
// 앞자리수*1000000000+뒷자리수 와 같은 명령을 주는 것입니다..
창0.사용자함수.밑판표시(임시글자,수,수1);
}
아니면
{
금액:=문을수(에디트0.문자,0);
밑판0.제목:=수를교정문("###,###,###,###", 문을수(에디트0.문자,0));
}
밑판0.보이기:=참;
* 주1 *
제가 이것을 구현한이유는.. 에디트에 입력된 10자리 이상의 수를(수자로된 문자겠죠) 실수로 전환하기 위해서 였습니다... 그도중 구현한것이기에 추가했습니다..
//// 자그럼 또 무엇이 바뀌었는지 계속 보실까요..^^
//// 이번에는 사용자 함수입니다..
함수:밑판표시(문자:금액문; 실수:금액,금액1);
문자:임시문; <---- 여기에도 임시문이..?
임시문:="1"+ 금액문; //<----- 이것이 핵심임니다..
// 설명을 드리죠..^^
// 자.. 금액문은.. 뒷자리 9자리를 복사한것입니다..
// 예를 들어.. 뒷자리가.. 모두 0이라고 가정했을때.. 문자를 실수화 한다면..
// 당연히.. 0으로 값이 나올것입니다.. 즉.. 그것을 가져다 붙인들.. 제 값이 나올까요..
// 예로 봅시다..
// 123000000000 에디트에 입력했다고 해봅시다..
// 123 과.. 000000000 으로 나누어 질것입니다.. 123을 문1로.. 000000000을 문2로 해봅시다..
// 이것을 실수화 한다면.. 문1은.. 123이란 수가.. 문2는 당연히 0이라는 수로 반환 될것입니다..
// 이것을 합쳐봅시다.. 123000000000이 아닌.. 1230이란 문자로 반환 되겠죠..
// 그럼 위 명령은... ?
// 간단합니다.. 위 에서처럼.. 문1앞에다.. 1을 붙혀주는것입니다.. 그럼 문1은...
// 1000000000이되는것입니다..
// 그런 다음 명령을 볼까요..
임시문:= 문자삭제(수를교정문("###,###,###,###", 문을수(임시문,0)), 1, 1);
// 자 이 명령을 보시면 아시겠지만.. 위에서 1을 붙은 문자를 실수로 변환한후.. 다시 교정문으로
// 변환해주는 것입니다..
// 그런후.. 다시 앞에 붙여주었더.. 1을 싹둑 잘라내면 문제 끝이겠쬬..
// 즉.. 1,000,000,000 -> ,000,000,000 가 돼는것이죠..
// 다음명령..콜..
금액밑판.제목:=수를교정문("###,###,###,###", 금액1)+임시문;
// 마지막 명령이네요..
// 자.. 위에서 만들어진 뒷자리를.. 앞자리에 붙여 주면 되겠죠..
// 123,000,000,000가 되겠죠...
// 이렇게 하면.. 이전버그이던.. 9번째 자리수치가 0이면 발생되던 버그나.. 뒷자리가 모두 0일때
// 발생하는 모든 버그가 수정되는 것입니다..
<--- 소스는 여기서
|
|