Giorno: 31/03/2020, 16:50:07 | |
User
Elo: 1382/1400
Membro dal 18/02/2011
Messaggi: 401
|
AIUTO, non so come fare Ciao.
Ho bisogno di qualcuno che ne capisca di c++. Io qualcosina so fare con pyhton, ma di c++ sono asciutto; la sintassi è diversa e dopo una mattinata di bestemmie non so che pesci prendere. Ho messo mano a rodent IV, ho cambiato alcune cose (i limiti dei parametri uci), ho compilato e sembra funzionare ma ho un problema che non so come risolvere. Rodent IV ha una gestione del tempo lineare, il che non è molto umano; nessuno pensa 1 min, poi 59 sec, poi 58, poi 57... In tutte le gui il ponder non va, quindi doppia rabbia. A sto punto mi son detto, vado a modificare il MOVESTOGO che di default è 40. Ecco, invece di 40 io vorrei inserire un parametro randomizzato normalizzato: cioè una somma di tre numeri che più o meno dia somma 40 ma che può, casualmente, dare molto meno o molto di più, di fatto simulando una gestione del tempo del tutto umana. Che il motore ne esca indebolito (potrebbe pensare pochissimo in una posizione delicata) non m'importa, anzi è proprio quello che voglio. Come faccio? Qui sotto la porzione di codice incriminata... int wtime = -1, btime = -1; int winc = 0, binc = 0; int movestogo = 40; bool strict_time = false; Glob.pondering = false; // We may assume that when the engine can think on opponent's time, // it can afford to use more time to think. Unfortunately, this fails // with the current time management scheme. // if (Par.use_ponder) movestogo = 38; Ora lasciando perdere il time management in ponder, che non va, con cosa sosituisco il 40? Devo creare una variabile o basta mettere un'espressione (ma non conosco la sintassi). AIUTOOOOO |
Giorno: 19/05/2022, 16:54:32 | |
Link sponsorizzati
|
Giorno: 01/04/2020, 18:01:40 | |
![]() Collaboratore
Elo: 1474/1400
Membro dal 21/12/2009
Messaggi: 6561
|
Puoi mettere un'espressione (prima del test "if"), con le normali regole aritmetiche ed usando sia valori costanti che variabili (ad es.: movestogo = 75 + x * 1.5 - 32;).
P.S. ricorda di mettere il ";" (punto e virgola) finale, altrimenti non si chiude l'istruzione. P.P.S. Naturalmente se usi variabili nuove devi inizializzarle. Sono una carota in cerca di sè stessa... |
Giorno: 02/04/2020, 15:30:39 | |
Utente bannato
|
Il messaggio è stato nascosto dai moderatori
|
Giorno: 02/04/2020, 15:33:46 | |
Utente bannato
|
Il messaggio è stato nascosto dai moderatori
|
Giorno: 02/04/2020, 15:34:02 | |
Utente bannato
|
Il messaggio è stato nascosto dai moderatori
|
Giorno: 02/04/2020, 15:36:20 | |
Utente bannato
|
Il messaggio è stato nascosto dai moderatori
|
Giorno: 02/04/2020, 15:36:38 | |
Utente bannato
|
Il messaggio è stato nascosto dai moderatori
|
Giorno: 02/04/2020, 15:36:55 | |
Utente bannato
|
Il messaggio è stato nascosto dai moderatori
|
Giorno: 02/04/2020, 15:37:25 | |
Utente bannato
|
Il messaggio è stato nascosto dai moderatori
|
Giorno: 02/04/2020, 15:37:34 | |
Utente bannato
|
Il messaggio è stato nascosto dai moderatori
|