• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Algorytm sprawdzający dane w grze

0 głosów
384 wizyt
pytanie zadane 5 sierpnia 2015 w C i C++ przez niezalogowany
void woj_mur(int &a)
{
    for (int i = 6; i >= 0;i--)
    {
        if (il_woj[i] >= a)
        {
            il_woj[i] -= a;
            il_woj_mur += a;
            break;
        }
        else if (a > il_woj[i])
        {
            cout << "Masz za malo zolniezy" << endl;
            break;
        }
        else if (il_woj[0] == 0 && il_woj[1] == 0 && il_woj[2] == 0 && il_woj[3] == 0 && il_woj[4] == 0 && il_woj[5] == 0 )
        {
            cout << "Nie mozesz tego zrobic!" << endl;
            break;
        }

 

    }

    system("pause");
    system("cls");
    koszary();
}

 

jest to fragment mojej gry i jest taki problem, iż za pierwszym razem wszystko się dobrze wykonuje a następnym razem już nie. Domyślam się gdzie jest błąd ale nie wiem jak go naprawić oraz jak rozbić by działało prawidłowo

2 odpowiedzi

0 głosów
odpowiedź 5 sierpnia 2015 przez Szykem2 Nałogowiec (29,510 p.)
Ja bym powiedział, że ten trzeci if sie nigdy nie wykona bo pierwszy else if jest dopełnieniem pierwszego if (może jaśniej jeżeli pierwszy if się nie wykona to ten else if już musi bo ma przeciwny warunek) a więcej póki co nie moge pomóc bo nie wiem co ten algorytm ma robić i co oznaczają zmienne np il_wor_mur, a do tego skoro zmiennej a nie zmieniasz to nie ma sensu przesyać jej przez referencje

EDIT:

Skoro wszędzie są instrukcje break; to nie ma sensu używać pętli for bo i tak się tylko raz wykona chyba, że dasz continue;
0 głosów
odpowiedź 5 sierpnia 2015 przez Patrycjerz Mędrzec (192,320 p.)

Może byś wytłumaczył po krótce, co ten algorytm ma robić? Ludzie na forum chyba jasnowidzami nie są wink

komentarz 5 sierpnia 2015 przez niezalogowany
algorytm ma sprawdzić czy istnieją żołnierze i ma ich wysyłać na mur ale nie działa prawidłowo

Podobne pytania

+24 głosów
3 odpowiedzi 4,879 wizyt
+1 głos
4 odpowiedzi 1,260 wizyt
pytanie zadane 2 lipca 2015 w C# przez Lukasz Bywalec (2,320 p.)
0 głosów
2 odpowiedzi 641 wizyt

93,772 zapytań

142,730 odpowiedzi

323,382 komentarzy

63,369 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...