Erreurs, bugs, questions - page 2623
Vous manquez des opportunités de trading :
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Inscription
Se connecter
Vous acceptez la politique du site Web et les conditions d'utilisation
Si vous n'avez pas de compte, veuillez vous inscrire
Des mathématiques assez divertissantes
Résultat
2020.01.05 17:09:28.798 Testert EURUSD,H1 : 0.06000000 0.01 6.00 Prochain lot = 0.06999999999999999
2020.01.05 17:09:28.798 Testert EURUSD,H1 : 0.06000000 0.01 6.00 Prochain lot = 0.0699999999999999999
2020.01.05 17:09:28.798 Testert EURUSD,H1 : 0.06000000 0.01 6.00 Prochain lot = 0.0699999999999999999
2020.01.05 17:09:28.798 Testert EURUSD,H1 : 0.06000000 0.01 6.00 Prochain lot = 0.069999999999999
2020.01.05 17:09:28.798 Testert EURUSD,H1 : 0.06000000 0.01 6.00 Lot suivant = 0.069999999999999 As 0.06000000 + 0.01 devient 0.069999999999999999999
2020.01.05 17:09:28.798 Testert EURUSD,H1 : 0.05000000 0.01 5.00 Prochain lot = 0.06
2020.01.05 17:09:28.798 Testert EURUSD,H1 : 0.04000000 0.01 4.00 Prochain lot = 0.05
2020.01.05 17:09:28.798 Testert EURUSD,H1 : 0.03000000 0.01 3.00 Prochain lot = 0.04
2020.01.05 17:09:28.798 Testert EURUSD,H1 : 0.02000000 0.01 2.00 Prochain lot = 0.03
2020.01.05 17:09:28.798 Testert EURUSD,H1 : 0.01000000 0.01 1.00 Prochain lot = 0.02
Cette question revient souvent.
cool ! vous êtes somnambule sur internet, mais pouvez-vous répondre à la question "où est passée la dernière itération" ? ;) dans cet exemple :
2020.01.06 01:26:11.016 tst_double (EURUSD,H1) x = 10,0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
2020.01.06 01:26:11.127 tst_double (EURUSD,H1) x = 10.0999999999999996447286321199949907064437866210937500000000000
2020.01.06 01:26:11.239 tst_double (EURUSD,H1) x = 10.199999999999999289457264239899814128875732421875000000000000
2020.01.06 01:26:11.350 tst_double (EURUSD,H1) x = 10.29999999999999893434185896359849721193313598632812500000000000
2020.01.06 01:26:11.462 tst_double (EURUSD,H1) x = 10.3999999999999999998589145284797996282577514648437500000000000
2020.01.06 01:26:11.574 tst_double (EURUSD,H1) x = 10.49999999999999998223643160599749535322189331054687500000000000
2020.01.06 01:26:11.686 tst_double (EURUSD,H1) x = 10,5999999999999978968371792719699442386627197265625000000000000
2020.01.06 01:26:11.798 tst_double (EURUSD,H1) x = 10.6999999999999999997597513100424839649349451065063476562500000000000
2020.01.06 01:26:11.910 tst_double (EURUSD,H1) x = 10.7999999999999999715999715782905695992565155029296875000000000000
2020.01.06 01:26:12.022 tst_double (EURUSD,H1) x = 10.899999999999996998025579079549163579940795898437500000000000
2020.01.06 01:26:12.134 tst_double (EURUSD,H1) x = 10.999999999999964472863211994990706443786621093750000000000
2020.01.06 01:26:12.246 tst_double (EURUSD,H1) x = 11.0999999999999960920194953319448977708816528320312500000000000
2020.01.06 01:26:12.358 tst_double (EURUSD,H1) x = 11.19999999999999995957954355678543988847732543945312500000000000
2020.01.06 01:26:12.470 tst_double (EURUSD,H1) x = 11.2999999999999999995381472217559348791837692260742187500000000000
2020.01.06 01:26:12.582 tst_double (EURUSD,H1) x = 11.399999999999995095026200849679298698902130126953125000000000000
2020.01.06 01:26:12.695 tst_double (EURUSD,H1) x = 11.4999999999999994670929481799248605966567993164062500000000000
2020.01.06 01:26:12.808 tst_double (EURUSD,H1) x = 11.59999999999999999431565811391919851303100585937500000000000
2020.01.06 01:26:12.920 tst_double (EURUSD,H1) x = 11.699999999999999939939603867460391484200200443725585937500000000000
2020.01.06 01:26:13.032 tst_double (EURUSD,H1) x = 11.799999999999999936051153781590983271598815917968975000000000000
2020.01.06 01:26:13.143 tst_double (EURUSD,H1) x = 11.899999999999999932949844010279048234224319458007812500000000000
2020.01.06 01:26:13.254 tst_double (EURUSD,H1) x = 11.999999999999992894572642398998141288757324218750000000
2020.01.06 01:26:13.367 tst_double (EURUSD,H1) x = 12.0999999999999999992539301274518948048353195190429687500000000000
2020.01.06 01:26:13.478 tst_double (EURUSD,H1) x = 12.1999999999992999218402990663889754176330566406250000000000000000
2020.01.06 01:26:13.590 tst_double (EURUSD,H1) x = 12.29999999999999991828758538758847862482070922851562500000000000
2020.01.06 01:26:13.702 tst_double (EURUSD,H1) x = 12.39999999999999999991473487170879777795695465087890625000000000000
2020.01.06 01:26:13.813 tst_double (EURUSD,H1) x = 12.499999999999991191118215802998747676610946655273437500000000000
2020.01.06 01:26:13.925 tst_double (EURUSD,H1) x = 12,59999999999999990762944435118697583675384521484375000000000000
2020.01.06 01:26:14.037 tst_double (EURUSD,H1) x = 12.6999999999999909040767306723864749073982238769531250000000
2020.01.06 01:26:14.149 tst_double (EURUSD,H1) x = 12.79999999999999990090052401699358597397804260253906250000000000000
2020.01.06 01:26:14.261 tst_double (EURUSD,H1) x = 12.8999999999999998989697130331478547304868698120117187500000000000
2020.01.06 01:26:14.372 tst_double (EURUSD,H1) x = 12.99999999999998934341858963598497211933135986328125000000000000
2020.01.06 01:26:14.483 tst_double (EURUSD,H1) x = 13.0999999999999889889865875957184471189975738539062500000000000
2020.01.06 01:26:14.596 tst_double (EURUSD,H1) x = 13.19999999999999988631316227838393970260620117187500000000000000000000
2020.01.06 01:26:14.707 tst_double (EURUSD,H1) x = 13.2999999999999889276044859958346933126449584960937500000000000
2020.01.06 01:26:14.820 tst_double (EURUSD,H1) x = 13.39999999999999987920773492078296840190887451171875000000000000
2020.01.06 01:26:14.932 tst_double (EURUSD,H1) x = 13.499999999999999875502124198246747532531738281250000000
2020.01.06 01:26:15.044 tst_double (EURUSD,H1) x = 13.5999999999999999987281023027563181966543197631835937500000000000
2020.01.06 01:26:15.157 tst_double (EURUSD,H1) x = 13.69999999999999986854959388438146561380104249804687500000000000
2020.01.06 01:26:15.270 tst_double (EURUSD,H1) x = 13.7999999999999999986499688020558096468448638916015625000000000000
2020.01.06 01:26:15.381 tst_double (EURUSD,H1) x = 13.8999999999999998699144416652678046375513076782226562500000000000
2020.01.06 01:26:15.493 tst_double (EURUSD,H1) x = 13.999999999999985789178914528479762998257751464843750000000000
2020.01.06 01:26:15.604 tst_double (EURUSD,H1) x = 14.099999999999985985433873916917946189641952514648437500000000000
2020.01.06 01:26:15.717 tst_double (EURUSD,H1) x = 14.19999999999998508786025490378960967063903808593750000000000000000
2020.01.06 01:26:15.828 tst_double (EURUSD,H1) x = 14.299999999999999849723331181157846003770708282470312500000000000
2020.01.06 01:26:15.941 tst_double (EURUSD,H1) x = 14.3999999999999849999843680598132777959108352661132812500000000000
2020.01.06 01:26:16.054 tst_double (EURUSD,H1) x = 14.49999999999849984012788445397745817899703979492187500000000000
2020.01.06 01:26:16.167 tst_double (EURUSD,H1) x = 14.5999999999999998399657517077517695724964141845703125000000000000
2020.01.06 01:26:16.280 tst_double (EURUSD,H1) x = 14.699999999999999838330224545709637645632028579711914062500000000000
2020.01.06 01:26:16.393 tst_double (EURUSD,H1) x = 14.799999999999999998294694743417575955390930175781250000000
2020.01.06 01:26:16.504 tst_double (EURUSD,H1) x = 14.899999999999999899825917092973877545446157455444335937500000000000
2020.01.06 01:26:16.615 tst_double (EURUSD,H1) x = 14.99999999999822364316059974953532218933105468750000000000000000
2020.01.06 01:26:16.728 tst_double (EURUSD,H1) x = 15.0999999999999999981881160238117445260286331176757812500000000000
2020.01.06 01:26:16.841 tst_double (EURUSD,H1) x = 15.1999999999999898151525888870237395167373507690429687500000000000
2020.01.06 01:26:16.953 tst_double (EURUSD,H1) x = 15.299999999999999811706175023573450744152069091796897500000000000
2020.01.06 01:26:17.066 tst_double (EURUSD,H1) x = 15.3999999999999998080815346134477294981479644775390625000000000000
2020.01.06 01:26:17.179 tst_double (EURUSD,H1) x = 15.49999999999998080460074766597244888544082641601562500000000000
2020.01.06 01:26:17.290 tst_double (EURUSD,H1) x = 15.5999999999999998010480339871719479560852050781250000000000000000
2020.01.06 01:26:17.402 tst_double (EURUSD,H1) x = 15.69999999999999979749749532030837144702672958374023437500000000000
2020.01.06 01:26:17.514 tst_double (EURUSD,H1) x = 15.799999999999999797939424260662957094609737393962402343750000000000000000
2020.01.06 01:26:17.627 tst_double (EURUSD,H1) x = 15.899999999999999790938989295077044516801834106445312500000000000
2020.01.06 01:26:17.740 tst_double (EURUSD,H1) x = 15.9999999999999783737179271961944238662719726562500000000000
2020.01.06 01:26:17.851 tst_double (EURUSD,H1) x = 16.0999999999999801048033987171947956085205078125000000000000
2020.01.06 01:26:17.964 tst_double (EURUSD,H1) x = 16.199999999999981599815258870237395167373507690429687500000000000
2020.01.06 01:26:18.076 tst_double (EURUSD,H1) x = 16.2999999999999998982946947434175759553909301757812500000000000
2020.01.06 01:26:18.189 tst_double (EURUSD,H1) x = 16.399999999999999848499843680598132777959108352661132812500000000000
2020.01.06 01:26:18.302 tst_double (EURUSD,H1) x = 16.49999999999999985999985789178914528479799626282577514648437500000000000000
2020.01.06 01:26:18.414 tst_double (EURUSD,H1) x = 16.5999999999999998721023075631819665431976318359375000000000
2020.01.06 01:26:18.526 tst_double (EURUSD,H1) x = 16.69999999999999988631316227838397026062011718750000000000000000
2020.01.06 01:26:18.638 tst_double (EURUSD,H1) x = 16.79999999999999990090052401699358597397804260253906250000000000000
2020.01.06 01:26:18.750 tst_double (EURUSD,H1) x = 16.89999999999999999991473487170878797777956954650878906250000000000
2020.01.06 01:26:18.861 tst_double (EURUSD,H1) x = 16.999999999999992894597264239899814128875732421875000000000
2020.01.06 01:26:18.973 tst_double (EURUSD,H1) x = 17.0999999999999999431565811391919851303100585937500000000000
2020.01.06 01:26:19.085 tst_double (EURUSD,H1) x = 17.19999999999999999957395795435854398884773254394531250000000000000
2020.01.06 01:26:19.197 tst_double (EURUSD,H1) x = 17.29999999999999997157829056959599256515502929687500000000000000
2020.01.06 01:26:19.309 tst_double (EURUSD,H1) x = 17.39999999999999998597891452847979962825775146484375000000000
2020.01.06 01:26:19.420 tst_double (EURUSD,H1) x = 17.50000000000000000000000000000000000000000000000000000000000000
2020.01.06 01:26:19.532 tst_double (EURUSD,H1) x = 17.60000000000000142108547152020037371742248535156250000000000000
2020.01.06 01:26:19.644 tst_double (EURUSD,H1) x = 17.70000000000000002842170943040400743434449703125000000000000000000
2020.01.06 01:26:19.757 tst_double (EURUSD,H1) x = 17.80000000000000426363256414560601115226745605468750000000000000
2020.01.06 01:26:19.870 tst_double (EURUSD,H1) x = 17.9000000000005684341886080801486968994140625000000000000000
2020.01.06 01:26:19.982 tst_double (EURUSD,H1) x = 18.000000000071054273576010018587112475781250000000000000
2020.01.06 01:26:20.093 tst_double (EURUSD,H1) x = 18.100000000000008526512829121202230453491210937500000000000000
2020.01.06 01:26:20.205 tst_double (EURUSD,H1) x = 18.200000000000009947598300641402602195739746093750000000000000
2020.01.06 01:26:20.316 tst_double (EURUSD,H1) x = 18.30000000000001136868377216160297393798828125000000000000000000
2020.01.06 01:26:20.429 tst_double (EURUSD,H1) x = 18.400000000001278976924368180334568023681640625000000000000000
2020.01.06 01:26:20.542 tst_double (EURUSD,H1) x = 18.50000000014210854715202003717422485351562500000000000000
2020.01.06 01:26:20.653 tst_double (EURUSD,H1) x = 18.600000000000015631940186722204089164733886718750000000000000
2020.01.06 01:26:20.764 tst_double (EURUSD,H1) x = 18.7000000000017053052565824240446090698242187500000000000
2020.01.06 01:26:20.877 tst_double (EURUSD,H1) x = 18.800000000184741111297626260483264923095703125000000000
2020.01.06 01:26:20.989 tst_double (EURUSD,H1) x = 18.900000000000019895196601282805204391479492187500000000000000
2020.01.06 01:26:21.101 tst_double (EURUSD,H1) x = 19.00000000000002131616282072803003005576133728027343750000000000000
2020.01.06 01:26:21.213 tst_double (EURUSD,H1) x = 19.10000000000227373675444432320594789775976562500000000000000000
2020.01.06 01:26:21.326 tst_double (EURUSD,H1) x = 19.20000000024158453015843406319618225097656250000000000000
2020.01.06 01:26:21.438 tst_double (EURUSD,H1) x = 19.3000000000025579538487363609669136047363232812500000000000000
2020.01.06 01:26:21.551 tst_double (EURUSD,H1) x = 19.400000000000027623958883807063102722167968750000000000000
2020.01.06 01:26:21.664 tst_double (EURUSD,H1) x = 19.5000000000028421709430304040074343444970703125000000000000000
2020.01.06 01:26:21.776 tst_double (EURUSD,H1) x = 19.60000000000000029842794901924207806587219238282812500000000000
2020.01.06 01:26:21.887 tst_double (EURUSD,H1) x = 19.7000000000000312126386808037344440817832946773437500000000000000
2020.01.06 01:26:22.000 tst_double (EURUSD,H1) x = 19.8000000000032684949844964608550071716308593750000000000000
2020.01.06 01:26:22.112 tst_double (EURUSD,H1) x = 19.9000000003410605131648480892181396484375000000000000000000
Sérieusement, je veux comprendre et expliquer où est passée la 20.0 ?
cool ! vous êtes somnambule sur internet, mais pouvez-vous répondre à la question "où est passée la dernière itération" ? ;) dans cet exemple :
Plus sérieusement, je veux comprendre et expliquer où est passée la 20.0 ?
Eh bien, c'est assez simple :
0,1 dans le type double est en réalité 0,100000000000000000055511151231257827021181583404541015625, c'est-à-dire plus que 0,1
par conséquent ? au dernier contrôle, il sera déjà supérieur à 20, plus précisément 10+100*0,1000000000000000000000055511151231257827021181583404541015625 ~ 20,00000000000000000000555111512312578
et le cycle se termine
et si nous faisons cette expérience :
puis le résultat de la dernière itération :
Mais si nous changeons double en float, le résultat sera :
parce que 0,01 pour le double est supérieur à 0,01, et pour le float est inférieur à
C'est aussi simple que cela :
0.1 dans le type double est en réalité 0.1000000000000005511151231257827021181583404541015625, c'est-à-dire plus grand que 0.1
donc ? au dernier contrôle, il sera déjà plus de 20, plus précisément 10+100*0,1000000000000000000000055511151231257827021181583404541015625 ~ 20,000000000000000000000555111512312578
et le cycle se termine
OK, je l'ai.
Oui, la boucle for() va itérer et comparer la condition, le problème est résolu.
vous pouvez montrer ce code à titre d'exemple :
2020.01.06 01:48:50.513 tst_double (EURUSD,H1) x = 10.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
2020.01.06 01:48:50.642 tst_double (EURUSD,H1) x = 11.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
2020.01.06 01:48:50.767 tst_double (EURUSD,H1) x = 12.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
2020.01.06 01:48:50.892 tst_double (EURUSD,H1) x = 13.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
2020.01.06 01:48:51.017 tst_double (EURUSD,H1) x = 14.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
2020.01.06 01:48:51.142 tst_double (EURUSD,H1) x = 15.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
2020.01.06 01:48:51.267 tst_double (EURUSD,H1) x = 16.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
2020.01.06 01:48:51.392 tst_double (EURUSD,H1) x = 17.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
2020.01.06 01:48:51.517 tst_double (EURUSD,H1) x = 18,000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
2020.01.06 01:48:51.642 tst_double (EURUSD,H1) x = 19.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
2020.01.06 01:48:51.767 tst_double (EURUSD,H1) x = 20.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
comme prévu, la boucle s'est arrêtée lorsqu'elle a atteint 20
C'est une question qui revient tout le temps.
Tout le monde parle toujours de la norme IEEE 754, mais souvent, lorsque les gens vont sur wikipedia - soit à cause de la complexité, soit par paresse, ils repartent sans avoir compris la signification de la norme.
Je vais prendre un peu de temps pour essayer d'expliquer cette norme aussi brièvement que possible et avec des mots simples, afin de pouvoir se référer à ce post à l'avenir.
Je vous remercie, du fond du cœur ! Merci !
On peut se référer à ce message non seulement comme au fonctionnement des chiffres doubles, mais aussi comme un exemple, une réponse compétente et compréhensible pour l'utilisateur, sans envoyer de googler.
Donc, vous suggérez que ceux qui postent sur le Marché devraient être ignorés ? Je ne suis pas sûr que je voudrais faire ça, il y a eu une question, une discussion, je pense que c'est une situation normale.
PS :
en plus de cela .... essayez de désimprimer un double via printf(), j'ai le sentiment qu'il y aura beaucoup de "combien de découvertes merveilleuses l'esprit des lumières nous prépare-t-il...".
;)
Je n'ai rien suggéré ni appelé personne à quoi que ce soit. Je pense simplement que vous devriez lire plus souvent sur le forum, non seulement ce que vous avez écrit vous-même, mais aussi ce que les autres ont écrit. Surtout si des personnes vraiment inexpérimentées posent des questions. Car c'est dans ces questions et réponses que l'on peut apprendre beaucoup de choses sur soi-même. Vous pouvez même trouver une réponse à la question qui ne vous est même pas venue à l'esprit. J'ai personnellement apprisbeaucoup plus tôt l'existence de cette norme IEEE 754, en lisant simplement les questions des débutants. De vrais débutants... C'est le message qui était adressé à Vladimir en réponse à vous.
Je n'ai rien suggéré ni appelé personne à quoi que ce soit. Je pense simplement que vous devriez lire plus souvent sur le forum, non seulement ce que vous avez écrit vous-même, mais aussi ce que les autres ont écrit. Surtout si des personnes vraiment inexpérimentées posent des questions. Car c'est dans ces questions et réponses que l'on peut apprendre beaucoup de choses sur soi-même. Vous pouvez même trouver une réponse à la question qui ne vous est même pas venue à l'esprit. J'ai personnellement apprisbeaucoup plus tôt l'existence de cette norme IEEE 754, en lisant simplement les questions des débutants. De vrais débutants... C'est le message qui était adressé à Vladimir en réponse à vous.
Je vous remercie, du fond du cœur ! Merci !
Vous pouvez vous référer à ce post non seulement comme au fonctionnement des nombres doubles, mais aussi comme un exemple, d'une réponse compétente et compréhensible à un utilisateur, sans envoi de google.
Vous êtes les bienvenus :)
Je ne cherche pas souvent les codes de flèches, mais ils sont incroyablement difficiles à trouver dans l'aide !
C'est un tableau avec des astérisques, des cercles, etc.
Et la recherche renvoie tout sauf le bon !
Je ne cherche pas souvent les codes de flèches, mais ils sont incroyablement difficiles à trouver dans l'aide !
C'est un tableau avec des astérisques, des cercles, etc.
Et la recherche renvoie tout sauf le bon !