>>310
>pre:読み込まれた時点での時刻のリスト
これをちゃんと理解してるか?読み込まれた時点での時刻のリストであって、
現在の時刻が常に更新され続けてpreに入ってるわけじゃないぞ?
だから当然ボタンが押されたときにstとpreは同一になる。
実行はいつまでも終わらないんじゃなくて、一瞬で終わってるんだ。

物事は複雑に考えちゃだめだ。なるべくシンプルに考えないと。
コストやメンテナンスが大変だからな。

おまえの要求を満たすプログラム↓

ctr = 0;
While[100 a + 10 b + c - ctr != 0, Pause[1]; ctr++]
Dynamic[100*a + 10*b + c - ctr]