2016年12月30日 星期五

Z2A vb 是否為15、33倍數

M5P01 判斷 S 11的倍數、15的倍數、33的倍數
 變位1   M5P01-1 是否15倍數 , 可以被5整除也可以被3整除
    Function M5P01(ByVal s As String) As String
        Dim c As Char = Strings.Right(s, 1)
        If c<>"0" and c<>="5" then Return "N"  '最後1位非05
        ' 所有位數的總和是3的倍數?
        M5P01 = "Y"
        Dim sum As Integer = 0
        For i = 1 To s.Length
            sum += Val(Mid(s, i, 1))
        Next i
        If sum Mod 3 <> 0 Then Return "N"
    End Function
變位2   M5P01_2 是否33倍數 , 可以被11整除也可以被3整除
    Function M5P01_2(ByVal s As String) As String
        M5P01_2 = "Y"
        Dim odd As Integer = 0, even As Integer = 0
        For i = 1 To s.Length
            If i Mod 2 = 0 Then
                even += Val(Mid(s, i, 1))
            Else
                odd += Val(Mid(s, i, 1))
            End If
        Next
        If Math.Abs(odd - even) Mod 11 <> 0 Then Return "N" '11
        If (odd + even) Mod 3 <> 0 Then Return "N" '3

    End Function

Related Posts:

  • Z2A練習:M3P11M3P11 : 103模P11 判斷是否為質數 Function M3P11(ByVal S As String) As String         Dim K As Integer = Val(S) &n… Read More
  • Z2A練習:讀檔架構 各題之讀檔架構省略,只提供一次如下  FileOpen(1, "in1.txt", OpenMode.Input)  FileOpen(2, "in2.txt", OpenMode.Input)  FileOpen(3, "out.txt", OpenMode.… Read More
  • Z2A練習:M5P02-smp2-學號 (2)類似題舉例2: 資商學院的學號有5位,第1碼為系碼,第2碼為年度,第3碼為班碼,後2碼為座號  系碼只能是SYZ其中之1,年度只能是2~5其中之一,班碼只能是1~3,座號一定是兩位01~50  讀入n列字串,判斷是否為正確的學號,正確則則輸出R,不正確則輸出E 解… Read More
  • Z2A練習:M3P12 M3P12 : 103模P12 解二元一次方程式 參考程式碼    Function M3p12(ByVal s As String) As String         Dim dt() = s.S… Read More
  • Z2A練習:M2P11M2P11 : 102模P11 字串中的阿拉伯數字 參考程式碼:    Function M2P11(ByVal s As String) As String         Dim num = "" … Read More

0 意見:

張貼留言