Do you need any help?

Notice Board

Per partecipare al corso di Fondamenti di programmazione 2021-22 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 2021-22 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.

VIDEOLEZIONI DEL CORSO DI FONDAMENTI DI PROGRAMMAZIONE AA20-21

PROGRAMMING COURSE VIDEOCONFERENCES AY20-21

[AVVISO] HOMEWORK 3 DI RECUPERO [COMPLETO E ZIP AGGIORNATO]

andrea.sterbini (172680 points)
511 927 1776
asked Jan 1, 2019 in Avvisi by andrea.sterbini (172,680 points)
edited Apr 1, 2019 by andrea.sterbini

ATTENZIONE

  • Esercizio 2:
    • BUG: Come spiegato qui, mi sono accorto che nelle immagini di riferimento dei test, alle funzioni disegnate mancano i pixel sulla riga 0 e sulla colonna più a destra. Lascio le immagini così, aggiustate il vostro codice.
  • Esercizio 3:
    • c'era una imprecisione nel test della funzione famiglia_allargata e dinasty, abbiamo aggiornato sia i test che tgot.json, riscaricatevi lo zip
    • come spiegato qui, il metodo Personaggio.parentela deve tornare sempre "nessuna" se i due personaggi NON HANNO NESSUNA casata in comune
    • Invece il metodo Personaggio.famiglia_allargata deve tornare anche i parenti diretti del personaggio e dei suoi compagn*
  • RICORDO CHE LE LIBRERIE AGGIUNTIVE SONO VIETATE
  • C'era un minuscolo baco in testlib.py , aggiornate lo zip

Istruzioni

Per svolgere l'homework:

  • Installate le librerie necessarie
  • Scaricate il file HW3bis.zip e scompattatelo in una directory
    • Lo zip contiene
      • i tre esercizi, che sono descritti all'inizio dei file program01.py program02.py program03.py
        • ciascun esercizio consiste nel realizzare, se necessario definendo funzioni ausiliarie, la funzione descritta all'inizio del file, completandone il codice
      • altre librerie necessarie ad eseguire i test sulla vostra macchina
  • Posizionatevi nella directory HW3bis creata unzippando l'archivio ed editate i file program01.py program02.py program03.py
  • ATTENZIONE: i programmi NON DEVONO eseguire nessun input() o print(), infatti ricevono tutte le informazioni di cui hanno bisogno tramite i parametri della funzione che dovete completare e tornano il risultato con return.
  • ATTENZIONE: SONO VIETATE le variabili globali.
  • ATTENZIONE: SONO VIETATE tutte le librerie a parte quelle già presenti nel testo.
  • ATTENZIONE: i vostri programmi NON DEVONO sfruttare eventuali periodicità o caratteristiche strutturali degli input, ma devono essere applicabili a qualsiasi input valido.
  • ATTENZIONE: NON LASCIATE ISTRUZIONI DI TEST NEL PROGRAMMA, A MENO CHE NON SIANO DOPO UNA RIGA
    • if __name__ == '__main__':
      • vostre istruzioni di test che in questo modo non vengono eseguite durante l'import del file
  • Per eseguire i test
    • aprite una finestra "Anaconda Prompt" e posizionatevi nella directory HW3bis ottenuta scompattando lo zip
    • eseguite il comando (test senza timeout)
      • pytest test_01.py -v
    • oppure (test del primo esercizio con timeout di 1 secondo per ciascun test e con una stampa dei tempi impiegati per eseguire ciascun test)
      • pytest test_01.py -v --timeout 1 --durations 0
    • Per far fermare i test al primo errore aggiungete l'opzione -x
    • Per chi usa Spyder è possibile eseguire i test direttamente da dentro Spyder installando il plugin spyder-unittest (ma senza timeout o parametri aggiuntivi)

NOTA: per aprire i file di testo in formato utf8 NON usate Notepad che non riconosce gli accapi Unix ('\n') ma usate Spyder, Notepad++ oppure WordPad

Consegna

Per la consegna dovrete consegnare per ciascun esercizio (for X in [1, 2, 3]: ) solo il file program0X.py

La pagina di consegna è https://q2a.di.uniroma1.it/homeworks/delivery?homework=7

Scadenze

  • Questo homework scade subito prima dell'ultimo appello che faremo, a fine ottobre, non richiede il peer-assessment e non dà bonus.

Please log in or register to answer this question.