>>785
> while(i < num2)
> でnum2=5だったとき、iが4まで繰り返すという認識であってますでしょうか?

全く違います。 while () は ()かっこの中が 真(true) の間だけ処理を繰り返す構文です
「 i < num2 」 は 「 i が num2 未満 」 という条件式です。 条件式は式の計算結果として真(true)か偽(false)の値を返します

num2=5 のときは「 i が 5未満 」と言う意味です。iが5より小さい値なら真になります