差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン前のリビジョン
次のリビジョン
前のリビジョン
odin:control_flows [2025/05/24 11:20] – [do ... while は存在しない] Remove else clause freemikanodin:control_flows [2025/06/20 11:23] (現在) – [do ... while は存在しない] Modify comment to clearer freemikan
行 1: 行 1:
 ====== 制御フロー ====== ====== 制御フロー ======
- +[[odin:|{{:odin:odin_logo.svg?200|Odin}}]]
-{{:odin:odin_logo.svg?200|Odin}}+
  
 Odinの制御フローに関する機能は、全て文 (statement)です。 Odinの制御フローに関する機能は、全て文 (statement)です。
行 99: 行 98:
  
 間違って条件が重複するケースを書いてしまった場合、多くの場合はコンパイラによってコンパイルエラーとして検出されます。 間違って条件が重複するケースを書いてしまった場合、多くの場合はコンパイラによってコンパイルエラーとして検出されます。
-例えば ''case -100..<0'' を ''case -100..='' としてしまった場合、0の場合が重複するのでコンパイルされません。+例えば ''case -100..<0'' を ''case -100..=0'' としてしまった場合、0の場合が重複するのでコンパイルされません。
 これはプログラミングエラーを検出するのに大きな役割を果たしてくれます。 これはプログラミングエラーを検出するのに大きな役割を果たしてくれます。
  
行 307: 行 306:
   * マップ   * マップ
  
-また、上で「変数名」としたところ「変数名1, 変数名2」のようにすることが可能な、柔軟な反復可能なオブジェクトもあります。+また、上で「変数名」としたところ「変数名1, 変数名2」のようにすることが可能な、柔軟な反復可能なオブジェクトもあります。
  
 <file odin> <file odin>
行 360: 行 359:
 answer: string answer: string
 for { for {
- // もう一度ユーザーから入力を受け付け+ // 少なくとも一度は処理を行う... 
 + // ... 
 + 
 + // もう一度繰り返すかどうかユーザーに尋ね
  answer = read_user_input(prompt = "続けますか? (yes/no)")  answer = read_user_input(prompt = "続けますか? (yes/no)")
   if answer == "yes" || answer == "no" {   if answer == "yes" || answer == "no" {
文書の先頭へ