Ticaret fırsatlarını kaçırıyorsunuz:
- Ücretsiz ticaret uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Kayıt
Giriş yap
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
Hesabınız yoksa, lütfen kaydolun
Model boşluğu, normalizasyondan sonra bile kuyrukların kalmasıdır!
normalleşmeden sonra yazı yok... İnsanları yanlış yönlendirmeyin.
girmiyorum .... ama var
durum şu: Çift sayıyı normalleştiriyorum, terminalin global değişkenine yazıyorum, sonra okuyorum, tekrar normalleştiriyorum ve kuyrukları alıyorum!
sonunda - Bu şakaları yakalayacak gücüm yok - sadece aldım ve DoubleToStr(current,2) kullanarak zorla kestim
girmiyorum .... ama var
durum şu: Çift sayıyı normalleştiriyorum, terminalin global değişkenine yazıyorum, sonra okuyorum, tekrar normalleştiriyorum ve kuyrukları alıyorum!
sonunda - Bu şakaları yakalayacak gücüm yok - sadece aldım ve DoubleToStr(current,2) kullanarak zorla kestim
Bir çift değişkeni, örneğin 5 karaktere normalleştirdiyseniz, değişken 5 karakter saklar, yeniden yazdırma ve diğer durumlarda, değişkeni başka bir veri türüne aktarırsınız, bunun sonucunda bir kuyruk görünebilir .
ama normalleşme sonrası ikilide kuyruk yok...
Söve almamak için uygulama yerlerinde normalleştirme yapmanız gerekir, hesaplamalar sırasında yapamazsınız...
Bir çift değişkeni, örneğin 5 karaktere normalleştirdiyseniz, değişken 5 karakter saklar, yeniden yazdırma ve diğer durumlarda, değişkeni başka bir veri türüne aktarırsınız, bunun sonucunda bir kuyruk görünebilir .
ama normalleşme sonrası ikilide kuyruk yok...
Söve almamak için uygulama yerlerinde normalleştirme yapmanız gerekir, hesaplamalar sırasında yapamazsınız...
peki bu dönüşüm sürecinde kuyruk verebilir mi?
bilmiyordum
teşekkür etmek!
yani, örneğin bir dönüşüm yaparsam
peki bu dönüşüm sürecinde kuyruk verebilir mi?
bilmiyordum
teşekkür etmek!
NormalizeDouble tam olarak böyle çalışır (ve ilk MQL'den beri her zaman böyle çalışır)
Sayı 10 ile basamakların kuvvetiyle çarpılır, tamsayı biçimine dönüştürülür ( kesirli kısım atılır) ve sonra 10 ile basamakların kuvvetine bölünür.
Sorun ne? Şablon molası mı?
Kesirli kısmı atıyor mu? Yuvarlama yapılır.
NormalizeÇift(1.25,1) = 1.3
Kesirli kısmı atıyor mu? Yuvarlama yapılır.
NormalizeÇift(1.25,1) = 1.3
yani, örneğin bir dönüşüm yaparsam
peki bu dönüşüm sürecinde kuyruk verebilir mi?
bilmiyordum
teşekkür etmek!
Kesinlikle bu şekilde değil. İkili sistem != Ondalık sistem. İkili ondalık basamak değerleri: 0,5 / 0,25 / 0,125 / 0,0625 / 0,03125 vb. Bu tuğlalardan tüm ondalık basamakları toplamak imkansızdır. Örneğin, 0,3 ondalık sayısını doğru bir şekilde temsil etmek imkansızdır (yalnızca yaklaşık bir değer ekleyebilirsiniz), ikili sistemde ya biraz daha az ya da biraz daha fazla olacaktır. Ve böylece bu kuyruk ortaya çıkıyor.
Sadece 1/2 ^ herhangi bir kuvvete kalansız bölünebilen sayılar tam olarak temsil edilir.
Başka bir deyişle, ondalık basamakları ikili biçimde temsil etmeye çalıştığımızda sayıları çarpıtırız.
İşlemin sonucunu tam olarak yazmamak için 1/3'ün yuvarlanması gerekeceği gerçeğine alışkınız. Ancak üçlü sistemde == 0.1 işleminin tam bir temsili vardır. Üçlüye özgü olsaydık ve PC ondalık sayı ile çalıştıysa, 0,1 sayısı üçlü sisteme geri dönüştürüldüğünde rakamlardaki çöplere şaşırırdık.
Böyle bir benzetme:
İşlemin sonucunu tam olarak yazmamak için 1/3'ün yuvarlanması gerekeceği gerçeğine alışkınız. Ancak üçlü sistemde == 0.1 işleminin tam bir temsili vardır. Üçlüye özgü olsaydık ve PC ondalık sayı ile çalıştıysa, 0,1 sayısı üçlü sisteme geri dönüştürüldüğünde rakamlardaki çöplere şaşırırdık.
hepsi bu kadar
ancak bir nedenden dolayı, bir kuruş hesaplayıcı bile, hafızadan bir sayı okurken, orada yazılanları tam olarak verebilir.
1.23 kesirini yazdı ve tam olarak 1.23'ü kuyruksuz olarak geri aldı
ve işte bazı şakalar
teorik olarak, kullanıcı bir sayıyı ikili formatta temsil etmek gibi bir rutinden korunmalıdır.
<inek modu kapalı>