Вниз
Скачать: CL | DM;

Работа с строкой   Найти похожие ветки 

 
vigo   (2005-08-02 11:50) [0]

Добрый день!
Есть небольшая задачка по обработке дробной части числа. Если др.часть, грубо говоря, целая, то есть "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+"");

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


 
Jeer ©   (2005-08-02 12:03) [1]

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

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


 
Lexer ©   (2005-08-02 12:06) [2]

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


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


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

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


 
Lexer ©   (2005-08-02 12:48) [4]

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


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


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

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



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.027 c
1-1122584384
Mameluke
2005-07-29 00:59
2005.08.21
Фокус ввода


14-1122538370
Choovak
2005-07-28 12:12
2005.08.21
Символы


3-1121323310
Max4
2005-07-14 10:41
2005.08.21
Редактирование записи.


14-1122753871
syte_ser78
2005-07-31 00:04
2005.08.21
Что значит "инсталировать"?


14-1121535734
Piter
2005-07-16 21:42
2005.08.21
Метро




   Наверх