Qualquer pergunta de um PROFI para um SUPER PROFI - 1. - página 18

 
C-4:


Obrigado pelo conselho. Mas por alguma razão, a função parece um pouco estreita:

Foram utilizadas 500 SBs e, de alguma forma, 99,7% delas não parecem caber dentro de três sigmas.

Bem, precisamos calcular o software diretamente e verificá-lo. Não há muito a dizer da figura - tudo parece correto para mim.

Se o esquema de geração for binomial e as amostras vizinhas forem completamente independentes, o TSP deve estar satisfeito. Mas se a condição de independência não for cumprida (oscilador ruim, etc.), então "rabos gordos" são bem possíveis

 
 

como calcular o tamanho do texto em pixels ?

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      // размер строки
);
 

GetTextExtentPoint32 é provavelmente mais correto

mas, em princípio, o DrawTextA também conta. A única coisa é mudar o HFONT para o necessário. Caso contrário, acho que o resultado não será muito correto.
 
sergeev:

GetTextExtentPoint32 é provavelmente mais correto

A variável string armazena o valor int-value em sua representação interna em quatro bytes.

Como chegou lá não é importante.

Podemos obter este número em uma variável sem usar operações bitwise?

 
more:

A variável string armazena o valor interno na representação interna em quatro bytes.

Como chegou lá não é importante.

Podemos obter este número em uma variável sem usar operações bitwise?

std::string sText = "12";
int nValue = (MAX_CHAR + 1) * sText[0] + sText[1];
Aproximadamente assim para dois bytes.
 
Zhunko:
Sobre isso, por dois bytes.

O que é isto ?

Estou falando de variáveis em um programa MQL4.

 
more:

A variável string armazena o valor interno na representação interna em quatro bytes.

Como chegou lá não é importante.

Podemos obter este número em uma variável sem usar operações bitwise?


Você pode, multiplicando cada byte por um poder de 256 e adicionando-o. Algo como isto, mais ou menos...

 
Integer:


Você pode, através da multiplicação de cada byte por um poder de 256 e acrescentando-o.

Em outras palavras, é assim:

int i = StringGetChar(str,3) ;

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

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

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


Muito bom.

Obrigado!