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

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

Работа с строкой [D7, WinXP]


vigo ©   (2005-08-02 11:50:00) 

Добрый день!
Есть небольшая задачка по обработке дробной части числа. Если др.часть, грубо говоря, целая, то есть "0.1" и т.п., то её "дополнить" нулем, то есть "0.10". Написал код, но не нравиться, кол-во используемых переменных, каюсь (сильно не бить):
var
s, s1 : string;
i, z: integer;
begin
s := '100.5'; s1 := '';
if pos('.', s) > 0 then
 for i := 1 to length(s) do
   if s[i] = '.' then
     begin
      z := i + 1;
      repeat s1 := s1 + s[z]; z := z + 1; until s[z] = '';
     end;
if length(s1) = 1 then s := s + '0';
ShowMessage(''+s+'');

Подскажите ещё какие-нить варианты.


vigo   (2005-08-02 12:58:00) [1]

все понял, то бишь s := Format('%.2f', [StrToFloat(s)]);
большое спасибо


Lexer   (2005-08-02 12:48:00) [2]

> vigo   (02.08.05 12:45) [3]
> А если s не константа?


 d := Любое число;
 Label1.Caption := Format('%.2f', [d])


vigo   (2005-08-02 12:45:00) [3]


> Lexer ©   (02.08.05 12:06) [2]

А если s не константа?


Lexer   (2005-08-02 12:06:00) [4]

Может это подойдет?
s := Format('%.2f', [100.5])


Jeer   (2005-08-02 12:03:00) [5]

>Если др.часть, грубо говоря, целая

Это что-то новое в математике ?


Наверх

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