Visual BasicНаписать процедуру для нахождения отрицательных и положительных чисел из строки, состоящий из произвольного набора цифр и букв. *перевести полученное число в его двоичный код*найти максимальное из чисел
Вот пример реализации данной процедуры на Visual Basic:
Sub FindAndConvert(inputString As String) Dim numbers() As String Dim number As String Dim negativeNumbers As New List(Of Integer) Dim positiveNumbers As New List(Of Integer) ' Находим отрицательные и положительные числа For i = 1 To Len(inputString) If IsNumeric(Mid(inputString, i, 1)) Then number = Mid(inputString, i, 1) Do While IsNumeric(Mid(inputString, i + 1, 1)) Or Mid(inputString, i + 1, 1) = "-" i = i + 1 number = number & Mid(inputString, i, 1) Loop If number < 0 Then negativeNumbers.Add(number) Else positiveNumbers.Add(number) End If End If Next i ' Находим максимальное из чисел Dim maxNumber As Integer maxNumber = Math.Max(negativeNumbers.Max, positiveNumbers.Max) ' Переводим максимальное число в двоичный код Dim binaryString As String binaryString = Convert.ToString(maxNumber, 2) ' Выводим результаты MsgBox("Отрицательные числа: " & String.Join(", ", negativeNumbers.ToArray) & vbCrLf & _ "Положительные числа: " & String.Join(", ", positiveNumbers.ToArray) & vbCrLf & _ "Максимальное число: " & maxNumber & vbCrLf & _ "Двоичное представление максимального числа: " & binaryString) End Sub
Пример использования:
FindAndConvert("abc-123def5gh-67")
В данном случае процедура найдет отрицательное число -123 и положительные числа 5 и 67, найдет максимальное из них и переведет его в двоичный код.
Вот пример реализации данной процедуры на Visual Basic:
Sub FindAndConvert(inputString As String)Dim numbers() As String
Dim number As String
Dim negativeNumbers As New List(Of Integer)
Dim positiveNumbers As New List(Of Integer)
' Находим отрицательные и положительные числа
For i = 1 To Len(inputString)
If IsNumeric(Mid(inputString, i, 1)) Then
number = Mid(inputString, i, 1)
Do While IsNumeric(Mid(inputString, i + 1, 1)) Or Mid(inputString, i + 1, 1) = "-"
i = i + 1
number = number & Mid(inputString, i, 1)
Loop
If number < 0 Then
negativeNumbers.Add(number)
Else
positiveNumbers.Add(number)
End If
End If
Next i
' Находим максимальное из чисел
Dim maxNumber As Integer
maxNumber = Math.Max(negativeNumbers.Max, positiveNumbers.Max)
' Переводим максимальное число в двоичный код
Dim binaryString As String
binaryString = Convert.ToString(maxNumber, 2)
' Выводим результаты
MsgBox("Отрицательные числа: " & String.Join(", ", negativeNumbers.ToArray) & vbCrLf & _
"Положительные числа: " & String.Join(", ", positiveNumbers.ToArray) & vbCrLf & _
"Максимальное число: " & maxNumber & vbCrLf & _
"Двоичное представление максимального числа: " & binaryString)
End Sub
Пример использования:
FindAndConvert("abc-123def5gh-67")В данном случае процедура найдет отрицательное число -123 и положительные числа 5 и 67, найдет максимальное из них и переведет его в двоичный код.