[C++] Tryb graficzny

dekros
Użytkownik
Użytkownik
Posty: 7
Rejestracja: 18 wrz 2014, o 18:05
Płeć: Mężczyzna
Lokalizacja: Polska

[C++] Tryb graficzny

Post autor: dekros »

Mam pytanko mam zrobione coś takiego że jedna kulka przemieszcza sie w kwadracie o danych bokach i sie od tych boków odbija. Dodatkowo mam 2 kwadrat miejszy i chce teraz zliczać ilość przejść tego kwadratu przez to kulke mój program narazie działa tak że jak kulka będzie w tym kwadracie to licznik leci cały czas tzn 1 pixel = 1 wartośći w liczniku aż nie wyjdzie poza ten kwadrat
myslałem nad zrobieniem jakieś flagi który by sprawdzała czy wartość została już dodana czy nie
narazie mam coś takiego

Kod: Zaznacz cały

if(x[1]=>150 && x[1]<=400 y[1]=>150 && y[1]<=400)
{
      setcolor(BLACK);
      outtextxy(x,y,napis);//ten napis to jest tablica znaków w których jest licznik
      licznik++;
      setcolor(YELLOW);
      outtextxy(x,y,napis);
}
i jak zmodyfikować to żeby dodawał do licznik tylko raz kiedy on wchodzi w ten kwadrat
bo teraz to dziala tak że jak wejdzie zaczyna liczyć aż nie wyjdzie
sorki że tak to opisuje ale w szkole uzywamy jakiegoś borlanda 20letniego i on na xp chodzi i mi na 8 nie chce pójść a narazie dosboxa nie instalowałem
Ostatnio zmieniony 27 paź 2014, o 20:58 przez Afish, łącznie zmieniany 1 raz.
Powód: Brak tagów code.
Awatar użytkownika
Dasio11
Moderator
Moderator
Posty: 10223
Rejestracja: 21 kwie 2009, o 19:04
Płeć: Mężczyzna
Lokalizacja: Wrocław
Podziękował: 40 razy
Pomógł: 2361 razy

[C++] Tryb graficzny

Post autor: Dasio11 »

Tak, flaga będzie OK.

Kod: Zaznacz cały

static bool inside = false; // Nie musi być static, ale musi być pamiętana między kolejnymi przejściami pętli głównej. 
if( kulka jest w kwadracie )
{
    if( inside == false )
    {
        inside = true;
        ++licznik;
    }
}
else inside = false;
ODPOWIEDZ