Eu esbocei uma função que faz exatamente o que eu quero que ela faça: truncata com precisão um fio com a precisão especificada , ao contrário do DoubleToStr:
string Normalize (string Normalize_Parse, int Normalize_Number, string Normalize_Separator = ".")
{
string Normalize_Before,
Normalize_After;
for (int i = 0; i <= StringLen (Normalize_Parse) - 1; i ++)
{
if (StringSubstr (Normalize_Parse, i, StringLen (Normalize_Separator)) == Normalize_Separator)
{
for (int ii = i + StringLen (Normalize_Separator); ii < i + StringLen (Normalize_Separator) + Normalize_Number; ii ++)
{
Normalize_After += StringSubstr (Normalize_Parse, ii, 1);
}
break;
}
Normalize_Before += StringSubstr (Normalize_Parse, i, 1);
}
return (Normalize_Before + (Normalize_After > 0 ? Normalize_Separator + Normalize_After : ""));
}
Eu esbocei uma função que faz exatamente o que eu quero que ela faça: truncata com precisão um fio com a precisão especificada , ao contrário do DoubleToStr:
Resultado para "0,09864724":
Resultado para"0,-843158":
Operações com duplo e similares:
Estive pesquisando e tal função já existe na MQL4 (5?). Se não está lá, por que não adicioná-lo há muito tempo? :)
Eu esbocei uma função que faz exatamente o que eu quero que ela faça: truncata com precisão um fio com a precisão especificada , ao contrário do DoubleToStr:
Resultado para "0,09864724":
Resultado para"0,-843158":
Operações com duplo e similares:
Estive pesquisando e tal função já existe na MQL4 (5?). Se não está lá, por que não adicioná-lo há muito tempo? :)
Você está operando com alguns exemplos estranhos - é por isso que é impossível concluir que sua função funciona corretamente.
tomemos este exemplo:
como sair =0.019999999999999999999999 -- sair =0.01
mas este valor
0.099999999
retornará 0,1
)
então o que foi citado acima seria mais apropriado para a tarefa do TC:
Devoluções:
Eu esbocei uma função que faz exatamente o que eu quero que ela faça: truncata com precisão um fio com a precisão especificada , ao contrário do DoubleToStr:
Resultado para "0,09864724":
Resultado para"0,-843158":
Operações com duplo e similares:
Estive pesquisando e tal função já existe na MQL4 (5?). Se não está lá, por que não adicioná-lo há muito tempo? :)
Eu esbocei uma função que faz exatamente o que eu quero que ela faça: truncata com precisão um fio com a precisão especificada , ao contrário do DoubleToStr:
Resultado para "0,09864724":
Resultado para"0,-843158":
Operações com duplo e similares:
Estive pesquisando e tal função já existe na MQL4 (5?). Se não está lá, por que não adicioná-lo há muito tempo? :)
Eu esbocei uma função que faz exatamente o que eu quero que ela faça: truncata com precisão um fio com a precisão especificada , ao contrário do DoubleToStr:
Resultado para "0,09864724":
Resultado para"0,-843158":
Operações com duplo e similares:
Estive pesquisando e tal função já existe na MQL4 (5?). Se não está lá, por que não adicioná-lo há muito tempo? :)
tomemos este exemplo:
como sair =0.019999999999999999999999 -- sair =0.01
Você está operando com exemplos fora de seu cargo - portanto, não pode concluir que sua função funciona corretamente.
tomemos este exemplo:
como sair =0.019999999999999999999999 -- sair =0.01
Eu ainda não entendo o que você quer.
Se você quiser ver 0,098 na tabela em vez de 0,098, então faça isso!
int a=0,098 * 100;
duplo d=a/100.0;
Comentário(StringFormat("%G", d );
verificou a última função, deixa 0,01
Verifiquei sua função -- deixa 0,02.
De fato, 0,02.
Minha função pode ser mais complicada, mas corta exatamente 0,01.
verificou a última função, deixa 0,01