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.

ES 3 Class Regista

e
enricograziani (1190 points)
2 13 27
in Es3 by (1.2k points)
Per il momento sono riuscito a completare tutto quanto riguardo alle classi Attore e Film, nella classe Regista ho un problema. Nella funzione leggi_archivio_film per risolvere le altre due classi aggiungevo ai loro data costituiti da dizionari delle chiavi nelle quali inserivo i vari dati di cui avevo bisogno, per i registi invece l'unico "data" sarebbe il nome, quindi non so come comportarmi per associargli gli attori con cui ha lavorato e i film che ha diretto, come potrei fare?
390 views

2 Answers

G
Gdn98 (11600 points)
5 35 101
by (11.6k points)
Nel metodo init di registra passa il "nome" nei test new regista, ma negli altri test il parametro nome puó essere quello che vuoi. Puoi inserire un controllo e vedere se il nome é una stringa vuol dire che sta creando un new regista, altrimenti sta eseguendo altri test con nome che puó essere magari il dizionario creato da te
a.capobianco1 (16770 points)
14 54 165
by (16.8k points)

Anche per i registi devi lavorare in  leggi_archivio_film. 

Per ogni film crei tanti nuovi oggetti regista, quanti sono i registi associati al film che stai processando in quel momento all'interno del ciclo for.

Il parametro di ogni oggetto regista è il nome del regista stesso.

Tale oggetto, una volta creato, devi aggiungerlo (come valore) al catalogo dei registi, e lo devi fare solo se la chiave (il nome del regista) non è gia presente nel catalogo (lo stesso regista può aver diretto più film… ma tu devi aggiungerlo una sola volta)

Appena lo hai aggiunto devi associare all'oggetto stesso (preso dal catalogo) il film che stai processando in quel momento e viceversa

e
enricograziani (1190 points)
2 13 27
by (1.2k points)
quello che non capisco è proprio il modo di associarglielo perché per le altre due classi aggiungevo delle chiavi nel dizionario dei data e lavoravo con quelle, ma non avendo un dizionario per i registi non so come associarglielo
a.capobianco1 (16770 points)
14 54 165
by (16.8k points)
edited by
Quindi l'oggetto attore lo inserisci in una chiave del dizionario dei film e viceversa? E dove avviene lo scambio, nell'oggetto o nella funzione leggi_archivio_film?