Вниз
Скачать: 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.046 c
1-1122997110
sia
2005-08-02 19:38
2005.08.21
просмотр HTML


14-1122822870
WAP
2005-07-31 19:14
2005.08.21
>>>>> ОПРОС: Все о вашем мониторе! <<<<<


14-1122403270
Е-клмн
2005-07-26 22:41
2005.08.21
Ну, вот с верой вроде бы разобрались…


14-1122670237
Кручен-Верчен
2005-07-30 00:50
2005.08.21
Литературное открытие...


14-1122630536
Lexer
2005-07-29 13:48
2005.08.21
Отчётность АО должна быть в сети?




   Наверх