Mam do zrobienia w domu dwa zadanka z informatyki i nie za bardzo wiem jak się za to zabrać. Pomoże ktoś? Temat: rekurencja. C++ Zadanie 1 Napisz program wyznaczający n-ty wyraz podanego ciągu liczbowego (-1, 1, - 3, 5, - 11, 21, - 43, 85, - 171) Zadanie 2- (treść na zdjęciu) Proszę o pomoc



Mam Do Zrobienia W Domu Dwa Zadanka Z Informatyki I Nie Za Bardzo Wiem Jak Się Za To Zabrać Pomoże Ktoś Temat Rekurencja C Zadanie 1 Napisz Program Wyznaczając class=

Odpowiedź :

Odpowiedź:

Zad 1:

#include<iostream>

#include<cmath>

using namespace std;

int ciag(int n)

{

   if(n==1)

   {

       return -1;

   }

   if(n==2)

   {

       return 1;

   }

   if(n%2==1)

   {

       return -(pow(2,n-2)-ciag(n-2));

   }

   if(n%2==0)

   {

       return pow(2,n-1)+ciag(n-1);

   }

}

int main()

{

   int n;

   cout<<"Podaj n";

   cin>>n;

   cout<<"Ciag z "<<n<<" wynosi "<<ciag(n);

}

Zad 2:

#include <iostream>

using namespace std;

int ile(int n, int m)

{

   if(m==0)

   {

       return 1;

   }

   else if(m==n)

   {

       return 1;

   }

   else

   {

       return ile(n-1,m-1)+ile(n-1,m);

   }

}

int main()

{

   int n,m;

   cout<<"Podaj n";

   cin>>n;

   cout<<"Podaj m";

   cin>> m;

   cout<<"Wynik to: "<<ile(n,m);

   return 0;

}

Wyjaśnienie:

Pierwsze zadanie, co drugi liczba była ujemna, a różnica ciągu  to kwadraty liczb 2. Użyta została biblioteka  cmath z funkcja pow  gdzie łatwiej oblicza się potęgi w c++. Drugie zadanie robimy instrukcje if jak pokazuje zadanie nic trudnego.