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

Czas w programie

VPS Starter Arubacloud
0 głosów
256 wizyt
pytanie zadane 3 października 2015 w C i C++ przez tomasztopolewski Początkujący (430 p.)
Witam,

przychodze z pytaniem oraz problemem. W moim programie do obliczenia ilości wyprpdukowanego drewna potrzebny jest czas. Zależy on jeszcze m.in. od nastroju oraz procentu produkcji.

Czas w tej chwili jest mierzony takim systemem:

1. Do zmiennej start o typie clock_t przypisuje wartość po pełnym uruchomieniu gry, w momencie gdy można "grać" (po załadowaniu ustawień).

2. I można wybierać jakieś opcje np. zwiekszenie produkcji, zwiększając procent produkcji.Analogicznie zmniejszenie. Mozna też wyswietlic stan drewna, zamienia.

3. W momencie wybrania opcji z wyświetleniem stanu drewna wywołuje funkcję oblicz, a ona pobiera czas (stop(pobrany przez funkcje obliczajaca czas) - start) podzielony pzez clock per seconds.

Lecz on nie działa tak jak powinnien. Czasami drewno sie wyswietla sie za malo w stosunku do kamienia lub w ogóle, działa też na odwrót.

 

Ktoś jakiś pomysł na sprawnieszy algorytm? Jak zrobic czas w programie?

2 odpowiedzi

0 głosów
odpowiedź 3 października 2015 przez Patrycjerz Mędrzec (192,320 p.)

Jak to starożytni mędrcy powiadali:

Bez kodu ani rusz

komentarz 3 października 2015 przez tomasztopolewski Początkujący (430 p.)
komentarz 3 października 2015 przez Patrycjerz Mędrzec (192,320 p.)

OK, ale ja potrzebuję pełnego kodu lub fragmentów, które są uwzględnione w obliczaniu now_produkcja_D - chyba tutaj jest problem.

komentarz 3 października 2015 przez tomasztopolewski Początkujący (430 p.)
now_produkcja_D = ((wspolczynnik1.wspolcznk_radsc * g_czas1.r_czasu) * produkcja1.procnt_produkcji);

 

W sensie mam wkleić deklaracje obiektów? Wspołczynnik i procent prodkcj jest pobierany z pliku.

komentarz 3 października 2015 przez Patrycjerz Mędrzec (192,320 p.)
To podaj dane z pliku. Jedynie, co aktualnie wiem, to zmienna czasowa.
komentarz 3 października 2015 przez tomasztopolewski Początkujący (430 p.)

Na pewno dane wszystkie są dobre, bo po wyłączeniu czynnika jakim jest czas wszytko oblicza dobrze.

TOMASZOW
tomek
10
100
10
1000

Wyżej dane z pliku.

EDIT1: Dodałem funkcje pobierzUstawienia() do pastebina. Link wkleję jeszcze raz:

http://pastebin.com/HYrUqHJ8

komentarz 3 października 2015 przez Patrycjerz Mędrzec (192,320 p.)
Czyli dane, poza czasem, są stałe? Jeśli tak, to powinno wszystko poprawnie działać - obliczanie czasu jest wg mnie poprawnie napisane. Przykro mi, ale nie umiem ci pomóc.
0 głosów
odpowiedź 3 października 2015 przez tomasztopolewski Początkujący (430 p.)
Tak, jak na razie nie prowadziłem takiej opcji. Ok, rozumie.

A może masz jakiś pomysł jak zmienić algorytm na czas? @Patrycjerz
komentarz 3 października 2015 przez Patrycjerz Mędrzec (192,320 p.)

Obsługa czasu wydaje się dobra. Sorki, ale nie rozumiem w pełni celu tego programu smiley Po prostu radzę ci sprawdzić, np. wypisując dane do konsoli, wszystkie składniki, które są potrzebne do obliczenia tej ilości drewna - powinieneś wtedy dojść do sedna sprawy.

komentarz 3 października 2015 przez tomasztopolewski Początkujący (430 p.)
Zrobiąć testy zauwarzyłem że oblicza tylko dla pierwszego wybranego materiału tj. jeśli jako pierwszy wybiorę wys_drewno to już funkcja wys_kamien przyjmuje za kazdym razem 0.

Podobne pytania

0 głosów
1 odpowiedź 359 wizyt
pytanie zadane 10 października 2021 w C i C++ przez yato_ Początkujący (350 p.)
+1 głos
1 odpowiedź 243 wizyt
pytanie zadane 5 sierpnia 2020 w C i C++ przez NieMaJuzNazw Użytkownik (890 p.)
0 głosów
3 odpowiedzi 600 wizyt
pytanie zadane 10 grudnia 2022 w C i C++ przez Jakub123456 Nowicjusz (160 p.)

92,782 zapytań

141,712 odpowiedzi

320,600 komentarzy

62,114 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.

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...