Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.10.31;
Скачать: [xml.tar.bz2];

Вниз

Как узнать число-ли переменная S:String;   Найти похожие ветки 

 
Rentgen ©   (2004-10-13 10:48) [0]

Здравствуйте.
К делу:

var
S:String;
...
begin
//Как узнать число-ли переменная S?(пр.:S:="1999");
end;


 
Rentgen ©   (2004-10-13 10:50) [1]

Почему-то мне кажется, что есть способ не схожий с try-except


 
Reindeer Moss Eater ©   (2004-10-13 10:52) [2]

Если в строке все символы - цифры или разделители тысяч (кроме первого символа, могущего быть знаком), есть не более одного разделителя дробной части числа то эта строка почти наверняка является представлением числа


 
Ega23 ©   (2004-10-13 10:55) [3]

Val + F1


 
antonn ©   (2004-10-13 11:25) [4]

А можно из строки выковырять только цифры и делиметры. Будет число, даже если изначально там случайно пробел поставили.


 
Семен Сорокин ©   (2004-10-13 11:34) [5]

TryStrToInt, StrToIntDef


 
Reindeer Moss Eater ©   (2004-10-13 11:39) [6]

У числовых типов данных есть диапазон допустимых значений.
У строк допустимая длина - 2Гб


 
piople ©   (2004-10-13 11:48) [7]

Напиши функцию в которой попробуй строку посимволько сравнивать с множеством символов(0 до 9) и если что не так то результат функции борода, иначе все ок)))


 
icWasya ©   (2004-10-13 16:45) [8]

правильный ответ дал Ega23 ©[3]
Val + F1


 
jack128 ©   (2004-10-14 00:14) [9]

Ega23 ©   (13.10.04 10:55) [3]
icWasya ©   (13.10.04 16:45) [8]

не было оговорено, что имеется в виду именно ЦЕЛЫЕ числа. А для вещественных Val считает, что разделитель целой и дробной части - всегда точка.


 
Homa_Programer ©   (2004-10-14 02:35) [10]

а почему бы не использовать старый добрый, опробованный try..except???


 
GanibalLector ©   (2004-10-14 02:37) [11]

2 Homa_Programer ©
Вообще-то надо внимательно читать!!!См  [5]


 
tsalBSM   (2004-10-14 08:21) [12]

Изврат

function Func(S: string): Boolean;
var X:integer;
begin
Result := False;

for X := 1 to Length(S) do begin
  if (S[X] = "0") or
     (S[X] = "1") or
     (S[X] = "2") or
     (S[X] = "3") or
     (S[X] = "4") or
     (S[X] = "5") or
     (S[X] = "6") or
     (S[X] = "7") or
     (S[X] = "8") or
     (S[X] = "9") or
     (S[X] = ".") or
     (S[X] = #20) then continue else exit;
end;

Result := true;
end;


 
begin...end ©   (2004-10-14 08:27) [13]


> [12] tsalBSM   (14.10.04 08:21)

Ты про множества не слышал, что ли?


 
SergP.   (2004-10-14 09:00) [14]


>  [13] begin...end ©   (14.10.04 08:27)
>
> > [12] tsalBSM   (14.10.04 08:21)
>
> Ты про множества не слышал, что ли?


Он же написал что это ИЗВРАТ


 
begin...end ©   (2004-10-14 09:09) [15]


> [14] SergP.   (14.10.04 09:00)


> Он же написал что это ИЗВРАТ

А, понятно, я просто думал, что он всё с [1] по [11] извратом посчитал.


 
Ega23 ©   (2004-10-14 09:47) [16]

jack128 ©   (14.10.04 00:14) [9]

Ega23 ©   (13.10.04 10:55) [3]
icWasya ©   (13.10.04 16:45) [8]

не было оговорено, что имеется в виду именно ЦЕЛЫЕ числа. А для вещественных Val считает, что разделитель целой и дробной части - всегда точка.


А DecimaleSeparator тогда для чего?



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2004.10.31;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.48 MB
Время: 0.033 c
4-1095750788
sadman
2004-09-21 11:13
2004.10.31
Проверка корректности имени файла


11-1075492218
Insurge
2004-01-30 22:50
2004.10.31
TreeView


4-1096332243
qwant
2004-09-28 04:44
2004.10.31
Сделать дефрагментатор диска


3-1096325902
Mizanthrope
2004-09-28 02:58
2004.10.31
Сортировка записей в таблице


1-1097951236
kmi
2004-10-16 22:27
2004.10.31
Как определить, запущено ли приложение из IDE





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский