mef-t
Осваивающий
- Сообщения
- 306
- Репутация
- 30
Добрый день.
Подскажите, как преобразовать строку в число.
При сравнении отрицательных чисел минимальным значением оказывается 0, не число со знаком "-".
Это связано с тем, что в коде использую функцию StringSplit
Ниже код, результатом которого получаю "0", хотя если бы сравнивались числа, то получил бы "-10".
Просьба подсказать, как решить проблему наименее затратно.
Подскажите, как преобразовать строку в число.
При сравнении отрицательных чисел минимальным значением оказывается 0, не число со знаком "-".
Это связано с тем, что в коде использую функцию StringSplit
Ниже код, результатом которого получаю "0", хотя если бы сравнивались числа, то получил бы "-10".
Просьба подсказать, как решить проблему наименее затратно.
Код:
#include <Array.au3>
Dim $Fun[5] = [2, 4, 5, 500, 0]
Dim $matrix[2][5] = [[1, 3, 1, 0, 8],[-1, -2, -7, 0, -10]]
_ArrayAdd($matrix, _ArrayToString($Fun, '|'))
$arrTmp = matrix_to_arr($matrix, 1)
_ArrayDisplay($arrTmp)
ConsoleWrite(minelm($arrTmp) & @CRLF)
Func minelm(Const ByRef $arr)
$min = $arr[0]
For $i = 1 to UBound($arr) - 1
If $arr[$i] < $min Then
$min = $arr[$i]
EndIf
Next
Return $min
EndFunc
Func matrix_to_arr(Const ByRef $arr, $index)
Local $tRresult = ''
Local $iUBound = UBound($arr,2)
For $i = 0 To $iUBound - 1
$tRresult &= '|' & $arr[$index][$i]
Next
$tRresult = StringTrimLeft($tRresult, 1)
Return StringSplit($tRresult, '|', 2)
EndFunc