Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Tenho um Memo1 que vai receber alguns números na qual quando estiver um número sozinho ele adiciona um ZERO antes deixando como no exemplo abaixo...
Exemplo Memo1:
21 1 59 5 89 2
11 5 22 57 9 88
O resultado seria Memo2:
21 01 59 05 89 02
11 05 22 57 09 88
Alguém teria uma ideia?
procedure TForm1.Button1Click(Sender: TObject);
var
i, k: Integer;
s: string;
begin
Memo2.Lines.Clear;
for i := 0 to Memo1.Lines.Count do
begin
s := Memo1.Lines*;*
for k := length(s) downto 1 do
if ((k = 1) or (s[k-1] = ' ')) and ((k = length(s)) or (s[k+1] = ' ')) then
insert('0', s, k);
Memo2.Lines.Add(s);
end;
end;
>
procedure TForm1.Button1Click(Sender: TObject);
var
i, k: Integer;
s: string; Memo2.Lines.Clear;
for i := 0 to Memo1.Lines.Count do
begin
s := Memo1.Lines*;*
for k := length(s) downto 1 do
if ((k = 1) or (s[k-1] = ' ')) and ((k = length(s)) or (s[k+1] = ' ')) then
insert('0', s, k);
Memo2.Lines.Add(s);
end;
end;
Cara, sem palavras... funcionou perfeitamente, muito obrigado mesmooooo ... Valeuuuu!!
Os números serão inseridos um a um no memo ou serão enviados em linhas? Se forem enviados em linhas, terá que quebrar a string num array por exemplo e testar cada valor para verificar os que forem menores que 10 para inserir a linha. Explica melhor o processo e o que pretende fazer.