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

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

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 26.11.2008, 23:34   #1
Zeraim
Ra-Ra ?
Форумчанин
 
Аватар для Zeraim
 
Регистрация: 06.03.2008
Сообщений: 286
По умолчанию Str to Real и Real to Str

Наткнулся на такую проблемку, мне надо вещественные числа перегнать в стринг и соответственно обратно.
Долго сидев и ломав голову я накидал алгоритм который это делает...
Но то как я это сделал ужасно, а мне еще надо обратно в реал перегонять числа.. Может есть какой способ попроще. Я делал так:
Разбивал строку до запятой и после запятой на 2 куска. Потом сравнивал чары в кусках с массивом из чаров от 0 до 9, и по шагу цикла -1 определял число в виде интеджера, перегонял в реал. Результаты домножал на 10 в степени количества символов в разбитых строках и суммировал...
Выложил бы код, да он частично на бумаге 8)
Zeraim вне форума Ответить с цитированием
Старый 26.11.2008, 23:40   #2
VVM
Форумчанин
 
Аватар для VVM
 
Регистрация: 06.06.2007
Сообщений: 282
По умолчанию

А чем не нравятся StrToFloat и FloatToStr ?
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
  R: Real;
  Str: string;
begin
  R := 232.24234;
  Str := FloatToStr(R);
  R := StrToFloat(Str);
end;
Не важно, как часто вы падаете. Важно, как часто вы поднимаетесь. Винс Ломбарди.

Последний раз редактировалось VVM; 26.11.2008 в 23:43.
VVM вне форума Ответить с цитированием
Старый 26.11.2008, 23:43   #3
Terran
Участник клуба
 
Аватар для Terran
 
Регистрация: 28.11.2007
Сообщений: 1,521
По умолчанию

Цитата:
Сообщение от Zeraim Посмотреть сообщение
Наткнулся на такую проблемку, мне надо вещественные числа перегнать в стринг и соответственно обратно.
Долго сидев и ломав голову я накидал алгоритм который это делает...
Но то как я это сделал ужасно, а мне еще надо обратно в реал перегонять числа.. Может есть какой способ попроще. Я делал так:
Разбивал строку до запятой и после запятой на 2 куска. Потом сравнивал чары в кусках с массивом из чаров от 0 до 9, и по шагу цикла -1 определял число в виде интеджера, перегонял в реал. Результаты домножал на 10 в степени количества символов в разбитых строках и суммировал...
Выложил бы код, да он частично на бумаге 8)
Всё делается легко. Используйте функции FloatToStr и StrToFloat.
Всегда рад помочь!
Terran вне форума Ответить с цитированием
Старый 27.11.2008, 00:49   #4
Zeraim
Ra-Ra ?
Форумчанин
 
Аватар для Zeraim
 
Регистрация: 06.03.2008
Сообщений: 286
По умолчанию

Мдас _) Что-то я неочём _)
Zeraim вне форума Ответить с цитированием
Старый 27.11.2008, 01:07   #5
Alar
Александр
Администратор
 
Аватар для Alar
 
Регистрация: 28.10.2006
Сообщений: 17,501
По умолчанию

http://pblog.ru/?p=84 - еще вариации на тему конвертации типов, с помощью указателей.

Цитата:
Любой начинающий делфист написав эту процедуру расстроится, когда она не заработает, конечно, можно исправить это положение, написав свой или использовать сторонний модуль с функциями преобразования величин. В принципе, об этом я и хотел написать, как перевести переменную из одного типа в другую.

Используя указатели мы можем обращаться к любой ячейке в памяти и использовать размещённые там данные.
Alar вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Переменные REAL Terabit Паскаль, Turbo Pascal, PascalABC.NET 9 03.11.2008 21:26
Форматировние real MasterofCDM Общие вопросы Delphi 2 23.09.2008 10:02
int to str andrey4623 Общие вопросы C/C++ 2 04.02.2008 17:44
StringGrid to Real Nemesisking Помощь студентам 5 06.11.2007 13:00
как перевести из integer в real(и обратно), и из real в string(и обратно) Ga-sergey Общие вопросы Delphi 2 08.06.2007 21:13