Что нового

Преобразование строки в число

mef-t

Осваивающий
Сообщения
306
Репутация
30
Добрый день.

Подскажите, как преобразовать строку в число.
При сравнении отрицательных чисел минимальным значением оказывается 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
 
Автор
mef-t

mef-t

Осваивающий
Сообщения
306
Репутация
30
Вооо, Number() как раз и искал. Как то упустил его, но верил, что он есть :smile:
Int видел, но он преобразует в целое, а у меня есть дроби.

Спасибо.
 
Верх