nビットの2進整数を分割する方法の疑似コードを作成するのを誰かが手伝ってくれるかどうか疑問に思っていました. 私が間違っている場合、誰かがこれを修正できますか?
divide (x,y)
if x=0: return (0,0) //(quotient, remainder)
(q,r) = divide(floor(x/2), y)
q=2q, r=2r
if x is odd: r = r+1
if r >= y: r = r-y, q = q+1
return (q,r)
この一般的な疑似コード アルゴリズムは、n ビットの数値を除算するという意図したタスクを達成できると思いますか?それとも、間違ったコードを書き始める前に、疑似コードに何かが欠けているのでしょうか?