Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

отображение значения real


snoopy ©   (2006-01-29 22:27:00) 

можно ли сделать так, чтобы от значения типа real в тексте отобразилось только первые две цифры, т.е. целая часть и десятые (X,Y), если мона, то подскажите как


Ega23   (2006-01-30 14:44:00) [1]


> можно ли сделать так, чтобы от значения типа real в тексте
> отобразилось только первые две цифры, т.е. целая часть и
> десятые (X,Y), если мона, то подскажите как


Str + F1.


DimonS   (2006-01-30 13:27:00) [2]

FormatFloat('#.#', Твое число)

Самый простой вариант по-моему.

А в том же DBGride есть формат отображения данных у колонок. Введи #.# и все, если не ошибаюсь.


snoopy   (2006-01-30 12:23:00) [3]

правильно интерпретировал вопрос германн, мне надо получить число с одним знаком после запятой, правда меня теперь тоже интересует вопрос, заданный в [7]


msguns   (2006-01-30 12:08:00) [4]

Судя по [7] речь идет о представлении числа, содержащегося в поле датасета ?


нет   (2006-01-30 11:49:00) [5]

тогда вопрос, если я правильно понимаю, то значение digits в данном случае я устанавливаю равным 1, но какое значение мне придать параметру precision, я же не знаю сколько знаков будет содержать целая часть числа


Германн   (2006-01-30 02:46:00) [6]

В добавок. Я предпочитаю FloatToStrF.


Германн   (2006-01-30 02:43:00) [7]

<ТелепаторOn>Автору нужно вывести действительное число с одним знакоразрядом после запятой.</ТелепаторOff>


SekelaS   (2006-01-30 01:35:00) [8]

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

procedure TForm1.Button1Click(Sender: TObject);
var a:real;
begin
 a:=2342.453465543654;
 a:=trunc(frac(a/10)*100)/10;
 showmessage(floattostr(a));
end;


Если же нужно просто оставлять все целые и десятые, то это делается так:

procedure TForm1.Button1Click(Sender: TObject);
var a:real;
begin
 a:=2342.453465543654;
 a:=trunc(a*10)/10;
 showmessage(floattostr(a));
end;


---
www.n-admin.com - Russian portal for windows administrators


Джо   (2006-01-29 22:49:00) [9]

> snoopy   (29.01.06 22:27)
> только первые две цифры,

А что должно отображаться, если целая часть занимает более одного разряда?


з. танька   (2006-01-29 22:47:00) [10]

FormatFloat


Gero   (2006-01-29 22:46:00) [11]

Copy(FloatToStr(Number), 1, 3) или FloatToStr(RoundTo(Number, -1))


Наверх

Титульная страница Поиск, карта сайта Написать письмо