Алгоритм Луна - проверка кредитных карт - Visual Basic .NET

Узнай цену своей работы

Формулировка задачи:

Мне надо создать программу, которая, при введении номера кредитки, проверяет, может ли эта карточка существовать. Это можно проверит по алгоритму Луна (https://ru.wikipedia.org/wiki/Алгоритм_Луна). Если может существовать, то выдается True. Я кое-что сделал, но мне всегда выдается true. Что я делаю не так?
Листинг программы
  1. Imports System.Collections
  2. Imports System.Collections.Generic
  3. Public Class Form1
  4. Dim numbers(1) As Decimal
  5. Private Function CheckNumber(number1 As Decimal()) As Boolean
  6. Dim suma As Decimal = 0
  7. Dim result As Boolean = False
  8. For i As Decimal = number1.Length - 1 To 0 Step -1
  9. Dim number2 As Decimal = number1(i)
  10. If result Then
  11. number2 = number2 * 2
  12. If number2 > 9 Then
  13. number2 = number2 - 9
  14. End If
  15. End If
  16. result += result
  17. result = Not result
  18. Next
  19. Return suma Mod 10 = 0
  20. End Function
  21. Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
  22. Dim numbertocheck As Decimal = numbers(1)
  23. numbertocheck = TextBox1.Text
  24. TextBox2.Text = CheckNumber(numbers)
  25. End Sub
  26. End Class

Решение задачи: «Алгоритм Луна - проверка кредитных карт»

textual
Листинг программы
  1. Private Function CheckNumber(number1 As Decimal()) As Boolean
  2.         Dim suma As Decimal = 0
  3.         Dim result As Boolean = False
  4.         For i As Decimal = number1.Length - 1 To 0 Step -1
  5.             Dim number2 As Decimal = number1(i)
  6.             If result Then
  7.                 number2 = number2 * 2
  8.                 If number2 > 9 Then
  9.                     number2 = number2 - 9
  10.                 End If
  11.             End If
  12.             suma += number2
  13.             result = Not result
  14.         Next
  15.         Return suma Mod 10 = 0
  16.     End Function

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 4.067 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы