pomoc w błędzie logicznym

Odpowiedz Nowy wątek
2011-09-03 20:51
von_ilnicki
0
nLogic = rand() / 100 + 1;
                 if (nLogic <= witalnosc)
                 {
                               cout << "(Rzut: " << nLogic << " | Prog: " << witalnosc << ") Szczesliwie dobiegles do krzyza.\nWysilek obnizyl twoja witalnosc o 5 punktow." << endl;
                               Dalej();
                               witalnosc -= 5;
                               if (witalnosc < 0) witalnosc = 0;
                 }
                 else if (nLogic > witalnosc) abort();

wiecie czemu włącza się abort?

edytowany 1x, ostatnio: madmike, 2016-12-13 18:26

Pozostało 580 znaków

2011-09-03 20:54
Rev
0

A wiesz chociaż co zwraca rand(), że dzielisz go przez 100?


Pozostało 580 znaków

2011-09-03 20:56
von_ilnicki
0

jeśli chodzi o to, czy umieściłem gdzieś w kodzie srand, to odpowiadam że tak.

a można do rzeczy?

Pozostało 580 znaków

2011-09-03 20:58
Rev
0

No, nie wiesz. Zwraca od 0 do RAND_MAX. Czyli w twojej zmiennej na Windowsie dostaniesz liczbę od 1 do 328.

Obowiązkowo do obejrzenia:


Pozostało 580 znaków

2011-09-03 20:59
0

http://www.cplusplus.com/reference/clibrary/cstdlib/rand/
http://pl.wikibooks.org/wiki/C/rand
rand() może zwrócić wartości od 0 do około 32767
Zapomniałeś o modulo :P


Pozostało 580 znaków

2011-09-03 20:59
0

bo nLogic jest większe od witalnosc. np rand()/10+1 przy zalozeniu, ze rand() zwróci np 11100, to nLogic będzie wynosić 112. niech zgadnę: to więcej niż witalnosc?

edytowany 1x, ostatnio: Karolaq, 2011-09-03 21:00

Pozostało 580 znaków

2011-09-03 21:13
von_ilnicki
0

dzięki :)
zamiast % dałem omyłkowo /

Pozostało 580 znaków

2011-09-03 21:23
1

Tak na przyszłość - przy takich błędach świetnie spisuje się debugger - możesz linijka po linijce podglądać jakie wartości przyjmują konkretne zmienne => błąd można znaleźć w kilka sekund.


Kurczę,roi się ostatnio na 4p tego ludu nieumiejącego używać debuggera że aż strach,jak zaraza normalnie...chyba trzeba będzie się skrzyknąć i zrobić tutoriala pod wszystkie IDE i języki à propos używania debuggera.Oczywiście,nie 1 osoba - MasterBLB 2011-09-03 21:50
No przydałoby się, ale ja się na to nie piszę - polska być trudny język :D - byku_guzio 2011-09-03 22:26

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0