Geçenlerde bitirdiğim bi programcık var... Döviz Kurlarını http://www.tcmb.gov.tr/kurlar/today.html adresinden indirip tüm kurları alıyor. Bunların değerlerini Tlistview yardımıyla gösteriyorum...
Şimdi siteden gelen kur verileri örneğin 1 USD = 1.3944 YTL olarak geliyor. Ben bunu ' YTL' ye kadar olan bölümünü trim ettirip string olarak tuttuktan sonra bunlarla bölme işlemi yapmam lazım. Beceriksizlikten midir yoksa imkansızlığından mıdır bilmiyorum strtofloat işimi görmedi. ben de strtodouble diye bi fonksiyon yazdım. Buraya kadar herşey güzel...
string olarak gelen "1.3944 YTL" yi double olarak "1,3944" alıyorum.
Sıkıntı burdan sonra başlıyor... EUROnun YTL karşılığını (1,8045) USDnin YTL karşılığına (1,3944); bölmem icabediyor ancak 1,8045 div 1,3944 yaptırırken
Kod: Tümünü seç
floattostr(strtodouble(euro) div strtodouble(usd))
hatası veriyor.compiler yazdı:[Error] Unit1.pas(297): Operator not applicable to this operand type
bana lazım olan şey şu : "1,8045 YTL" stringini "1.3944 YTL" string'ine bölmek ve sonucu da string olarak edit1.text e yazdırmak. ŞİMDİDEN KOLAY GELSİN + Teşekkürler
Kod: Tümünü seç
function strtodouble(str : string) : double;
var x,a:string;
i:integer;
begin
x :='';
a :='';
for i:=1 to length(str) do
begin
a := copy(str,i,1);
if a = '.' then a := ',';
x := x + a;
end;
result := strtofloat(x);
end;