Как переставить цифры числа так, чтобы образовалось максимальное и минимальное числа, записанные теми же цифрами - VB
Формулировка задачи:
Дано натуральное число N. Переставить его цифры так, чтобы образовалось максимальное и минимальное числа, записанные теми же цифрами.
Решение задачи: «Как переставить цифры числа так, чтобы образовалось максимальное и минимальное числа, записанные теми же цифрами»
textual
Листинг программы
- Option Explicit
- Private Sub Form_Load()
- Dim I As Long, Min As Long, Max As Long
- Calc Val(InputBox("Введите число")), Min, Max
- MsgBox Format$(Min, "Минимальное 0") & vbNewLine & Format$(Max, "Максимальное 0")
- End Sub
- Private Sub Calc(Inp As Long, OutMin As Long, OutMax As Long)
- Dim i1 As Long, i2 As Long, ch As String, o As String
- o = CStr(Inp)
- Do
- If Mid$(o, i1 + 1, 1) > Mid$(o, i2 + 1, 1) Then
- ch = Mid$(o, i1 + 1, 1)
- Mid$(o, i1 + 1, 1) = Mid$(o, i2 + 1, 1)
- Mid$(o, i2 + 1, 1) = ch
- End If
- If i2 = Len(o) - 1 Then i1 = i1 + 1: i2 = i1 + 1 Else i2 = i2 + 1
- Loop While i2 < Len(o)
- OutMin = Val(o): OutMax = Val(StrReverse(o))
- End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д