数値変数に代入の時点で数式なら評価されて変数の中身は数値なんですけど、文字列も受け取るINPUTはそのまま文字列の状態で代入されているので、一回数式に変換して評価するっていう過程を踏まないと数値化されないんじゃないです? 変数の型が違う時に出るエラーが、INPUTの時は一律でRedo from startと表示されてるだけな気もしますけど。 受け取る変数を文字列変数じゃなく数値変数にして文字列を入力すると、いきなりRedo from startって出ますし。