変数というのは、『常に変わりつつある数』を保存しておくのに便利な物であって、Kが変わる毎に、その値を保存出来れば、最後にまとめて計算が出来る。ただ、ループの回数が分からない以上、Kの中身を保存しておく為の変数を無造作に用意するという訳にも行かない(1個で十分なケースもあれば、100個あっても足りないケースもある)。 問題文を見る限りでは、最終的な和が求められれば良いので、Kの値を個別に保存しなくても、ループの途中で計算していけば良い、という事になる。例えば、最初にSに0が入っている状態で、PRINT S+1と入力すると、(0+1=)1が表示され、5が入っているならば、(5+1=)6が表示される。そして、この計算結果をそのままSに入れ直す事で、Sに計算結果を『足し込んでいく』事が可能になる。 100行にS=0という命令があるのはその前フリで、ここからどんどんKの値を足し込んでいけば良いのだ。