いわゆるリトルとビックですよね。

だとすると最初の a(n)*b(n) も変な値が a,b に
セットされているかもしれませんね。
つまりある変数で a(n) もしくは b(n) に NaN
が入っていたりとかね。

もうちょっと print デバッグすれば解消しそうだ