|
VFP ·R¥ÎªÌªÀ°Ï ¥»°Q½×°Ï¬° Visual Foxpro ·R¥ÎªÌ¸gÅç¥æ¬yªº¦a¤è, ½Ð¦h¦h§Q¥Î"·j´M"ªº¥\¯à, ¥ý¬d¬Ý¬Ý¦³µL«e¨Ò¥i´`, ¦pªGÁÙ¦³¤£À´ªº¦Aµo°Ý. ³¡¥÷¥DÃD¦³ªþ¥[ÀÉ®×, ¶·¥ýµù¥U¦¨¬°ªÀ°Ï©~¥Á¤~¥i¥H¤U¸ü.
|
¤W¤@½g¥DÃD :: ¤U¤@½g¥DÃD |
µoªí¤H |
¤º®e |
garfield Site Admin
µù¥U®É¶¡: 2003-01-30 ¤å³¹: 2157
²Ä 1 ¼Ó
|
µoªí©ó: ¬P´Á¤G ¤G¤ë 22, 2022 4:41 pm ¤å³¹¥DÃD: ¤T«H°Ó»È±b¸¹Àˬd½X |
|
|
ºâÓÀˬd½X¦³»Ýn¥Î2Ó°Ñ·Óªºªí®æ¶Ü?
ÀH«K¶ñ¤@Ó¤]¦³10¤À¤§1ªº¾÷²v²q¤¤°Ú.
¥N½X: |
macc='1504930686133'
mm = 12345
? '¤T«H°Ó»È±b¸¹Àˬd½X,§tª÷ÃB'+TRANSFORM(mm)+'=',macc,'==>',chksum3sing(macc,mm)
*¤T«H°Ó»È±b¸¹Àˬd½X,§tª÷ÃB, 2ӰѼÆ,1±b¸¹,2ª÷ÃB
*¶Ç¦^ȬO±b¸¹+1½XÀˬd½X
FUNCTION chksum3sing
LPARAMETERS macno , mmoney
*³oÓ±b¸¹¥[¤WÀˬd½Xªºµ{¦¡Åçºâ¥i¥H¨ìºô§}¥h¬d http://www.augustana.ualberta.ca/~mohrj/algorithms/checkdigit.html
*
* 0 1 2 3 4 5 6 7 8 9
*0 0 1 2 3 4 5 6 7 8 9
*1 1 5 7 6 2 8 3 0 9 4
*2 5 8 0 3 7 9 6 1 4 2
*3 8 9 1 6 0 4 3 5 2 7
*4 9 4 5 3 1 2 6 8 7 0
*5 4 2 8 6 5 7 3 9 0 1
*6 2 7 9 3 8 0 6 4 1 5
*7 7 0 4 6 9 1 3 2 5 8
LOCAL mf[8]
mf[1]='0123456789'
mf[2]='1576283094'
mf[3]='5803796142'
mf[4]='8916043527'
mf[5]='9453126870'
mf[6]='4286573901'
mf[7]='2793806415'
mf[8]='7046913258'
* 0 1 2 3 4 5 6 7 8 9
*0 0 1 2 3 4 5 6 7 8 9
*1 1 2 3 4 0 6 7 8 9 5
*2 2 3 4 0 1 7 8 9 5 6
*3 3 4 0 1 2 8 9 5 6 7
*4 4 0 1 2 3 9 5 6 7 8
*5 5 9 8 7 6 0 4 3 2 1
*6 6 5 9 8 7 1 0 4 3 2
*7 7 6 5 9 8 2 1 0 4 3
*8 8 7 6 5 9 3 2 1 0 4
*9 9 8 7 6 5 4 3 2 1 0
LOCAL mop[10]
mop[1]='0123456789'
mop[2]='1234067895'
mop[3]='2340178956'
mop[4]='3401289567'
mop[5]='4012395678'
mop[6]='5987604321'
mop[7]='6598710432'
mop[8]='7659821043'
mop[9]='8765932104'
mop[10]='9876543210'
LOCAL minv
minv='0432156789'
LOCAL mr_acno
mr_acno = reverse_str(macno) + reverse_str(TRANSFORM(mmoney,'@L 99999999'))
LOCAL i,mcheck
mcheck=0
FOR i=1 TO LEN(mr_acno)
*?? SUBSTR(mr_acno,i,1),'op='+TRANSFORM(mcheck+1),'mf['+TRANSFORM(i%8+1)+']='+TRANSFORM(VAL(SUBSTR(mr_acno,i,1))+1),SUBSTR(mf[i%8+1],VAL(SUBSTR(mr_acno,i,1))+1,1)
mcheck = VAL(SuBSTR( mop[mcheck+1] , VAL(SUBSTR(mf[i%8+1],VAL(SUBSTR(mr_acno,i,1))+1,1))+1,1))
*?? '='+TRANSFORM(mcheck)+','
next
*mcheck = VAL(SUBSTR(minv,mcheck+1,1))
mcheck = SUBSTR(minv,mcheck+1,1)
*?? 'end:',TRANSFORM(mcheck)
*RETURN macno+TRANSFORM(mcheck)
RETURN macno+mcheck
**
FUNCTION reverse_str
LPARAMETERS mid
RETURN RIGHT(mid,1)+IIF(LEN(mid)=1,'',reverse_str(LEFT(mid,LEN(mid)-1)))
|
_________________ §Q¥Î>>·j´M<<ªº¥\¯à·|¤ñ°ÝªºÁÙn§Ö±o¨ìµª®×.
garfield ¦b ¬P´Á¤T ¤G¤ë 23, 2022 11:49 am §@¤F²Ä 1 ¦¸×§ï |
|
¦^³»ºÝ |
|
|
¤p¿à
µù¥U®É¶¡: 2004-12-27 ¤å³¹: 470
²Ä 2 ¼Ó
|
µoªí©ó: ¬P´Á¤G ¤G¤ë 22, 2022 7:08 pm ¤å³¹¥DÃD: Re: ¤T«H°Ó»È±b¸¹Àˬd½X |
|
|
garfield ¼g¨ì: | ?
ÀH«K¶ñ¤@Ó¤]¦³10¤À¤§1ªº¾÷²v²q¤¤°Ú.
|
10¤À¤§1ªº¾÷²v²q¤¤; ¤£´N¬Oªí¥Ü¨¾¿ù²v90%
¤£¦n¶Ü?
Àˬd½X; ¤£´N¬O¥Î¨ÓÀËÅç¸ê®Æªº¥¿½T©Ê;·í¸ê®Æ¿é¤J¿ù»~
¦³90%ªº¾÷·|³Q¬D¥X¨Ó;¦³¤°»ò¤£¦n©O? |
|
¦^³»ºÝ |
|
|
garfield Site Admin
µù¥U®É¶¡: 2003-01-30 ¤å³¹: 2157
²Ä 3 ¼Ó
|
µoªí©ó: ¬P´Á¤G ¤G¤ë 22, 2022 10:27 pm ¤å³¹¥DÃD: |
|
|
§Ú¬Oı±oÀˬd½X¯à¥Îpºâ¾÷´N¯àºâ¥X¨Ó´N¦n,
¥Î¤F¹ï·Óªí¤~¯àºâ¥X¨Ó, ¤]¤Ó½ÆÂø¤FÂI, ¤S¤£¬On°µ¥[±K,
¤£ª¾¥L̸ê°T¤Hû¦³¦ó¯S®í¦Ò¶q. _________________ §Q¥Î>>·j´M<<ªº¥\¯à·|¤ñ°ÝªºÁÙn§Ö±o¨ìµª®×. |
|
¦^³»ºÝ |
|
|
|
|
±z µLªk ¦b³oÓª©±µoªí¤å³¹ ±z µLªk ¦b³oÓª©±¦^ÂФ峹 ±z µLªk ¦b³oÓª©±½s¿è¤å³¹ ±z µLªk ¦b³oÓª©±§R°£¤å³¹ ±z µLªk ¦b³oÓª©±¶i¦æ§ë²¼ ±z µLªk ¦b³oÓª©±ªþ¥[ÀÉ®× ±z µLªk ¦b³oÓª©±¤U¸üÀÉ®×
|
Powered by phpBB © 2001, 2005 phpBB Group ¥¿Å餤¤å»y¨t¥Ñ phpbb-tw ºûÅ@»s§@
|