double Lot;
// где-то вычисляется значение Lot, финальная проверка и приведение к допустимым границам фееричны:if(Lot > MaxLot) Lot = MaxLot;
if(Lot < MinLot) Lot = MinLot;
// а то и вовсе:if(Lot > MaxLot) Lot = MaxLot;
elseif(Lot < MinLot) Lot = MinLot;
// а не проще ли сделать так?
Lot = MathMin(MathMax(Lot, MinLot), MaxLot);
intOnInit()
{
for(int i=0;i<somefunc();i++) PrintFormat("array[%d]\n", i);
return(INIT_SUCCEEDED);
}
int somefunc() {
staticint count = 0;
PrintFormat("Туточки уже %d-й раз!\n", ++count);
return3; // это типа количество чего-то там, элементов массива например
}
そして、これがサンプルランの結果です。
2021.05.0308:01:36.343 show_the_shitz EURJPY,H1: initialized
2021.05.0308:01:36.343 show_the_shitz EURJPY,H1: Туточки уже 4-й раз!
2021.05.0308:01:36.343 show_the_shitz EURJPY,H1: array[2]
2021.05.0308:01:36.343 show_the_shitz EURJPY,H1: Туточки уже 3-й раз!
2021.05.0308:01:36.343 show_the_shitz EURJPY,H1: array[1]
2021.05.0308:01:36.343 show_the_shitz EURJPY,H1: Туточки уже 2-й раз!
2021.05.0308:01:36.343 show_the_shitz EURJPY,H1: array[0]
2021.05.0308:01:36.343 show_the_shitz EURJPY,H1: Туточки уже 1-й раз!
Циклы в Си: цикл while с предусловием, цикл do while с постусловием, цикл for со сщётчиком. Бесконечный цикл. Оператор break. Оператор continue. Примеры работы с циклами
その例には感謝します。
ちんたら書くより、そうやって並べる方が好きなのは自分だけかと思ってた。
hz - ロシア語に訳すと「知りたい」...悪く考えないでね...。標準ライブラリの クラスを使った方が、長いPositionGet...を書かなくて済む。など
その例には感謝します。
ダラダラ書くより、そうやって並べる方が好きなのは自分だけかと思っていました。
何が問題なのか?
コーダーナチと 言うわけではありませんが、私としては、このような構成は不愉快です。
目障りなんです。zaz how」ではなく、こういった形にした方がいいのでは?
あるいはこのような「シツコイ」。
PositionsTotal()がループの反復ごとに呼び出さ れるところ!
通常のコーダーは、ポジションのインデックス(幸いなことに、ここでは存在しない)で通過するループの本体を操作して、ポジションの番号を変更するようなことはしないでしょう。これはまさに無教養の極みであり、不具合の多いコードです。こんなことされたらループごと再起動するしかないじゃん。
また、このようなものが好きな人もいます。
しかし、最適化のためにCPUの使用時間を増やしたくない初心者にとっては、学校で習ったBASICの「プログラミング」のような「if-then-other-all」の構文の方がわかりやすい。
そして、これらはすべてコピーペーストの原理によって、コードからコードへと複製 されるのです。
そこで...
...
あるいはこのような「シツコイ」。
PositionsTotal()がループの繰り返しごとに呼び出さ れるところ!
...
本当ですか?賢くなりたいのに、マンネリ化している...。
そのために登録したのですか?ちょうど、最初の投稿から、迷子になる......という感じです。
本当ですか?賢いつもりでいたのに、暴走してしまったか...。
しかも、わざわざ登録したのか?ちょうど、最初の投稿から、トイレに...。
あら、そうなの。"数学を学べ" エルガーとクヌート私情を挟まないでください。
わかった、説明しよう。
わかったかい?
そうでない場合は、[ctrl+f , look for "Cycle for"]のどこかから、https://learnc.info/c/loop.html を熟読してください。
こちらはリンクを探すのもダラダラしています。
そして、リテラシーのある、素敵で簡潔なコードを書くことを学んでください。アセンブラから始めるべきでしたね、1バイト単位が重要なマイコンでは。
追伸
ここで私は、専門家に彼のループ「for」の簡単な例を見せるのが惜しいくらいだった。
そして、これがサンプルランの結果です。
繰り返しのたびに関数が呼び出されるだけでなく、最後には+1回まで呼び出されていることがわかる。
それでは、どうぞ。
えー、ダーリン。"数学を学べ" エルガーとクヌート私情を挟まないでください。
わかった、説明しよう。
わかったかい?
そうでない場合は、[ctrl+f , look for "Cycle for"]のどこかから、https://learnc.info/c/loop.html を熟読してください。
こちらはリンクを探すのもダラダラしています。
そして、リテラシーのある、素敵で簡潔なコードを書くことを学んでください。アセンブラから始めるべきでしたね、1バイト単位が重要なマイコンでは。
追伸
ここで私は、専門家に彼のループ「for」の簡単な例を見せるのが惜しいくらいだった。
そして、これがサンプルランの結果です。
繰り返しのたびに関数が呼び出されるだけでなく、最後には+1回まで呼び出されていることがわかる。
それでは、どうぞ。
拍手喝采です!続けて...
拍手喝采です!続けて...
本当ですか?賢いつもりでいたのに、暴走してしまったか...。
しかも、わざわざ登録したのか?最初の投稿から水たまりの中へ......そんな感じです。
なんて面白い会話をしているのでしょう)))
諸君、個性は個性だが、真実を見極めよう。
この例を使うと、ループの反復 ごとにPositionsTotal() が呼び出されることがわかります。
でも、Dimitriさんは逆に、コンパイラが違う方法でやっていると言っているわけですが、私には理解できません。説明する。
PositionsTotal() 関数が毎回ポジションを再計算するのではなく、単にオープンポジションの数を含む変数の値を返すというなら、はい、その通りです。もう一つ変数を宣言する意味はありませんが、それではコンパイラーは何をしなければならないのでしょうか。
そして、この関数が毎回オープンポジションを再計算するのであれば、コンパイラはこの関数の値がさらなる計算に影響するかどうかを理解し、関数か変数のどちらかを使用しなければならないことがわかりました。
何か腑に落ちないんですよね。
面白い会話をしていますね)))