NPSC補完計劃

登入註冊帳號.

請輸入帳號, 密碼以及預計登入時間
進階搜尋  

最新消息:

歡迎光臨NPSC補完計劃

+ NPSC補完計劃 » NPSC國中組 » NPSC2001國中組決賽
 [VB] NPSC 2001 決賽 pD 有效號碼

作者 主題: [VB] NPSC 2001 決賽 pD 有效號碼  (閱讀 1148 次)

lini

  • 高級會員
  • ****
  • 文章數: 101
    • 檢視個人資料
[VB] NPSC 2001 決賽 pD 有效號碼
« 於: 十一月 29, 2009, 07:31:11 pm »

代碼: [選擇]
Sub main()
    Open "valid.in" For Input As #1
    Open "valid.out" For Output As #2
    f = ""
    Do
        Input #1, n
        If n = "***" Then f = f & " " & n: Exit Do
        If n = "*" Then
            f = f & " " & n
            Input #1, sn, en
            Input #1, echr
            smn = IIf(sn < en, sn, en)
            bn = IIf(smn = sn, en, sn)
            tf = 0
            For i = smn To bn
                If chkValid(i) = True Then tf = tf + 1
            Next
            f = f & " " & tf & " " & echr
        End If
    Loop
    Print #2, Replace(Trim(f), " ", vbCrLf)
    Close
End Sub

Function chkValid(n)
    v = True
    For i = 1 To Len(n)
        For j = 1 To (n)
            If i <> j And Mid(n, i, 1) = Mid(n, j, 1) Then v = False
        Next
        If Mid(n, i, 1) = "0" Then v = False
    Next
    chkValid = v
End Function
« 上次編輯: 十一月 29, 2009, 07:34:32 pm 由 lini »
記錄
+ NPSC補完計劃 » NPSC國中組 » NPSC2001國中組決賽
 [VB] NPSC 2001 決賽 pD 有效號碼