Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Virgülden sonraki sıfırlar - çözüldü
#1
Hayırlı ramazanlar,

Parasal işlemler konusunda benzer bir çok konu açtım, halen sıkıntıları çözemedim, çarpma işlemi yaptırırken noktayı virgüle çevirip ürün adet * fiyat = sonuç buluyorum,

Sorunu örnek ile anlatmaya çalışacağım:

Karpuz kilosu 1,75 * 2 = 3,5 çıkıyor
Arabanın adeti 7,000 * 2 = 14 çıkıyor  (14.000) olması lazım virgülden sonraki atılan sıfırları nasıl göstere bilirim?




          
 for I := 0 to Items.Count - 1 do
        begin
          Fiyat := StrToFloat(NoktaConvert(Items[I].SubItems[3]));
          Adet := StrToInt(Items[I].SubItems[4]);
          Items[I].SubItems[5] := FormatCurr(',0.###', (Fiyat * Adet));
Cevapla
#2
Sonucu nerede gösteriyorsunuz?

“Do. Or do not. There is no try.”
Cevapla
#3
ondalık ayıracın virgül olduğu için 7,000 7 bin değil 7'dir 7 bin yazmak istiyorsan 7.000,000 ya da 7000,000 olarak yazmalısın
Cevapla
#4
Cevabı zaten soru başlığında vermişsiniz. Kurmanız gereken mantık. Önce virgülün pozisyonunu bulmak daha sonra kendisinden sonra gelen karakterler içinde sıfırları saydırmak.
daha önce ki sorularınızdan birinde nokta ve virgül sayısını nasıl alacağınıza dair bir çok örnek kod verildi.
Amatör Küme Bilgisayar Programcısı
WWW
Cevapla
#5
Merhaba,

FormatSettings.DecimalSeparator:=',';
(10.000,00)

FormatSettings.DecimalSeparator:='.';
(10,000.00)

Bu şekilde dener misin?
Cevapla
#6
Bu sorunu bir türlü çözemedim, onlarca versiyon denedim fakat hiçbiri olmadı.

0,75 TL
1,75 TL
22,30 TL
75.500 TL
79.550,30 TL bu ve benzeri fiyatları aynı işlemde kullandığımda sürekli hatalar alıyorum?
Cevapla
#7
(30-06-2017, Saat: 01:04)serhat Adlı Kullanıcıdan Alıntı: Bu sorunu bir türlü çözemedim, onlarca versiyon denedim fakat hiçbiri olmadı.

0,75 TL
1,75 TL
22,30 TL
75.500 TL
79.550,30 TL bu ve benzeri fiyatları aynı işlemde kullandığımda sürekli hatalar alıyorum?

Bence ne yapmak istediğinizi tam olarak anlatın örnek kasa kaydı programı yapıyorum kullanıcı klavyeden xxx rakamlarına sonra virgüle sonra virgülden sonra ki yy rakamlarını yazıyor kayıt edilmesi göstermesi gereken sonuç zzzz ama kaydetiği sonuc aaa deyin
bu rakamlar
0,75 TL (yetmiş beş kuruş)
1,75 TL (bir tl yetmiş beş kuruş)
22,30 TL (yirmi iki tl otuz kuruş)
75.500 TL (yetmiş beş bin beşyüz tl)
79.550,30 (yetmiş dokuz bin beş yüz elli tl otuz kuruş) mudur?

“Do. Or do not. There is no try.”
Cevapla
#8
(30-06-2017, Saat: 01:47)masteryoda Adlı Kullanıcıdan Alıntı: Bence ne yapmak istediğinizi tam olarak anlatın örnek kasa kaydı programı yapıyorum kullanıcı klavyeden xxx rakamlarına sonra virgüle sonra virgülden sonra ki yy rakamlarını yazıyor kayıt edilmesi göstermesi gereken sonuç zzzz ama kaydetiği sonuc aaa deyin
bu rakamlar
0,75 TL (yetmiş beş kuruş)
1,75 TL (bir tl yetmiş beş kuruş)
22,30 TL (yirmi iki tl otuz kuruş)
75.500 TL (yetmiş beş bin beşyüz tl)
79.550,30 (yetmiş dokuz bin beş yüz elli tl otuz kuruş) mudur?

Evet bu şekilde fiyat listesi; bu fiyatları aynı işlemde kullandığımda hatalar alıyorum, bir türlü toplama işlemini yaptıramıyorum. Yardımcı olursanız sevinirim.
Cevapla
#9
Merhaba,
Yapımış olduğunuz bu işlem;
Ekranda veri girişi esnasında mı kullanılıyor?
Tablodaki verileri ekranda gösterme aşamsında mı kullanılıyor?
Kullanıcının veri girişi esnasında gerçekleşiyor ise, veri giriş aşamasının optimize edilmesi gerekir. Eğer tablodaki verileri göstermek için kullanıyorsanız, verileri ekrana yansıtmadan önce bu işlem daha kolay yapılabilir.
Kolay gelsin.
Cevapla
#10
Selam; Listview deki var satış fiyatlarını adetle çarpıyorum toplam fiyatı yine listview işliyorum daha sonrasın tüm satışın toplam fiyatını almak istiyoum



for I := 0 to Items.Count - 1 do
       begin
         Fiyat := StrToFloat(Items[I].SubItems[3]); // FİYAT
         Adet := StrToInt(Items[I].SubItems[4]); /// ADET
         Items[I].SubItems[5] := FormatCurr(',0.###', (Fiyat * Adet)); // FİYAT * ADET = TOPLAM FİYATI



yaptıktan sonra örnek vererek açıklayayım:

Elma  22,75 * 5 = 113,75
Sakız  0,75 * 3 = 2,25
Araba 75.000,10 * 2 = 150.000,20

113,75 + 2,25 +  150.000,20 = bu ürünlerin toplamını almak istiyorum, Umarım anlatabilmişimdir.
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  AdoQuery ile ilgili bir sorun. (Çözüldü) Bay_Y 4 77 Dün, Saat: 10:58
Son Yorum: Bay_Y
  Fastreport İçindekiler Sayfası Oluşturma [ÇÖZÜLDÜ] bydelphi 1 236 18-03-2024, Saat: 12:11
Son Yorum: bydelphi
  Çok Satırlı Filtreleme [Çözüldü] bünyamin68 12 1.351 14-02-2024, Saat: 22:42
Son Yorum: mustafaozpinar
  [ÇÖZÜLDÜ] macos işletim sistemine program yazmak shooterman 5 512 02-02-2024, Saat: 09:54
Son Yorum: shooterman
  COZULDU veritabani prg yerine ne kullanabilirim. sadikacar60 8 773 29-01-2024, Saat: 18:41
Son Yorum: sadikacar60



Konuyu Okuyanlar: 1 Ziyaretçi