[ARCHIV!] Alle Fragen von Anfängern, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Ohne dich kann ich nirgendwo hingehen - 4. - Seite 226

 

Hallo, könnten Sie mir bitte sagen, welche Funktion den vorletzten offenen Auftrag eines Typs unter vielen offenen Aufträgen schließen kann und welche Funktion den allerersten Auftrag eines Typs schließen kann? Ich suchte im Internet, las die Anleitung, konnte aber nicht verstehen.

Ich bin Ihnen im Voraus dankbar.

 
Roman.:

Der "Haken" ist die Abneigung Ihrerseits, die Hilfe, das Tutorial und die Dokumentation (siehe oben auf der Website) + diesen Thread - siehe alle Links darin in vollem Umfang) zu lesen... :-)




Danke, entschuldigen Sie, dass ich Ihre Zeit mit einer so ausführlichen Antwort verschwendet habe.

Ich fragte, wenn möglich mit Nachdruck, dass: warum durch Kommentar die Differenz auf 0,00002 gerundet angezeigt wird, obwohl das Ergebnis 0,000178 ist. Je nach Art der Variablen ist die Rundung für mich verständlich. ABER TYPE DOUBLE und nach der Logik (meiner) sollte nicht auf 0,00002 gerundet werden. (Warum es so gerundet ist, ist mir nicht klar)

Nochmals vielen Dank. ICH HABE F1 AUF MEINER TASTATUR.

int start()
  {
double a=1.123456789,
       b=1.000000001,
       c=a+b;
       Comment("c = ",c);                Итог:2.1235
   return(0);
  }

Obwohl in der Anleitung:

Die Werte von reellen Konstanten und Variablen bestehen aus einem ganzzahligen Teil, einem Dezimalpunkt (.) und einem gebrochenen Teil. Sie können positive und negative Werte annehmen. Der ganzzahlige Teil und der gebrochene Teil bestehen aus den Ziffern 0 bis 9. Die Anzahl der signifikanten Ziffern nach dem Dezimalpunkt kann bis zu 15 betragen. Zum Beispiel:

27.12 -1.0 2.5001 -765456.0 198732.07 0.123456789012345

 
deyron:

Danke, entschuldigen Sie, dass ich Ihre Zeit mit einer so ausführlichen Antwort verschwendet habe.

Ich bat darum, meine Aufmerksamkeit möglichst auf Folgendes zu lenken: Warum zeigt Comment die auf 0,00002 gerundete Differenz an, obwohl das Ergebnis 0,000178 beträgt. Je nach Art der Variablen ist die Rundung für mich verständlich. ABER TYPE DOUBLE und nach der Logik (meiner) sollte nicht auf 0,00002 gerundet werden. (Warum es so gerundet ist, ist mir nicht klar)

Nochmals vielen Dank. ICH HABE F1 AUF MEINER TASTATUR.

Obwohl es im Lehrbuch steht:

Die Werte von reellen Konstanten und Variablen bestehen aus einem ganzzahligen Teil, einem Dezimalpunkt (.) und einem gebrochenen Teil. Sie können positive und negative Werte annehmen. Der ganzzahlige Teil und der gebrochene Teil bestehen aus den Ziffern 0 bis 9. Die Anzahl der signifikanten Ziffern nach dem Dezimalpunkt kann bis zu 15 betragen. Zum Beispiel:

27.12 -1.0 2.5001 -765456.0 198732.07 0.123456789012345


Und warum sind Sie so faul, die Referenz zu lesen?

void Print(...)
Druckt eine Nachricht in das Expertenprotokoll. Die Parameter können von beliebigem Typ sein. Die Anzahl der Parameter darf 64 nicht überschreiten.

Arrays können nicht an Print() übergeben werden. Arrays müssen Element für Element gedruckt werden.

Daten vom Typ Double werden mit 4 Dezimalstellen nach dem Punkt gedruckt. Um eine höhere Genauigkeit zu erreichen, sollte man die FunktionDoubleToStr()verwenden .
Daten der Typen bool, datetime und color werden als Zahlen gedruckt.
Um Datumswerte als Datumsstring zu drucken, verwenden Sie die FunktionTimeToStr().

Siehe auchAlert() und Comment().

 

Hallo, könnten Sie mir bitte sagen, welche Funktion den vorletzten offenen Auftrag eines Typs unter vielen offenen Aufträgen schließen kann und welche Funktion den allerersten Auftrag eines Typs schließen kann? Ich habe im Internet gesucht, die Anleitung gelesen, aber ich konnte es nicht verstehen.

Ich bin Ihnen im Voraus dankbar.
 
Jetzt habe ich es verstanden. Ich danke Ihnen. Lesen Sie einfach die Referenz, das ist alles. Sie wird genannt: "

Jede Anfängerfrage, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Nirgendwo ohne dich - 4."

Ich verstehe, dass es für dich wie 2 +2 ist, aber für mich ist es das nicht (hoffe ich bis jetzt), und DU findest diese Fragen kindisch.

Ich weiß nicht, wie alle anderen Bücher, die ich geöffnet habe, dann beim Studieren in die CONSPECTS übertragen wurden (4-Allgemeines Notizbuch, 1-polu.obsch., 1 A4-Format und 1-Allgemeiner Entwurf).

Gut verpasst (ish), oder ich bin einen halben Tag durchblättern oder werfen Sie einen Link, keine Notwendigkeit, es zu brechen alle - lesen Sie selbst.

Nochmals vielen Dank.

 
deyron:
Jetzt habe ich es verstanden. Ich danke Ihnen. Lesen Sie einfach die Referenz, das ist alles. Sie wird genannt: "

Jede Anfängerfrage, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Nirgendwo ohne dich - 4."

Ich verstehe, dass es für dich wie 2 +2 ist, aber für mich ist es das nicht (hoffe ich bis jetzt), und DU findest diese Fragen kindisch.

Ich weiß nicht, wie alle anderen Bücher, die ich geöffnet habe, dann beim Studieren in die CONSPECTS übertragen wurden (4-Allgemeines Notizbuch, 1-polu.obsch., 1 A4-Format und 1-Allgemeiner Entwurf).

Gut verpasst (ish), oder ich bin einen halben Tag durchblättern oder werfen Sie einen Link, keine Notwendigkeit, es zu brechen alle - lesen Sie selbst.

Nochmals vielen Dank.


Und Sie müssen nichts durchblättern. Es gibt einen magischen Knopf
 
anton777:

Hallo, könnten Sie mir bitte sagen, welche Funktion den vorletzten offenen Auftrag eines Typs unter vielen offenen Aufträgen schließen kann und welche Funktion den allerersten Auftrag eines Typs schließen kann? Ich habe im Internet gesucht und die Anleitung gelesen, aber ich habe es nicht verstanden.

Vielen Dank im Voraus.

Versuchen Sie, OrderClose() anstelle von Comment zu schreiben. Beachten Sie, dass die Richtung vorgegeben ist und Sie nichts mehr durchblättern müssen))))

for(int i=0; i<=OrdersTotal(); i++)
         {
         if(OrderSelect(i-1, SELECT_BY_POS)==true)
            {
            if(i==2)
               {
               int Ord_ticket=OrderTicket();
               Comment("Ord_ticket = ",Ord_ticket);
               }
            }
         }
 
deyron:

Versuchen Sie, OrderClose() hinter Comment zu schreiben. Beachten Sie, dass die Richtung festgelegt ist und Sie nicht scrollen müssen))))

Der Auftrag schließt alle Aufträge aus irgendeinem Grund, vielleicht habe ich OrderClose() falsch geschrieben.
 
anton777:
Es schließt alle Aufträge aus irgendeinem Grund, vielleicht bin ich schreiben OrderClose() falsch.

Führen Sie die Schleife andersherum durch. Von mehr zu weniger
 
Vinin:

Führen Sie den Zyklus in umgekehrter Reihenfolge durch. Von mehr zu weniger.

wie hier? Weil ich keine Ahnung von Zyklen habe.

for(int i=0; i>=OrdersTotal(); i++)