from otree.api import * c = cu doc = '' class C(BaseConstants): NAME_IN_URL = 'CRT' PLAYERS_PER_GROUP = None NUM_ROUNDS = 1 class Subsession(BaseSubsession): pass class Group(BaseGroup): pass class Player(BasePlayer): coin = models.IntegerField(label='Se lanci una moneta non truccata tre volte, qual è la probabilità in percentuale che esca Testa almeno una volta? La risposta va espressa in PERCENTUALE:') game = models.IntegerField(label='Se 3 commessi possono incartare 3 giocattoli in 1 ora, quanti commessi sono necessari per incartare 6 giocattoli in 2 ore? La risposta va espressa in COMMESSI:') run = models.IntegerField(label='Giulia e Sara stanno correndo in una pista circolare. Corrono alla stessa velocità ma Giulia è partita dopo. Quando Giulia ha percorso 5 giri, Sara ne ha percorsi 15. Quando Giulia ne avrà percorsi 30, quanti ne avrà percorsi Sara? La risposta va espressa in GIRI:') classroom = models.IntegerField(label='Il voto di Marco è sia il 15esimo voto più alto che il 15esimo voto più basso della classe. Quanti studenti ci sono nella sua classe? La risposta va espressa in STUDENTI:') team = models.IntegerField(label="In una squadra di atletica gli atleti alti tendono a vincere 3 volte di più di quelli bassi. Quest'anno la squadra ha vinto 60 medaglie. Quante medaglie sono state vinte dagli atleti bassi? La risposta va espressa in MEDAGLIE:") cioccolatino = models.FloatField(label='Un cioccolatino e una caramella costano euro 1,10 in totale. Il cioccolatino costa 1 euro in più della caramella. Quanto costa la caramella? La risposta va espressa in CENTESIMI:') widget = models.IntegerField(label='Se 5 macchinari in 5 minuti producono 5 portachiavi, quanto tempo ci mettono 100 macchinari a produrre 100 portachiavi? La risposta va espressa in MINUTI:') lake = models.IntegerField(label="In un lago c'è una distesa di ninfee. Ogni giorno la distesa raddoppia di dimensione. Se in 48 giorni la distesa copre l'intero lago, quanti giorni ci vogliono per coprirne la metà? La risposta va espressa in GIORNI:") def setglobals(player: Player): participant = player.participant participant.vars['CRT_payoff'] = participant.payoff return(participant.vars) def set_payoff(player: Player): points = 0 if player.coin == 75: points = points + 7 if player.game == 3: points = points + 7 if player.run == 40: points = points + 7 if player.classroom == 29: points = points + 7 if player.team == 15: points = points + 7 player.payoff = points class MyPage(Page): form_model = 'player' class MyPage2(Page): form_model = 'player' form_fields = ['coin'] class MyPage5(Page): form_model = 'player' form_fields = ['game'] class MyPage6(Page): form_model = 'player' form_fields = ['run'] class MyPage7(Page): form_model = 'player' form_fields = ['classroom'] class MyPage8(Page): form_model = 'player' form_fields = ['team'] @staticmethod def before_next_page(player: Player, timeout_happened): set_payoff(player) setglobals(player) page_sequence = [MyPage, MyPage2, MyPage5, MyPage6, MyPage7, MyPage8]