一括処理部品集2‖goaltime.html                            《戻る 玄関へ
 《 スタート・ゴール時刻を計測する 》

【内容】
  スタートとゴールの時刻を計測し、タイムを求める。(秒単位まで)
  スタートとゴールの時刻を計測し、タイムを求める。(0.01秒単位まで)
  以下、用例などの文字列中に0.01秒まで表示する場合は赤字で
  表現しています。

【用例】
 名札 計測
    手続き実行 F種類                                       @
    表
    表 &TBL1
    ジャンプ 行番号=先頭
    メッセージボックス #連結(&システム名,"スタート時刻") \
              ,"☆ スタート時にEnterキーを入力してください。\
              \n よろしいか? よーい、 ドン!",アイコン=i,ボタン=5,&START
     ケース開始
        ケース (&START=6)
            行訂正 [時刻]=#時刻                              A
            *行訂正 [時刻]=#時間数値(#日時時刻(#日時値),5)
            &S時刻=[時刻]                                   B
        ケース (&START=7)
            分岐 START
     ケース終了
    &MESS1=#連結("☆ スタート時刻=( ", &S時刻," )" \
        ,"\n\n  スタートのやり直しは「いいえ」です。" \
        ,"\n\n★ これでよければ、このまま待機してください。 ★" \
        ,"\n\n 1着がゴールする瞬間に「はい」を押してください。" \
        ,"\n\n  以下、ゴール毎に「はい」を押してください。" \
        ,"\n\n  最終ゴール後、記録を中止します。")
            &S時刻#str(#時間値(&S時刻,5))で置き換える
    メッセージボックス #連結(&システム名,"【スタート時刻】です。") \             C
             ,&MESS1,アイコン=!,ボタン=4,&START
       条件 (&START=2) 分岐 START
       条件 (&START=7) 分岐 計測
    ジャンプ 行番号=終端
    &着順=0
   繰り返し (&着順<10001)
      ジャンプ 行番号=終端                 
       &着順=&着順+1          
       &T時刻=#時刻                                        D
            *&T時刻=#時間数値(#日時時刻(#日時値),5)
       &タイム=#時間文字列(#時間(&S時刻,&T時刻,3),3)                  E
            *&タイム=#時間値((&T時刻-&S時刻),5)
      行挿入 [着順]=&着順,[時刻]=&T時刻,[タイム]=&タイム                F
      &MESS2=#連結("☆ ゴール毎に「はい」を押してください。" \
            ,"\n\n   ゴ ール時刻=( ", #全角(&T時刻)," )" \
            ,"\n   スタート時刻=( ", #全角(&S時刻)," )" \
            ,"\n\n   ",#全角(#STR(&着順))," 着 タイム=   ",#全角(&タイム) \
            ,"\n\n  最終ゴール後または計時を中止する時に「いいえ」を押してください。" )
            *#全角(&T時刻)#str(#時間値(&T時刻,5))で置き換える
            *#全角(&S時刻)を#str(#時間値(&S時刻,5))で置き換える
       メッセージボックス #連結(&システム名,"【着順とゴールタイム】です。") \      G
            ,&MESS2,ボタン=5,&GOAL
         条件 (&GOAL=7) 繰り返し中止
   繰り返し終了
   手続き実行 表初期
   表形式編集 ガイド="訂正:f・2 追加:f・3 終了:f・4 /Q",初期項目="タイム"        H
   ・・・・・・
 手続き終了

【解説】
 @ 種目別に用意したゴール時刻記録表を選びます。
    記録表の[着順]の先頭行には0を設定しています。
 A 記録表の[時刻]の先頭行にスタート時刻を入力します。
    [時刻]、[タイム]のデータ型はどちらも文字列型。
    (0.01秒まで表示する一括処理では、
     [時刻]は数値型、[タイム]は時間型とした。)

 B スタート時刻を変数に入れておきます。
 C スタート時刻などを表示します。
    スタートのやり直しもできます。
 D ゴール毎に、時刻を変数に入れ
 E スタート時刻とゴール時刻からタイムを求めます。
 F 記録表に、着順・ゴール時刻・タイム
を順次挿入します。
 G 着順・ゴール時刻・タイムなどは画面に表示します。
 H 計測終了後に記録表を表示します。

【参考】
 秒単位表示のもの






 

                      END of FILE  戻る 《玄関へ