202307FunctionTalkInNotesKnowsWorkshop47th

>100 Views

July 23, 25

スライド概要

Notes Dominoの@関数を取り上げながら、調べたこと、経験したことを雑談してゆきます。
第47回は @For、@While、@DoWhile について

profile-image

Notes Domino worker - Formula language ♡er, #IBMChampion '15 & #HCLAmbassador '20 - '25, Nature Game (Sharing Nature) leader

シェア

またはPlayer版

埋め込む »CMSなどでJSが使えない場合

ダウンロード

関連スライド

各ページのテキスト
1.

@ -notes knows community- 2023/07/13 @関数Talk 第47回 公開版 @ Talks around @Functions in Notes and Domino ✔ @For ✔ @While 47th ✔ @DoWhile What? 阿部 覚 (tw:) @abesat

2.

@ ひきつづき… @

3.

@ @For@ で放談

4.

@ 前回お話したように この関数で案内されている標準的な使い方は 引数ごとにこんな指定をするものでした 1つ目 初期値 initialize 2つ目 実行条件 condition 3つ目 変数変える ふつうは増やす increment @For(n := 1; n <= 10 ; n := n + 1; や り た い こ と ; W h a t you w a n t t o d o ); @ 4つ目以降に 繰り返し実行したいこと statements

5.

@そして純粋に機能ベースで見た場合は こういうことらしい、と見ています ● 常に👇この順序で動作する 1番目の引数 2番目の引数 4番目以降の引数 3番目の引数 2番目の引数 4番目以降の引数 3番目の引数 2番目の引数 4番目以降の引数 3番目の引数 : @For( initialize ; condition ; increment ; @ statement ; ... ) ● 2番目の引数(条件/condition)がFalseになったら動作終了

6.

だったら、標準的でない使い方の例 って作れないかな? @ 無い知恵しぼって💦とりあえずこんな式はどうでしょう 右の実行順序を踏まえて どんな値になるか ご考察ください♥ @

7.

こたえ: @ @ stringの値に関わらず、間に"♥"を挟んでくり返し、 20文字を超えたら終了です

8.

@ この式って、最初に string をセットした後は @ "♥" + string を繰り返し加えているだけですね だったら、まとめてよくない?

9.

すなわち、こう👇です @ 3つ目の引数にまとめちゃいましたが、 これで同じ結果になります @ ということは、ヘルプには書いてないようだけど @For は4つ目以降の引数、省略可能 なようです!

10.

もうひとつ、標準パターンでない、こんな例を @ こちらの @For も4番目以降の引数は略しちゃいました …どころか、まともに使ってるのは2番目(condition)だけです @ ボタンの式ですが、 実業務のアプリではあまりマネしないでくださいね

11.

このボタンをクリックすると @ こんなプロンプトが現れ @ 「はい」を選択しないと、くり返し現れつづけます♪

12.

@ と、ここでほかのループ型関数の話も したいと思います @

13.

@ @While @ で放談

14.

@ @While ヘルプによれば 「条件が True の間、ステートメントを繰り返し実行しま す。ステートメントを実行する前に条件を調べます。」 @

15.

@この関数も同様に骨組み化してみると こうかな ● 常に👇この順序で動作する 1番目の引数 2番目以降の引数 1番目の引数 2番目以降の引数 1番目の引数 2番目以降の引数 : @While( condition ; statement ; ... ) ● 1番目の引数(条件/condition)がFalseになったら動作終了 1回も動かないこともありうる @

16.

@ @DoWhile @ で放談

17.

@ @Dowhile ヘルプによれば 「条件が True の間、ステートメントを繰り返し実行しま す。ステートメントを実行した後で条件を調べます。」 @

18.

@やはり同様に骨組み化してみると ● 常に👇この順序で動作する 最後を除く各引数 最後の引数 最後を除く各引数 最後の引数 最後を除く各引数 最後の引数 : @DoWhile( statement ; ... ; condition ) ● 最後の引数(条件/condition)がFalseになったら動作終了 最低1回は動く @

19.

も @DoWhile も、 @実のところ、@While 引数がただ順番に処理されて先頭に戻るだけで 条件OK なら 次の引数 先頭へ 条件OK なら 先頭へ 次の引数 むしろ引数順でない @For が例外的ですね~ @

20.

@また、@While にも @DoWhile にも、 @ @For での 初期値/initialize や 増分/increment にあたる 引数はない…というより明確でなくて 関数の手前や statement 内 で自分で設定する感じです

21.

@ 単純な例:@While編 戻り値、わかりますか? @

22.

@ 単純な例:@While編 @

23.

@ 単純な例:@DoWhile編 戻り値、わかりますか? @

24.

@ 単純な例:@DoWhile編 ん、@While も @DoWhile も同じ戻り値? @

25.

@ 今回はこのへんまで もうすこし、これら関数のお話を続けたいと思います @

26.

@ 今回もお付き合い ありがとうございました 😀 @ What?