[allegro] nie rysuje paska
Ostatnio zmodyfikowano 2009-05-23 15:15
pekfos Temat założony przez niniejszego użytkownika |
[allegro] nie rysuje paska » 2009-05-23 14:50:54 mam taką funkcję void draw_bar( int x, int y, int h, int d, int c ) { for( int a = 0; a < d; a++ ) { line( bufor, x + a, y, x + a, y + h, c ); } } a używam jej tak: draw_bar( 17, 517, 12, a / b * 100, makecol( 255, 0, 0 ) ); i tu mam problem: kiedy a==b czyli procent a z b == 100 to rysuje mi pasek taki jaki chcę: 100x12px. ale jak a < b i procent a z b != 100% to pasek w ogóle sie nie rysuje. nie używam rectfill bo z nim jest ten sam problem. o co tu chodzi? |
|
WunM |
» 2009-05-23 15:04:36 Sprawdź czy rysuje jak a = 1 i b = 1 |
|
pekfos Temat założony przez niniejszego użytkownika |
» 2009-05-23 15:11:21 jak a=1 i b=1 to rysuje bo jest wynikiem 100 manfred: a=1 b=2 a<b a/b*100 = 50 50>0 |
|
pekfos Temat założony przez niniejszego użytkownika |
» 2009-05-23 15:18:45 hmm.. no int jest a/b*100 != a*100/b dzięki manfred, działa |
|
manfred |
» 2009-05-23 15:07:05 Jeżeli a < b to a / b == 0, co w tym dziwnego? Może raczej a * 100 / b by się przydało zamiast a / b * 100. |
|
manfred |
» 2009-05-23 15:15:24 Tak, ale nie w działaniach na liczbach całkowitych (a prawie na pewno używasz int czy podobnego), wtedy jest; a = 1, b = 2 1 / 2 = 0 0 * 100 = 0. Może zamiast udowadniać, że Ziemia jest płaska, sprawdziłbyś ten wzór który podałem? |
|
« 1 » |