![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
проверить на интежер
Infinityx93 © (2007-06-08 18:32:00)подскажите плззз!!! как проверить строку нет ли там лишних символов, кроме цифр.
спасибо
Anatoly Podgoretsky (2007-06-11 19:11:00) [1]> Германн (11.06.2007 18:56:33) [33]
Он не про пятницы позабыл, а позабыл передать эстафету.
Германн (2007-06-11 18:56:00) [2]
> Anatoly Podgoretsky © (11.06.07 18:49) [32]
>
> Пусть еще и математические загадки разгадывает.
>
Проверить будет не на чём. MBO позабыл про пятницы :(
Anatoly Podgoretsky (2007-06-11 18:49:00) [3]Пусть еще и математические загадки разгадывает.
TUser (2007-06-11 17:34:00) [4]И штоб "ниаменьшее целое число, для записи которого на русском языке требуется не менее 50 слов" тоже понимало :)
{RASkov} (2007-06-11 15:43:00) [5]Круто!
ИИ курит :)
Virgo_Style (2007-06-11 14:46:00) [6]и курсов валют
Ega23 (2007-06-11 14:44:00) [7]Ага, и штобы поддержка римских цифр была.
G_M_S (2007-06-11 14:39:00) [8]
> а почему только на русском? ))
Дельное замечание: надо добавить в ТЗ подержку национальных языков!
Gydvin (2007-06-11 14:25:00) [9]
> G_M_S © (11.06.07 13:25) [25]
>
>
> > Сейчас кто-нибудь затребует дробные числа...
>
> Если уж писать серьезно - то пусть так же понимает "четыреста
> сорок четыре", например ;)))
а почему только на русском? ))
G_M_S (2007-06-11 13:25:00) [10]
> Сейчас кто-нибудь затребует дробные числа...
Если уж писать серьезно - то пусть так же понимает "четыреста сорок четыре", например ;)))
Углук (2007-06-11 12:51:00) [11]StrToIntDef?
G_M_S (2007-06-11 11:35:00) [12]
> Т.е. $FF не пройдёт?
$FF - шестнадцатиричное представление. нафик его учитывать?
Sapersky (2007-06-11 11:28:00) [13]function IsNumber(Const s : String) : Boolean;
Var n, nLen : Integer;
cSet : set of Char;
begin
nLen := Length(s);
If (nLen = 0) then begin Result := False; Exit; end;
cSet := ['0'..'9'];
If (s[1] = '$') then begin
cSet := cSet + ['A'..'F', 'a'..'f']; Result := (nLen > 1);
end else
If (s[1] = '-') then Result := (nLen > 1) else
Result := (s[1] in cSet);
If (not Result) then Exit;
For n:=2 to nLen do
If not (s[n] in cSet) then begin Result := False; Exit; end;
end;
Сейчас кто-нибудь затребует дробные числа...
Ega23 (2007-06-11 10:33:00) [14]
> Sapersky (10.06.07 10:25) [15]
> Да, это я не учёл.
>
> function IsNumber(Const s : String) : Boolean;
> Var n, nLen : Integer;
> begin
> Result := False;
> nLen := Length(s);
> If (nLen = 0) then Exit;
> If (s[1] in ['0'..'9']) or ( (s[1] = '-') and (nLen > 1)
> ) then begin
> For n:=2 to nLen do
> If not (s[n] in ['0'..'9']) then Exit;
> Result := True;
> end;
> end;
Т.е. $FF не пройдёт?
G_M_S (2007-06-11 09:54:00) [15]function IsValidInteger(src:String):boolean;
var
i:Integer;
begin
try
i := StrToInt(src);
result := true;
except
result := false;
end;
end;
Infinityx93 (2007-06-10 19:31:00) [16]так давайте его перепишем))). Спасибо всем!!!
Anatoly Podgoretsky (2007-06-10 18:41:00) [17]> Однокамушкин (10.06.2007 18:34:17) [17]
А это уже ошибка компилятора.
Однокамушкин (2007-06-10 18:34:00) [18]
> Правильный Вася (10.06.07 17:02) [16]
> а чем тебе 5Е4 не Integer? обычное 5*10^4
А теперь попытайтесь убедить в этом компилятор Delphi... :)
Правильный Вася (2007-06-10 17:02:00) [19]
> Е в строковом представлении целого числа? Это что-то новенькое
> в науке :)
а чем тебе 5Е4 не Integer? обычное 5*10^4
Sapersky (2007-06-10 10:25:00) [20]Да, это я не учёл.
function IsNumber(Const s : String) : Boolean;
Var n, nLen : Integer;
begin
Result := False;
nLen := Length(s);
If (nLen = 0) then Exit;
If (s[1] in ['0'..'9']) or ( (s[1] = '-') and (nLen > 1) ) then begin
For n:=2 to nLen do
If not (s[n] in ['0'..'9']) then Exit;
Result := True;
end;
end;