Etwas überarbeitet, jetzt do while anstelle der for-Hauptschleife, aber immer noch kein Auftreten der ersten Bedingung in der zweiten verschachtelten Schleife!
int GetMagic(Order &order)
{
int magic = 0;
int unique = 0;
if(order.cmd == OP_SELLSTOP || order.cmd == OP_BUYSTOP){
if(OrdersTotal()){
do{
magic++;
for(int i = OrdersTotal(); i > 0 ; i --){
if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES)){
Print( "!!!!!!!!!!!!!!!!!!!");//<----------НЕ ПРИНТУЕТСЯif(magic != OrderMagicNumber())
unique ++;
}
}
}while(unique < OrdersTotal());
}elsereturn (magic + 1);
}
return magic;
}
Nerd Trader #: Also, ich habe den Code für den Test angepasst, versuchen Sie, es auszuführen und Sie erhalten eine Endlosschleife auf die zweite Bestellung :(
Ich frage mich! Warum?
Warum dies, welche heilige Bedeutung hat es?
int GetMagic(Order &order)
{
int magic = 0;
int unique = 0;
if(order.cmd == OP_SELLSTOP || order.cmd == OP_BUYSTOP){
if(OrdersTotal()){
do{
magic++;
for(int i = OrdersTotal(); i > 0 ; i --){
if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES)){
Print( "!!!!!!!!!!!!!!!!!!!");//<----------НЕ ПРИНТУЕТСЯif(magic != OrderMagicNumber())
unique ++;
}
}
}while(unique < OrdersTotal());
}elsereturn (magic + 1);
}
return magic;
}
---
Sie suchen nach Nummern, also suchen Sie nach Nummern.
Wenn Sie 2 Haftbefehle haben, wird er sie durchgehen, aber er kann den 3. oder den 23. nicht finden.
---
Sie scheinen sich über die Aufgabe nicht ganz im Klaren zu sein, also ist das die Lösung.
Ja! Es funktioniert! Aber warum früher noch in die zweite for-Schleife und wenn ich einfügen nächste Zeile Print() - es wird ausgeführt werden (unendlich), aber nicht weiter gehen? Auf jeden Fall danke, jetzt kann ich wenigstens schlafen gehen.
Wirklich?!))
Haben Sie es ausprobiert?
Bei mir funktioniert der Farbwechsel schon lange so, aber nicht auf der Linie, obwohl es keinen Unterschied machen sollte.
PS. Wenn ich mir meinen anderen Code ansehe, ändert sich dort die Farbe der Zeile
Ich habe schon seit langem einen Farbwechsel, der auf diese Weise funktioniert, aber nicht auf der Linie, obwohl es keinen Unterschied machen sollte.
PS. Wenn ich mir meinen anderen Code ansehe, ändert er die Farbe der Zeile
Ändert die gesamte Zeile, nicht nur den gewünschten Abschnitt
Ändert die gesamte Zeile, nicht nur den rechten Abschnitt
Nun, er schrieb, dass man die ganze Zeile ändern muss
Also, ich habe den Code für den Test angepasst, versuchen Sie, es auszuführen und Sie erhalten eine Endlosschleife auf die zweite Bestellung :(
Ich frage mich! Warum?
Warum dies, welche heilige Bedeutung hat es?
---
Sie suchen nach Nummern, also suchen Sie nach Nummern.
Wenn Sie 2 Haftbefehle haben, wird er sie durchgehen, aber er kann den 3. oder den 23. nicht finden.
---
Sie scheinen sich über die Aufgabe nicht ganz im Klaren zu sein, also ist das die Lösung.
die Schleife ist nicht richtig eingestellt:
sollte es so sein:
die Schleife ist nicht richtig eingestellt:
sollte es so sein:
Ich frage mich! Warum?
Warum dies, welche heilige Bedeutung hat es?
---
Sie suchen nach Nummern, also suchen Sie nach Nummern.
Wenn Sie 2 Haftbefehle haben, wird er sie durchgehen, aber er kann den 3. oder den 23. nicht finden.
---
Sie scheinen sich über die Aufgabe nicht ganz im Klaren zu sein, also ist das die Lösung.
die Schleife ist nicht richtig eingestellt:
sollte es so sein:
Was ist der Unterschied? Und beginnt die Bestellnummerierung nicht bei Null und nicht bei Eins?