16-06-2017, Saat: 23:42
(Son Düzenleme: 16-06-2017, Saat: 23:44, Düzenleyen: Fesih ARSLAN.)
(16-06-2017, Saat: 23:28)serhat Adlı Kullanıcıdan Alıntı: Kısmen yaptım, ama 15,000 * 3 = 45,000 olması lazım fakat 45 olarak veriyor virgülden sonraki değerleri nasıl alabilirim?
function NoktaConvert(StrNokta: String): String; // Noktayı virgüle çevir begin Result := StringReplace(StrNokta, '.', ',', [rfReplaceAll, rfIgnoreCase]); end; procedure TForm4.Hesap(Sender: TObject); // Hesaplama var Fiyat, Adet: Real; begin if LV.Items.Count > 0 then begin With LV do begin Items.BeginUpdate; try for I := Items.Count - 1 downto 0 do begin Fiyat := StrToFloat(NoktaConvert(Items[I].SubItems[2])); Adet := StrToFloat(Items[I].SubItems[3]); Items[I].SubItems[4] := FloatToStr(Fiyat * Adet); end; finally Items.EndUpdate; end; end; end; end;
Merhaba Serhat Bey,
Kurmuş olduğunuz algoritmada mantıksal bir hata (fatal error
) var.Bu algoritmayı adımlayacak olursak;
Örneğin Tutar = 15.000,00 TL olsun, Adet = 3 olsun
NoktaConvert adımında Tutar = 15,000,00 olacaktır.
Fiyat * Adet = tahminimce 45 gibi bir sonuç olacaktır. (Test imkanım şu an için olmadığından sonuç konusunda net birşey söyleyemiyorum)
DelphiCan'dır!

