Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

[c++] Prosty ciag liczbowy - rekurencyjnie

Ostatnio zmodyfikowano 2013-12-09 20:22
Autor Wiadomość
hitback
Temat założony przez niniejszego użytkownika
[c++] Prosty ciag liczbowy - rekurencyjnie
» 2013-12-09 17:55:25
Siema mam obliczyć wartość podanego ciągu liczbowego : 1+2+4+8+16+32+64...

Początek mam taki :
C/C++
#include <iostream>
using namespace std;


int ciag( int n )
{
    if( n == 1 ) return 1;
    else return ciag( n - 1 ) + 2 * n
}
int main()
{
    int n;
    cout << "Podaj wartosc n : ";
    cin >> n;
    cout << ciag( n );
   
   
}
// Próbowałem tak ale coś mi nie wychodzi tak jak trzeba. Mógłby mi ktoś wytłumaczyć/pokazać jak to ma wyglądać ?
PS: i jeszcze mam taki ciąg którego już wogóle nie potrafie napisać , mam obliczać wartość wyrażenia : -2+5-8+11-14+...
P-98817
leon_w
» 2013-12-09 19:52:16
Dopiero kilka dni temu czytałem o rekurencji, ale mogę coś już podpowiedzieć.
Rekurencja jest to wywołanie funkcji przez samą siebie.
Mniej lub więcej tak powinien wyglądać kod:
C/C++
#include <iostream>
using namespace std;


int ciag( int n )
{
    if( n > 100 ) //warunek kiedy funkcja ma przestać siebie wywoływać
         return n;
   
    cout << n << "+" << n << "=" << n + n << endl; //pomocnicze wyświetlanie na ekranie :P
    n = n + n;
   
    ciag( n ); //funkcja wywołuje samą siebie, z nową (dodaną do siebie) wartością.
}
int main()
{
    int n;
    cout << "Podaj wartosc n : ";
    cin >> n;
    ciag( n );
   
   
}



edit.
             Co do drugiego zadania, to do wyniku trzeba dodać -3, tylko nie wiem jak zmienić znak na dodatni.
P-98843
hitback
Temat założony przez niniejszego użytkownika
» 2013-12-09 20:22:54
Dzięki wielkie
P-98849
« 1 »
  Strona 1 z 1