Функция Разложения числа - VB

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

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

Дана функция. Нужно разложить любое натуральное число на числа и потом эти числа сравнить и вывести максимальное. Программа должна быть универсальная разложить то разложил но как данные числа запомнить и сравнить?
Листинг программы
  1. Private Function Cet_zn(ByVal a As Integer)
  2. While a > 0
  3. s = a Mod 10
  4. a = a \ 10
  5. MsgBox (Str(s))
  6. Wend
  7. End Function
  8. Sub nn()
  9. Dim a As Integer
  10. a = InputBox("Введите число:")
  11. p = Cet_zn(a)
  12. MsgBox (Str(p))
  13. End Sub
help me...
не дождавшись ответа сделал не универсалку но только для 4 чисел. мб кому-то пригодиться
Листинг программы
  1. Private Function mod_cis(ByVal a As Integer)
  2. mod_cis = a Mod 10
  3. End Function
  4. Private Sub div_cis(ByVal a As Integer, ByRef div1 As Integer)
  5. div1 = a \ 10
  6. End Sub
  7.  
  8. Sub nn()
  9. Dim a As Integer
  10. Dim s As Integer
  11. Dim dl(4) As Integer
  12. Dim dlin As String
  13. Dim max As Integer
  14. Dim p As Integer, p1 As Integer, p2 As Integer, p3 As Integer, p4 As Integer, p5 As Integer
  15. a = Val(InputBox("Введите число:"))
  16. dlin = Len(Trim(Str(a)))
  17. If dlin = 4 Then
  18. p = mod_cis(a)
  19. div_cis a, p1
  20. p2 = mod_cis(p1)
  21. div_cis p1, p3
  22. p4 = mod_cis(p3)
  23. div_cis p3, p5
  24. dl(1) = p5: dl(2) = p4: dl(3) = p2: dl(4) = p
  25. For i = 1 To dlin
  26. If dl(i) > max Then max = dl(i)
  27. Next
  28. MsgBox (Str(a) + " Максимальное=" + Str(max))
  29. Else
  30. MsgBox ("Не 4-ное число.")
  31. End If
  32. End Sub

Решение задачи: «Функция Разложения числа»

textual
Листинг программы
  1. Function Max_Digit(BYVAL N As Long) As Byte
  2. While N
  3.   If Max_Digit < N Mod 10 Then Max_Digit = N Mod 10
  4.   N = N \ 10
  5. Wend
  6. End Function

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


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

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

14   голосов , оценка 3.786 из 5

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

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

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