vbscript で再帰を実装しようとしています。
Function largest_prime_factor (ByVal num)
For i = 2 to num/2
If num mod i = 0 Then 'this number is not prime
largest_prime_factor (num / i)
End If
Next
largest_prime_factor = num ''if at this point, we have reached the largest prime
End Function
ご覧のとおり、これは基本的に、数値の最大の素因数を提供するように設計されたスクリプトです。ただし、このスクリプトは、印刷を実行すると、帰属された数値を吐き出します。デバッグ後、スクリプトが実際に for ループ内の条件に入ることがわかりましたが、その後は再帰しません (つまり、for ループを実行し続け、その時点で終了します)。
VBscript の再帰について何が欠けていましたか? 私も何かを試してみました
largest_prime_factor = largest_prime_factor (num / i)
条件内で、これも機能しませんでした。