Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.10.2012, 18:30   #1
hon
Форумчанин
 
Регистрация: 08.06.2011
Сообщений: 693
Смущение Преобразовать строку в число

У меня такая задача: преобразовать строку в вещественное число. Делаю так:
Код:
function StrToFloat(Str: string): real;
var
  I, Code: Integer;
begin
  { Get text from command line }
  Val(Str, I, Code);
  { Error during cnversion to integer? }
  if code <> 0 then
    Writeln('Error at positon: ', Code)
  else
    StrToFloat:=I;
end;
Все работает нормально, если отправить целое число. Но стоит отправить вещественное, например: '10.5' (например StrToFloat('10.5')), как выскакивает Error at position: 3 (порядковый номер точки). Где ошибка?
hon вне форума Ответить с цитированием
Старый 10.10.2012, 18:31   #2
Luuzuk
Форумчанин
 
Аватар для Luuzuk
 
Регистрация: 18.01.2012
Сообщений: 975
По умолчанию

В русской локали разделителем целой и дробной части является запятая, а не точка. Замените точку на запятую, и будет вам мешочек щастья)
Благодарить в репутацию. Проклинать — туда же
Luuzuk вне форума Ответить с цитированием
Старый 10.10.2012, 18:37   #3
hon
Форумчанин
 
Регистрация: 08.06.2011
Сообщений: 693
По умолчанию

Цитата:
Сообщение от Luuzuk Посмотреть сообщение
Замените точку на запятую, и будет вам мешочек щастья)
Не помогает. Тоже самое. Ошибка там же.
hon вне форума Ответить с цитированием
Старый 10.10.2012, 18:41   #4
badnum23
Пользователь
 
Регистрация: 10.10.2012
Сообщений: 22
По умолчанию

У вас I переменная типа Integer, а надо сделать Real
badnum23 вне форума Ответить с цитированием
Старый 10.10.2012, 18:44   #5
hon
Форумчанин
 
Регистрация: 08.06.2011
Сообщений: 693
По умолчанию

badnum23, спасибо. Получилось.
hon вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
преобразовать число в строку с нулями в начале T_I_T_A_N PHP 3 13.10.2010 09:45
Число как текст преобразовать в число agregator Microsoft Office Excel 5 28.04.2010 06:08
столбец преобразовать в строку 0mega Microsoft Office Excel 6 03.02.2010 07:29
преобразовать число Cpluser Общие вопросы C/C++ 1 20.12.2009 14:53
Программа Вводит символьную строку и число N и выводит строку, состоящую из первых N символов (С++) Yulai Помощь студентам 1 11.05.2009 11:39