Cho dãy A={4,3,-2,-6,-5,0,4,…} xây dựng định nghĩa đệ quy cho việ tính An(n>=0) xây dựng giải thuật đệ quy tính An tính A10?
Mong mọi người giúp mình với
Cho dãy A={4,3,-2,-6,-5,0,4,…} xây dựng định nghĩa đệ quy cho việ tính An(n>=0) xây dựng giải thuật đệ quy tính An tính A10?
Mong mọi người giúp mình với
Bài này dễ nhìn thấy quy luật này. A(n) = A(n-1) - A(n-2) - 1
UPD: Dãy này tuần hoàn xừ nó rồi
đề nhạt thật…
Hoặc là làm thế này nếu cảm thấy cái quy luật của bạn @noname00 đưa ra là không dễ nhìn thấy 
mảng Input = {4, 3, -2, -6, -5, 0}
nếu n < 6 thì return Input[n]
nếu không thì return A[n - 6]
Đoạn code như thế này nhưng kết quả nó lại ra -1 bạn ơi 
#include <iostream>
using namespace std;
int f(int n){
if(n>0){
return f(n-1) - f(n-2) - 1;
}
else{
return 4;
}
}
int main(){
cout<<f(1);
}
Đã từng nghĩ tới
mà bài này lại phải làm bằng đệ quy bạn ah 
Đã làm đệ quy bao giờ chưa mà viết được code này vậy 
Mà cái mình đưa ra cũng là đệ quy nhé.
Mình mới học code c mà bạn. sai ở đâu bạn chỉnh hộ mình vs 
Bạn phải để ý chứ. Nếu cout f(1) thì nó tính bằng f(0) - f(-1) - 1 à
Thêm điều kiện kiểm tra vào.
chuẩn rồi. ngắn gọn xúc tích 
#include <iostream>
#include <math.h>
#include<conio.h>
using namespace std;
long f(int n)
{
if(n==1)
return 4;
if(n>=0)
return f(n-1)-f(n-2)-1;
}
int main()
{
int n;
cout<<"\nNhap vao so n la:";cin>>n;
cout<<"\nKet qua cua no la:"<<f(n);
}
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?