Programowanie i algorytmy

N-ty wyraz ciągu

Zad. 2. Poniżej zdefiniowany jest pewien ciąg, którego kolejne wyrazy generowane są w sposób rekurencyjny:

ciąg

Napisz program, który znajdzie wartość n-tego wyrazu ciągu.

 

 

Rozwiązanie

Podobnie jak w zadaniu trzecim wypiszemy kilka kolejnych wyrazów tego ciągu:

{tex}a_1=1{/tex}

{tex}a_2=0,5{/tex}

{tex}a_3=-a_2\cdot a_1=-1\cdot 0,5 = -0,5{/tex}

{tex}a_4=-a_3\cdot a_2 = -(-0,5)\cdot 0,5=0,25{/tex}

{tex}a_5=-a_4\cdot a_3=-0,25\cdot 0,5=-0,125{/tex}

{tex}\cdots{/tex}

#include<iostream>
using namespace std;
 
float ciag(int n)
{
  if(n==1) 
    return 1;
  if(n==2) 
    return 0.5;
 
return -ciag(n-1)*ciag(n-2);
}
 
int main()
{
  int n;
 
  cout<<"Podaj nr wyrazu ciągu, którego wartość chcesz policzyć: ";
  cin>>n;
  cout<<n<<" wyraz ciągu ma wartość "<<ciag(n)<<endl;
 
  system("pause");
  return 0;
}
 

powrót