Sie verpassen Handelsmöglichkeiten:
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Registrierung
Einloggen
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
== :(Ich habe Ihnen einen funktionierenden Code gegeben, der akzeptable Ergebnisse für Anwendungen liefert. Außerdem können Sie einen beliebigen MF-Bereich angeben.
Я Вам дал рабочий код, дающий приемлемые результаты для прикладных задач. Плюс возможность указывать любой диапазон CЧ.
Und was ist mit dem Löffel?
А вам, уважаемый, известно, что между любыми, сколь угодно близкими друг к другу, вещественными числами имеется бесчисленное множество вещественных чисел ?
А известно, что интервал (0,1) по мощности эквивалентен бесконечной прямой ?
Если нет - задумайтесь об этом.
Если да - правильно формулируйте свой вопрос.
Заодно попытайтесь сказать, с какой плотностью (штук на ед. длины) вы хотите иметь генерацию СЧ ?
А может вы хотите, чтобы ваш ГСЧ генерил все числа отрезка (0,1) ?
???!!!!
"Oder vielleicht wollen Sie, dass Ihr GSH alle Nummern ein Segment (0,1)?" Was ist das für ein Unsinn? Haben Sie Zahlentheorie studiert?
Ну так а ложку?
Soll ich noch etwas mehr in den Mund nehmen? :)
Могет быть, ещё в рот положить? :)
Los geht's!
Ну поехало!Also wirklich, was kann man nicht normalisieren die nehmen selbst.
Ну поехало!Na los! 32767 Stück pro Längeneinheit sind in Ordnung. Man könnte natürlich auch 100000000 machen, aber warum?!
Ну действительно что не можешь сам нормализовать дубль.
Ich tue dies.
double ranD(int rsign,int rstep) { double sumR=0; for(int zr=1;zr<=2;zr++) { //---- string ran="0."; for(int z=1;z<=rstep;z++) { ran=ran+DoubleToStr(MathFloor((MathRand()/32767.0)*10),0); } double randou=StrToDouble(ran); if(rsign==1) { randou=2*randou-1; } sumR+=randou*randou; //---- } randou=randou/MathSqrt(sumR); //Print("randou = "+randou); return(randou); }
Aber....Kaugummi, dann versuchen Sie dies. Das Prinzip ist das gleiche, aber anstatt ganze Zahlen von 0 bis 32767 zu erzeugen, erhält man etwa 0 bis 2^30. Jede Zahl ist MathRand() + MathRand()*32768. Ich habe noch nicht erforscht, wie die Verteilung sein wird, aber für nicht allzu anspruchsvolle Aufgaben wird sie hoffentlich tip-top sein.
Dies sind Zahlen vom Typ AB im Zahlensystem 32768.
Besser noch: Verwenden Sie eine DLL. Es gibt eine, sie erzeugt sofort so große Zahlen.
gumgum, тогда попробуй вот так. Принцип тот же, но вместо генерации целых чисел от 0 до 32767 ты получишь примерно от 0 до 2^30. Каждое число - это MathRand() + MathRand()*MathRand(). Я не исследовал, как будут распределены, но надеюсь, что для не слишком требовательных задач все будет тип-топ.
Это числа вида AB в 32768-ичной системе счисления.
Ich habe es ausprobiert. Dort ist es nicht gut.