PROFI'den SUPERPROFI'ye kadar tüm sorularınız - 1. - sayfa 18

 
C-4 :


Tavsiye için teşekkürler. Ancak nedense işlev dar görünüyor:

500 SB kullanıldı ve bir şekilde bunların %99,7'sinin üç sigmaya uyması pek olası değil.

Bu yüzden doğrudan programlı olarak saymak ve kontrol etmek gerekir. Resimden söylenecek fazla bir şey yok - benim için her şey doğru görünüyor.

Üretim şeması binom ise ve bitişik örnekler tamamen bağımsızsa , CLT gerçekleştirilmelidir. Ancak bağımsızlık koşulu karşılanmazsa (kötü jeneratör vb.), "yağ kuyrukları" oldukça mümkündür.

 
 

piksel cinsinden metin boyutu nasıl hesaplanır?

DrawText vs GetTextExtent

 #define DT_CALCRECT 0x00000400

#import "user32.dll"
         int DrawTextA( int hDC, string lpchText, int nCount, int lpRect[ 4 ], int uFormat);
         int GetWindowDC( int hWnd);
         int ReleaseDC( int hWnd, int hDC);
#import

start()
{
   string txt= "abcdef1234567" ;
   int hWnd=WindowHandle( Symbol (), Period ());
   int hDC=GetWindowDC(hWnd);
   int rect[ 4 ]={ 0 , 0 , 0 , 0 };
  DrawTextA(hDC, txt, 8 , rect, DT_CALCRECT);
  ReleaseDC(hWnd, hDC);
   Print ( "x1=" +rect[ 0 ]+ " y1=" +rect[ 1 ]+ "  x2=" +rect[ 2 ]+ " y2=" +rect[ 3 ]);
}
 
// Функция GetTextExtentPoint32 вычисляет ширину и высоту заданной строки текста.
BOOL GetTextExtentPoint32
(
  HDC hdc,           // дескриптор DC
  LPCTSTR lpString,  // текстовая строка
  int cbString,      // число символов в строке
  LPSIZE lpSize      // размер строки
);
 

muhtemelen daha doğru GetTextExtentPoint32

 ancak prensipte DrawTextA da sayılır. Yalnızca HFONT, gerekli olanla değiştirilmelidir. Aksi takdirde sonucun pek doğru olmayacağını düşünüyorum.
[Silindi]  
sergeev :

muhtemelen daha doğru GetTextExtentPoint32

Dize değişkeni, dahili gösterimde bir int sayısını dört bayt olarak saklar.

Nasıl geldiği önemli değil.

Bu sayıyı bitsel işlemler kullanmadan bir int değişkeninde almak mümkün müdür?

 
more :

Dize değişkeni, dahili gösterimde bir int sayısını dört bayt olarak saklar.

Nasıl geldiği önemli değil.

Bitsel işlemler kullanmadan bu sayının bir int değişkeninde olması mümkün müdür?

 std :: string sText = "12" ;
int nValue = (MAX_CHAR + 1 ) * sText[ 0 ] + sText[ 1 ];
İki bayt için böyle bir şey.
[Silindi]  
Zhunko :
İki bayt için böyle bir şey.

Ne olduğunu ?

Bir MQL4 programındaki değişkenlerden bahsediyorum.

 
more :

Dize değişkeni, dahili gösterimde bir int sayısını dört bayt olarak saklar.

Nasıl geldiği önemli değil.

Bitsel işlemler kullanmadan bu sayının bir int değişkeninde olması mümkün müdür?


Her baytın 256'lık bir güçle çarpılması ve toplanması yoluyla yapabilirsiniz. Bir şekilde...

[Silindi]  
Integer :


Her baytın 256'lık bir güçle çarpılması ve toplanması yoluyla yapabilirsiniz.

Yani, şöyle:

int i = StringGetChar(str,3) ;

i +=StringGetChar(str,2) * 256;

i +=StringGetChar(str,1) * 256*256;

i +=StringGetChar(str,0) * 256*256*256;


Çok iyi.

Teşekkür ederim !