我应该通过归纳证明一个算法,并且它返回3 n - 2 n 所有n> = 0.这是在埃菲尔写的算法
P(n:INTEGER):INTEGER;
do
if n <= 1 then
Result := n
else
Result := 5*P(n-1) - 6*P(n-2)
end
end
我的理解是你分三步证明它。基础步骤,归纳假设和完整性证明。这就是我目前所拥有的。
基础:
P(0)返回0,3 0 - 2 0 = 0.
P(1)返回1,3 1 - 2 1 = 1。
归纳假设:
假设P(k)返回3 k - 2 k 0 <= k <1。 Ñ
完整性证明:
对于n,P(n)返回5(P(n-1)) - 6(P(n-2))
5(P(n-1)) - 6(P(n-2))
5(3 n-1 - 2 n-1 ) - 6(3 n-2 - 2 n- 2 )&lt; - 基于归纳假设
这是我陷入困境的部分。我该怎么把它减少到看起来像3 n - 2 n ?
答案 0 :(得分:2)
使用3 n-1 = 3.3 n-2 和2 n-1 = 2.2 n-2的事实:
5(3 n-1 - 2 n-1 ) - 6(3 n-2 - 2 n- 2 )
= 15(3 n-2 ) - 10(2 n-2 ) - 6(3 n-2 )+ 6 (2 N-2 )
= 9.3 n-2 - 4.2 n-2
= 3 n - 2 n
答案 1 :(得分:1)
5(3^(n-1)-2^(n-1))-6(3^(n-2)-2^(n-2)) =
= 5*3^(n-1)-5*2^(n-1)-6*3^(n-2)+6*2^(n-2) =
= 5*3^(n-1)-5*2^(n-1)-2*3^(n-1)+3*2^(n-1) =
--------- ========= --------- =========
= 3*3^(n-1)-2*2^(n-1) =
= 3^n - 2^n