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

[c++] fraktale; brak kontynuacji działania w pętli

Ostatnio zmodyfikowano 2014-05-08 21:10
Autor Wiadomość
kinga9650
Temat założony przez niniejszego użytkownika
[c++] fraktale; brak kontynuacji działania w pętli
» 2014-05-08 18:51:43
Cześć wszystkim,
Chciałam się gdzieś podpiąć, ale nie znalazłam odpowiedniego wątku.
Zależy mi na tym, aby ktoś zerknął na mój program i powiedział gdzie może tkwić błąd.

Program generalnie polega na narysowaniu dywanu Sierpińskiego.
C/C++
#include <allegro.h>

void sierp( float x1, float y1, float l, int k )
{
    l /= 3;
    line( screen, x1 + l, y1 + l, x1 + 2 * l, y1 + l, makecol( 0, 255, 0 ) );
    line( screen, x1 + 2 * l, y1 + l, x1 + 2 * l, y1 + 2 * l, makecol( 0, 255, 0 ) );
    line( screen, x1 + 2 * l, y1 + 2 * l, x1 + l, y1 + 2 * l, makecol( 0, 255, 0 ) );
    line( screen, x1 + l, y1 + 2 * l, x1 + l, y1 + l, makecol( 0, 255, 0 ) );
    if( k > 0 )
    {
        --k;
        sierp( x1, y1, l, k );
        sierp( x1 + l, y1, l, k );
        sierp( x1 + 2 * l, y1, l, k );
        sierp( x1, y1 + l, l, k );
        sierp( x1 + 2 * l, y1 + l, l, k );
        sierp( x1, y1 + 2 * l, l, k );
        sierp( x1 + l, y1 + 2 * l, l, k );
        sierp( x1 + 2 * l, y1 + 2 * l, l, k );
    }
}

int main()
{
    (...)
   
    sierp( 10, 10, a - 20, 15 );
   
    readkey();
   
    allegro_exit();
    return 0;
}
END_OF_MAIN();

Używam biblioteki Allego, jednak nie to jest tutaj raczej problemem. Chodzi o to, iż po rozpoczęciu działania w if{} i przejściu przez pierwsze polecenie program wydaje się kończyć pracę nie realizując kolejnych poleceń. Przeanalizowałam działanie programu w głowie i według mnie dalej powinien działać on prawidłowo. Jak znam życie jest to pewnie błahy błąd, więc mam nadzieję, że może tutaj ktoś go szybko wyłapie.
Z góry dziękuję za pomoc!
P-109510
Monika90
» 2014-05-08 19:33:27
sierp( 10, 10, a - 20, 15 );

Może 15 to za duża liczba, spróbuj czegoś mniej dużego, jak np. 4
P-109518
kinga9650
Temat założony przez niniejszego użytkownika
» 2014-05-08 21:10:20
Jejku, nie spodziewałam się, że problem będzie aż tak błahy! Wielkie dzięki :)
P-109525
« 1 »
  Strona 1 z 1