[.NET] 關於身分證產生器的一點小問題

看板Visual_Basic作者時間15年前 (2009/02/23 00:23), 編輯推噓2(205)
留言7則, 4人參與, 最新討論串1/1
最近剛碰視窗程式設計 想說自己先來寫些小程式 就先自己寫了身分證產生器 但是碰到一點小麻煩 以下是我的程式碼 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim a As Integer Dim b As Integer Dim c As Integer Dim d As Integer Dim x As Integer Dim f As Integer Dim g As Integer Dim h As Integer a = Fix((9 - 0 + 1) * Rnd()) + 0 b = Fix((9 - 0 + 1) * Rnd()) + 0 c = Fix((9 - 0 + 1) * Rnd()) + 0 d = Fix((9 - 0 + 1) * Rnd()) + 0 x = Fix((9 - 0 + 1) * Rnd()) + 0 f = Fix((9 - 0 + 1) * Rnd()) + 0 g = Fix((9 - 0 + 1) * Rnd()) + 0 h = Fix((9 - 0 + 1) * Rnd()) + 0 If h = 10 - (i + k * 9 + t * 8 + a * 7 + b * 6 + c * 5 + d * 4 + x * 3 + f * 2 + g) Mod 10 Then TextBox1.Text = j & t & a & b & c & d & x & f & g & h End If End Sub i與k代表縣市的代碼十位數與各位數 j為縣市 t為性別 a b c d x f g 為流水號 h 為驗證碼 小弟不知是哪裡出錯 TextBox1一直無法顯示最終結果 但是如果拿掉if 就可以正常執行 請幫小弟看看哪裡錯了 感謝各位前輩 註: 使用語言為VB2005 專業版 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 192.192.114.39 ※ 編輯: ilsc 來自: 192.192.114.39 (02/23 00:30)

02/23 00:41, , 1F
text1.text=str(...)轉成字串?
02/23 00:41, 1F

02/23 04:58, , 2F
很簡單 因為你產生的不一定是合法的身份證字號
02/23 04:58, 2F

02/23 04:58, , 3F
而你又沒有在產生不合法時回頭叫它重生一個
02/23 04:58, 3F

02/23 04:59, , 4F
或者有另一個想法是 h 可以由其他數字算出來
02/23 04:59, 4F

02/23 04:59, , 5F
具體怎麼算就自己研究了
02/23 04:59, 5F

02/23 08:46, , 6F
驗證碼一定是最後用公式算的 不是用亂數決定的
02/23 08:46, 6F

02/23 09:12, , 7F
感謝各位前輩 已經成功解決了 :D
02/23 09:12, 7F
文章代碼(AID): #19eNm2I- (Visual_Basic)