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

Rekurencja zadanie maturalne

Ostatnio zmodyfikowano 2015-02-11 23:46
Autor Wiadomość
Jamalek
Temat założony przez niniejszego użytkownika
Rekurencja zadanie maturalne
» 2015-02-11 23:12:55
Tutaj znajduje się treść zadania: http://www.dlamaturzysty.info/galeria/36234/133033/6895

Mój źle działający kod:

#include <iostream>
using namespace std;
////////////////////////////
void Korale(int n)
{
for(int i=1;i<n;i++)
{
if(i==1) cout<<"czarny ";
/////////////////////////////////////////////////////
if(i&2==0)
{
Korale(n/2);
cout<<"bialy ";
}
///////////////////////////////////////////////////
if(i&2!=0)
{
Korale((n-1)/2);
cout<<"czarny ";
}
}
}
int main(int argc, char** argv) {
Korale(8);
return 0;
}

W którym miejscu znajduje się błąd, dobrze podszedłem do tego zadania?

P-126389
megatron
» 2015-02-11 23:22:02
Wg mnie '%' nie '&' ;)

Edit:
Wywolujesz funkcje w tej samej funkcji?
To tak jak by kwiat sam sie sadzil, problem sam naprawial i wgl wszystko samo z sb;p
P-126390
Jamalek
Temat założony przez niniejszego użytkownika
» 2015-02-11 23:27:07
faktycznie '%'= to jest reszta z dzielenia ups:) poprawilem ale program dalej nie pokazuje poprawnych wyników. Masz jeszcze jakiś pomysł? dobrze się za to zabrałem? czy należy to napisać w inny sposób?
P-126392
megatron
» 2015-02-11 23:30:20
Jak up napisalem to funkcja wywoluje sama sb
To tak mozna?;p
Ja bymwgl wyrzucil ta petle tylko dal poprostu zmienna n i wykonywal procedure liniowo;)

 Edit: mozesz tez w funkcji main zadeklarowac zmienna n i robic wg procedury wykonujesz funkcje z parametrem n=1 gdzie parametr jest wskaznikiem
Nastepnie w funkcji main sprawdzasz wartosc zmiennej n czy jest parzysta i eywolujesz funkcje tak jak dalej w poleceniu
P-126393
PaSaSaP
» 2015-02-11 23:42:33
void Korale(int n)
{
    if(n == 1)
    {
        cout << "czarny ";
        return;
    }
    if(n % 2 == 1)//Nieparzyste
    {
        Korale((n - 1) / 2);
        cout << "czarny ";
        return;
    }
    //Parzyste
    Korale(n / 2);
    cout << "bialy ";
    return;
}
P-126397
Jamalek
Temat założony przez niniejszego użytkownika
» 2015-02-11 23:46:58
Dzięki Papasap o to mi chodziło:) temat można zamknąć:)
P-126399
« 1 »
  Strona 1 z 1