Please ignore secret bonuses. Secret tests do NOT award bonus. Max hw grade is 30+2 bonus efficiency

Do you need help?

Notice Board

Per partecipare al corso di Fondamenti di programmazione 2023-24 loggatevi e attivatelo nella vostra pagina dei corsi preferiti. A quel punto il corso appare nel menù personale cliccando sul proprio avatar. Per i materiali degli anni precedenti seguite lo stesso metodo.

To join the Programming/Lab 2023-24 course, log-on and select it on the my courses page. It will appear on the personal menu of your avatar. For earlier years use the same method.

Reset globali nuova pista HW 5.2

pengfei (1180 points)
4 13 23
in Es2 by (1.2k points)
closed by
È possibile aggiungere un altro parametro booleano prima_mossa in modo da sapere quando si ricomincia una nuova gara, così da resettare le variabili globali?
Da quello che ho visto tra una gara e l'altra le globali vengono mantenute, e stabilire quando riparte una nuova gara non mi sembra così banale (nella qualifica basta controllare di aver finito il giro, nella gara ci sono molti più imprevisti), pensavo di controllare se la pista è cambiata da una mossa all'altra ma non funzionerebbe perché nel torneo si corre più volte sulla stessa pista, potrei controllare se ci sono salti imprevisti nella mia posizione ma non vorrei trovarmi in qualche situazione a cui non avevo pensato in cui questo approccio non funziona, resterei piantato per tutte le gare successive.
Chiedere non costa nulla :D
Se ho capito male qualcosa ditemelo pure ;)

edit: forse un controllo combinato su velocità, posizione e numero del giro è un sistema sufficientemente solido, però col parametro apposito mi sentirei più tranquillo
507 views
closed with the note: ottime risposte

2 Answers

BlackStartx (1910 points)
7 16 30
by (1.9k points)
Ciao!

Ho avuto anch'io il tuo stesso problema, e sono giunto ad una piccola soluzione (Anche se non corretta al 100%) dove viene verificato se la schermata precedente è identica a quella attuale (Situazione che si verifica ESCLUSIVAMENTE al primo richiamo della funzione e se nessuno si muove).

Ovviamente questo metodo non è perfetto in competizione, dove se parti per secondo i due schemi differenzieranno per il movimento del primo giocatore, quindi un metodo più "corretto" sarebbe meglio ahahah
Per verificare se due schermate sono identiche puoi tranquillamente usare l'operatore '==' tra le due liste.

 
- Leonardo
pengfei (1180 points)
4 13 23
by (1.2k points)
giusto, non avevo pensato a questo metodo, grazie del suggerimento
P
Powner (5600 points)
36 68 85
by (5.6k points)

Scusate ma non basta verificare che x e y siano uguali rispettivamente a startx e starty? surprise

pengfei (1180 points)
4 13 23
by (1.2k points)
edited by
non mi viene in mente nessun motivo per cui non dovrebbe funzionare, ora mi sento in cretino :D forse non ci avevo pensato perchè quando non c'era il parametro sul numero del giro mi fermavo giusto nel punto di partenza quindi avevo scartato l'idea di sfruttare questa cosa per resettare tutto
edit: dimenticavo la battuta: sono stato pownato! :D
P
Powner (5600 points)
36 68 85
by (5.6k points)
Eh sì probabile