C'è un modo per mescolare casualmente i numeri all'interno di un dato intervallo?
Per esempio, c'è un intervallo da 0 a 9. È possibile mischiarli - 5863014297? Stir esattamente, non ottenere un numero casuale da quell'intervallo - rand non è adatto.
C'è un modo per mescolare casualmente i numeri all'interno di un dato intervallo?
Per esempio, c'è un intervallo da 0 a 9. È possibile mischiarli - 5863014297? Mescolare esattamente, non ottenere un numero casuale da un intervallo dato - rand non è adatto.
Tradurre il numero in una stringa, cambiare i caratteri della stringa tra loro usando qualche algoritmo (potete pensarci voi) - e poi convertire il numero dalla stringa di nuovo in double o int
convertire questo numero in una stringa, cambiare i caratteri di questa stringa tra di loro usando qualche algoritmo (potete pensarci voi), e poi convertire il numero dalla stringa di nuovo in double o int.
Grazie, questa è un'opzione!
E se la gamma è di diverse migliaia, o addirittura decine di migliaia di numeri?
Ciao!!! non capisco))) L'ordine nella lista degli oggetti per qualche motivo se non si cambiano i nomi degli oggetti, poi quando si selezionano e si elaborano gli oggetti attraverso questo ciclo
for(int i=0; i < Fibo_Koll; i++)
{
n=ObjectName(0,i,0,OBJ_FIBO);
Ma se si cambiano i nomi con queste funzioni
bool F =ObjectSetString(0,n,OBJPROP_NAME,NameFiboUp[UP]);
bool F =ObjectSetString(0,n,OBJPROP_NAME,NameFiboDown[Down]);
poi l'oggetto successivo viene selezionato in modo casuale???
//+------------------------------------------------------------------+//| Fibo_Massiv.mq5 |//| Copyright 2020, MetaQuotes Software Corp. |//| https://www.mql5.com |//+------------------------------------------------------------------+#property copyright"Copyright 2020, MetaQuotes Software Corp."#property link"https://www.mql5.com"#property version"1.00"//+------------------------------------------------------------------+// Expert initialization functionstring NameFiboUp[15]; // Объявление массиваstring NameFiboDown[15]; // Объявление массива string NameFibo[9]; // Объявление массива //+------------------------------------------------------------------+intOnInit()
{
//---
NameFiboUp[1]="FiboUp1 ";
NameFiboDown[1]="FiboDown1 ";
NameFiboUp[2]="FiboUp2 ";
NameFiboDown[2]="FiboDown2";
NameFiboUp[3]="FiboUp3";
NameFiboDown[3]="FiboDown3 ";
NameFiboUp[4]="FiboUp4 ";
NameFiboDown[4]="FiboDown4 ";
NameFiboUp[5]="FiboUp5";
NameFiboDown[5]="FiboDown5 ";
NameFiboUp[6]="FiboUp6 ";
NameFiboDown[6]="FiboDown6 ";
NameFiboUp[7]="FiboUp7 ";
NameFiboDown[7]="FiboDown7 ";
NameFiboUp[8]="FiboUp8 ";
NameFiboDown[8]="FiboDown8 ";
NameFiboUp[9]="FiboUp9 ";
NameFiboDown[9]="FiboDown9 ";
NameFiboUp[10]="FiboUp10 ";
NameFiboDown[10]="FiboDown10";
NameFiboUp[11]="FiboUp11 ";
NameFiboDown[11]="FiboDown11 ";
NameFiboUp[12]="FiboUp12 ";
NameFiboDown[12]="FiboDown12 ";
NameFiboUp[13]="FiboUp13 ";
NameFiboDown[13]="FiboDown13";
NameFiboUp[14]="FiboUp14 ";
NameFiboDown[14]= "FiboDown14";
//---------------------------------------------
NameFiboUp[1]="M1 ";
NameFiboUp[2]="M5 ";
NameFiboUp[3]="M15";
NameFiboUp[4]="H1 ";
NameFiboUp[5]="H4 ";
NameFiboUp[6]="Da ";
NameFiboUp[7]="We ";
NameFiboUp[8]="Mo ";
return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+//| Expert deinitialization function |//+------------------------------------------------------------------+voidOnDeinit(constint reason)
{
//---
}
//+------------------------------------------------------------------+//| Expert tick function |//+------------------------------------------------------------------+voidOnTick()
{
int UP=1;
int Down=1;
string nameUP = "FiboUp";
string nameDown = "FiboDown";
double FiboDown[4][10],FiboUp[4][10]; // 2x мерный массивint Fibo_Koll = ObjectsTotal(0,0,OBJ_FIBO); //Запрос колличества объектов Fibo//_________________________________________________________if(Fibo_Koll==0) //Если нет не одного фибо выход //return; ////_________________________________________________________//string n;
// ObjectName(0,0,0,OBJ_FIBO); //Вытаскивает имя найденого фибоfor(int i=0; i < Fibo_Koll; i++)
{
n=ObjectName(0,i,0,OBJ_FIBO);
//----------------------------------------------------------------------------------------double Fibo_Level_0= ObjectGetDouble(
0, // идентификатор графика
n, // имя объектаOBJPROP_PRICE, // идентификатор свойства0// модификатор свойства
);
double Fibo_Level_1= ObjectGetDouble(
0, // идентификатор графика
n, // имя объектаOBJPROP_PRICE, // идентификатор свойства1// модификатор свойства
);
//------------------------------------------------------------------------------------------------------if(Fibo_Level_0>Fibo_Level_1)
{
//вызов функции расчёта уровня 78.6double Fibo_78_Up = Function_Up(Fibo_Level_0, Fibo_Level_1);
//--------------------------------------------------------------------
FiboUp[UP][1]=1; // Тип объектов 1 == FiboUp
FiboUp[UP][2]=UP; // Нумерация объектов FiboUp по типу
FiboUp[UP][3]=Fibo_78_Up; // 78.6%
FiboUp[UP][4]=0; // 61.8%
FiboUp[UP][5]=0; // 50%//------------------------------------------------------------------//Изменение имени объектаbool F =ObjectSetString(0,n,OBJPROP_NAME,NameFiboUp[UP]);
UP++;
}
else
{
//вызов функции расчёта уровня 78.6double Fibo_78_Down = Function_Down(Fibo_Level_0, Fibo_Level_1);
//-------------------------------------------------------------------
FiboDown[Down][1]=2; // // Тип объектов 2 == FiboDown
FiboDown[Down][2]=Down; // Нумерация объектов по типу
FiboDown[Down][3]=Fibo_78_Down; // 78.6%
FiboDown[Down][4]=0; // 61.8%
FiboDown[Down][5]=0; // 50%Alert(" FiboDown[1][1] = ", FiboDown[1][1],
" FiboDown[1][3] = ", FiboDown[1][3],
" FiboDown[2][1] = ", FiboDown[2][1],
" FiboDown[2][3] = ", FiboDown[2][3]);
//------------------------------------------------------------------//Изменение имени объектаbool F =ObjectSetString(0,n,OBJPROP_NAME,NameFiboDown[Down]);
Down++;
}
}
//+------------------------------------------------------------------+Alert(" FiboDown[1][1] = ", FiboDown[1][1],
" FiboDown[1][3] = ", FiboDown[1][3],
" FiboDown[2][1] = ", FiboDown[2][1],
" FiboDown[2][3] = ", FiboDown[2][3]);
Alert(" FiboUp[1][1] = ", FiboUp[1][1],
" FiboUp[1][3] = ", FiboUp[1][3],
" FiboUp[2][1] = ", FiboUp[2][1],
" FiboUp[2][3] = ", FiboUp[2][3]);
}
//+------------------------------------------------------------------+//+------------------------------------------------------------------+double Function_Up(double a, double b) // имя функции и список параметров
{
double Sum_100 = a - b; //Вычисляем 100% В пунктах от точек построения фибоdouble Sum_78 = Sum_100 * 78.6 / 100; //Вычисляем 78.6% В пунктахreturn (Sum_78 + b); // Вычисляем 78.6% в цене инструмента
}
//+------------------------------------------------------------------+double Function_Down(double a, double b) // имя функции и список параметров
{
double Sum_100 = b - a ; //Вычисляем 100% В пунктах от точек построения фибоdouble Sum_78 = Sum_100 * 21.4 / 100; //Вычисляем 78.6% В пунктахreturn (Sum_78 + a); // Вычисляем 78.6% в цене инструмента
}
//+------------------------------------------------------------------+
Dopo aver fatto qualsiasi ottimizzazione dell'Expert Advisor, dopo aver chiuso il terminale, gli agenti sono ancora appesi nei processi, consumando RAM.
Come volume di RAM non critico è molto, ma quando eseguo il gioco, a causa del fatto che la memoria si riferisce costantemente a un mucchio di ritardatari ho cali di FPS di almeno 20 frame.
Devo sovraccaricare il computer o sedermi un processo alla volta per uccidere...
Onestamente sta già iniziando a diventare fastidioso.
Dimmi questo bug o così progettato, tranne il terminale dall'apertura del broker qualsiasi altra cosa non è messo, di volta in volta è aggiornato, qualsiasi o manipolazioni con lui non ha fatto.
Kira27: Ciao!!! Puoi dirmi può non ottenere))) L'ordine nell'elenco degli oggetti per qualche motivo se non si cambiano i nomi degli oggetti, poi quando si seleziona ed elabora gli oggetti attraverso questo ciclo
Ma se si cambiano i nomi con queste funzioni
poi l'oggetto successivo viene scelto a caso?
Perché quando un oggetto viene rinominato, viene ricreato. Uno viene cancellato, un altro viene creato e nella lista di tutti gli oggetti sono disposti in ordine di quando sono stati creati.
Perché quando un oggetto viene rinominato, viene ricreato. Uno è cancellato, l'altro è creato e nella lista di tutti gli oggetti sono disposti in ordine di quando sono stati creati.
qualche suggerimento?
qualche suggerimento?
Non =, ma ==
C'è un modo per mescolare casualmente i numeri all'interno di un dato intervallo?
Per esempio, c'è un intervallo da 0 a 9. È possibile mischiarli - 5863014297? Stir esattamente, non ottenere un numero casuale da quell'intervallo - rand non è adatto.
C'è un modo per mescolare casualmente i numeri all'interno di un dato intervallo?
Per esempio, c'è un intervallo da 0 a 9. È possibile mischiarli - 5863014297? Mescolare esattamente, non ottenere un numero casuale da un intervallo dato - rand non è adatto.
Tradurre il numero in una stringa, cambiare i caratteri della stringa tra loro usando qualche algoritmo (potete pensarci voi) - e poi convertire il numero dalla stringa di nuovo in double o int
convertire questo numero in una stringa, cambiare i caratteri di questa stringa tra di loro usando qualche algoritmo (potete pensarci voi), e poi convertire il numero dalla stringa di nuovo in double o int.
Grazie, è un'opzione!
una stringa è un array
fare un array con il numero richiesto
Ma se si cambiano i nomi con queste funzioni
poi l'oggetto successivo viene selezionato in modo casuale???
Chi ha incontrato questo
Vin 10
Terminale build 2715.
Dopo aver fatto qualsiasi ottimizzazione dell'Expert Advisor, dopo aver chiuso il terminale, gli agenti sono ancora appesi nei processi, consumando RAM.
Come volume di RAM non critico è molto, ma quando eseguo il gioco, a causa del fatto che la memoria si riferisce costantemente a un mucchio di ritardatari ho cali di FPS di almeno 20 frame.
Devo sovraccaricare il computer o sedermi un processo alla volta per uccidere...
Onestamente sta già iniziando a diventare fastidioso.
Dimmi questo bug o così progettato, tranne il terminale dall'apertura del broker qualsiasi altra cosa non è messo, di volta in volta è aggiornato, qualsiasi o manipolazioni con lui non ha fatto.
Ciao!!! Puoi dirmi può non ottenere))) L'ordine nell'elenco degli oggetti per qualche motivo se non si cambiano i nomi degli oggetti, poi quando si seleziona ed elabora gli oggetti attraverso questo ciclo
Ma se si cambiano i nomi con queste funzioni
poi l'oggetto successivo viene scelto a caso?
Perché quando un oggetto viene rinominato, viene ricreato. Uno viene cancellato, un altro viene creato e nella lista di tutti gli oggetti sono disposti in ordine di quando sono stati creati.
Perché quando un oggetto viene rinominato, viene ricreato. Uno è cancellato, l'altro è creato e nella lista di tutti gli oggetti sono disposti in ordine di quando sono stati creati.
Grazie mille!!! dove posso leggere questo?