Hatalar, hatalar, sorular - sayfa 739

 
ivandurak :

Bit alanları için optimize edin, bu durumda fazladan geçiş olmayacaktır.

Örneğin:

 input int bp= 0 ;
int a= 0 ;
int b= 0 ;
Start()
{
 switch(bp)
   {
     case 0 : a= 0 ; b= 0 ; break ;
     case 1 : a= 0 ; b= 1 ; break ;
     case 2 : a= 1 ; b= 0 ; break ;
     default : a= 1 ; b= 1 ; break ;    
   }
}

ve verilen parametrelerde optimize edin, bu örnek için bp 0'dan 3'e optimize edilmiştir

 
ivandurak :
Sadece mümkün olup olmadığına dair kararı yazmayı unuttun.
Hiçbir şeyi unutmadım :) Nasıl doğru hareket edeceğimi tam olarak bilseydim sana söylerdim. Olumsuz bir hüküm vermek biraz küstahçadır, çünkü çözümü bilmemek bu çözümün yokluğu anlamına gelmez.
 
Fikir açık. İlginçtir ki, genetik böyle bir numaradan çıldırmayacaktır. Prensip olarak, çalışma parametrelerinin sıfır sonuç verdiği ve daha fazla seçime katılmadığı ortaya çıktı. IMHO, meta alıntılara dilekleri yazmak daha iyidir, ilgili optimize edilmiş parametreler gibi bir şey, yanlışsa, sıralamak gerekli değildir.
 
Yedelkin :

"Daha kolay" nasıl olur? :) Uzman Danışmanın silinmesi için koşulların varlığı, REASON_INITFAILED - hala takip edilmesi gerekiyor. Bu sıkıcı görünüyor.

Zarif bir çözümün yokluğunda, önce "daha kolay" olanı kullanabilirsiniz. Daha iyi bir şey var, her zaman değiştirebilirsiniz. :)
 
ivandurak :
Prensip olarak, çalışma parametrelerinin sıfır sonuç verdiği ve daha fazla seçime katılmadığı ortaya çıktı.
Pek öyle değil, eğer benim kasvetli fikrimden bahsediyorsak. "Çalışan bir parametre seti" ve ilk trpar2=false ile, geçiş tamamen çalışan bir sonuç verecektir. Aynı "çalışma parametreleri kümesi" ve trpar2=false ile sonraki tüm geçişlerde, sıfırlar hemen verilir, ancak aynı zamanda "çalışan parametre kümeniz" seçime herhangi bir şekilde katılır ve yinelenen geçişler olur ayırmak. Sonuçta, istediğin bu muydu?
 
tol64 :
Zarif bir çözümün yokluğunda, önce "daha kolay" olanı kullanabilirsiniz. Daha iyi bir şey var, her zaman değiştirebilirsiniz. :)
Bir kez daha: sıkıcı olan şey, hangi komutun programın ilerisinde bir geçişi tamamlaması değildir - bu, ne olursa olsun, oldukça ilkel bir çözümdür. Tahribat - geçişin erken tamamlanması için koşulların izlenmesinde. Teklifinizin yardımıyla geçişin planlanandan önce tamamlanacağı gerçeğinden, "izleme bloğunun" kasvetliliği hiçbir şekilde azalmaz ve bu bloğun zarafeti hiçbir şekilde artmaz.
 
Yedelkin :
Pek öyle değil, eğer benim kasvetli fikrimden bahsediyorsak. "Çalışan bir parametre seti" ve ilk trpar2=false ile, geçiş tamamen çalışan bir sonuç verecektir. Aynı "çalışma parametreleri kümesi" ve trpar2=false ile diğer tüm geçişler için, sıfırlar hemen üretilecektir, ancak aynı zamanda "çalışan parametre kümeniz" seçime herhangi bir şekilde katılacaktır. Sonuçta, istediğin bu muydu?

Biraz geliştirilebilir. Optimizasyon parametrelerini yapılara yazın ve değişkenlerle olduğu gibi onlarla (basit yapılar) çalışın. Bunun gibi bir şey

if(!trpar && Par1==Parold1 && Par2==Parold2) { Parold1=Par; Parold2=Par2 ; return(9) } Burada Par ve Parold, diğer döviz çiftlerinden optimal parametrelerin yazıldığı yapılardır. Kaç çift, bu kadar çok eğer, o kadar da çirkin görünmüyor. Teşekkür ederim.

 
Yedelkin :
Bir kez daha: sıkıcı olan şey, hangi komutun programın ilerisinde bir geçişi tamamlaması değildir - bu, ne olursa olsun, oldukça ilkel bir çözümdür. Tahribat - geçişin erken tamamlanması için koşulların izlenmesinde. Teklifinizin yardımıyla pasajın planlanandan önce tamamlanacağı gerçeğinden, "izleme bloğunun" kasvetliliği hiçbir şekilde azalmaz ve bu bloğun zarafeti hiçbir şekilde artmaz.

Peki, ne söylemek istedin? Ya hiç kullanmamak için zarif bir çözüm yoksa? Öyle olsa bile, ama sizin deyiminizle "kasvetli" mi?

Kısacası geçtik. Ve selden gelen bu, koddan daha kasvetli. :)

 
ivandurak :

Biraz geliştirilebilir. Optimizasyon parametrelerini yapılara yazın ve değişkenlerle olduğu gibi onlarla (basit yapılar) çalışın. Bunun gibi bir şey

if(!trpar && Par1==Parold1 && Par2==Parold2) { Parold1=Par; Parold2=Par2 ; return(9) } Burada Par ve Parold, diğer döviz çiftlerinden optimal parametrelerin yazıldığı yapılardır.

Evet, öyle bir şey. Görünüşe göre trpar2=false ile karşılaşan TÜM "çalışan parametre kümelerini" hatırlamanız gerekecek. Onlar. karşılık gelen yapıların dizisi muazzam bir şekilde genişleyecektir. Ayrıca, yeni bir geçiş sırasında hatırlananları okumak için bir dosyaya kaydedilmesi gerekecektir.
 
ivandurak :

Biraz geliştirilebilir. Optimizasyon parametrelerini yapılara yazın ve değişkenlerle olduğu gibi onlarla (basit yapılar) çalışın. Bunun gibi bir şey

if(!trpar && Par1==Parold1 && Par2==Parold2) { Parold1=Par; Parold2=Par2 ; return(9) } Burada Par ve Parold, diğer döviz çiftlerinden optimal parametrelerin yazıldığı yapılardır. Kaç çift, bu kadar çok eğer, o kadar da çirkin görünmüyor. Teşekkür ederim.

Başka bir seçenek daha var (vay, kafamdan uçtu).

İşlevlere bakın: OnTesterInit (), OnTesterPass (), OnTesterDeinit ()

Ve: FrameFirst (), FrameFilter (), FrameNext (), FrameInputs (), FrameAdd ()

İşte tam da bunun için tasarlandılar. :)

Yani, mevcut optimizasyondaki herhangi bir geçişin tüm parametrelerini herhangi bir zamanda istemek her zaman mümkündür.