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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 10.06.2010, 23:13   #1
LinMax
Новичок
Джуниор
 
Регистрация: 10.06.2010
Сообщений: 2
Вопрос Преобразование дробного числа в денежный формат. Delphi

Как исправить программу, чтобы она работала для чисел с любым количеством цифр после запятой, а также и для целых чисел?

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;

type
TForm1 = class(TForm)
Label1: TLabel;
Edit1: TEdit;
Button1: TButton;
Label2: TLabel;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var n,s1,s2:string;
i:integer;
z:real;
begin
n:=Edit1.Text;
I:=pos(',',n);
{if (copy(n,i+3,1)='5') or (copy(n,i+3,1)='6') or (copy(n,i+3,1)='7')
or (copy(n,i+3,1)='8') or (copy(n,i+3,1)='9') then begin z:=STrToFloat(n);
z:=z+0.01; n:=FloatToSTR(z); end; }

s1:=copy(n,1,i-1);
s2:=copy(n,i+1,2);
Label2.Caption:=s1+' руб '+s2+' коп';
end;

end.
LinMax вне форума Ответить с цитированием
Старый 11.06.2010, 00:57   #2
RAZOR3
Пользователь
 
Регистрация: 25.04.2010
Сообщений: 38
По умолчанию

Код:
var n,s1,s2:string;
i:integer;
z:real;
begin
n:=Edit1.Text;
I:=pos(',',n);
{if (copy(n,i+3,1)='5') or (copy(n,i+3,1)='6') or (copy(n,i+3,1)='7')
or (copy(n,i+3,1)='8') or (copy(n,i+3,1)='9') then begin z:=STrToFloat(n);
z:=z+0.01; n:=FloatToSTR(z); end; }

s1:=copy(n,1,i-1);
s2:=copy(n,i+1,length(edit1.text));
Label2.Caption:=s1+' руб '+s2+' коп';
а что бы с целыми числами попробуй так
Код:
var n,s1,s2:string;
i:integer;
z:real;
begin
n:=Edit1.Text;
if pos(',',n)= 0 then
Label2.caption:=Edit1.text;
end;
RAZOR3 вне форума Ответить с цитированием
Старый 11.06.2010, 16:41   #3
LinMax
Новичок
Джуниор
 
Регистрация: 10.06.2010
Сообщений: 2
По умолчанию

большое спасибо!
LinMax вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Перевод дробного числа в строку пауэрлифтинг Общие вопросы Delphi 2 30.01.2010 20:18
загрузка дробного числа в регистр CPU NiCola999 Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 4 21.11.2009 23:19
Команда разделения дробного числа Drakulov Общие вопросы C/C++ 18 27.05.2009 10:05
Округлениче дробного числа Gon Паскаль, Turbo Pascal, PascalABC.NET 13 02.05.2008 09:56
Факториал от дробного числа RIO Помощь студентам 11 26.12.2007 18:36