[VOTI] Voti dello HW2 obbligatorio

andrea.sterbini (172780 points)
513 935 1789
asked Nov 19, 2021 in Avvisi by andrea.sterbini (172,780 points)
edited Nov 20, 2021 by andrea.sterbini

Ecco i voti definitivi dello HW2-req dopo aver applicato:

  • test segreti
  • controllo di somiglianza (in cui sono annullati come troppo simili i compiti segnalati da almeno 2 di noi docenti)

EDIT: ho caricato test segreti, nostre soluzioni, risultati e log dei test segreti su q2a così potete vedere quali test vi hanno creato problemi

EDIT: alcuni dei test segreti contengono dei casi in cui in un match si ottiene un punteggio pari, e il programma deve controllare quale stringa è minore in ordine alfabetico. Se quella parte di codice è sbagliata potrebbe essere il motivo dei vostri fail.

1,900 views

5 Answers

James_F (4750 points)
7 14 37
answered Nov 19, 2021 by James_F (4,750 points)
i test segreti erano per controllare che non venissero sfruttate periodicità nei test già pubblici a noi; cosa che sono piuttosto sicuro di non aver fatto. Mi chiedo quindi quale sia la motivazione per cui il mio codice apparentemente non ne passa nessuno e da 34 di parziale arriva a 18.46 di totale.
Lo chiedo perché adesso ho il terrore che succeda lo stesso con l'hw4 (che da consegnato mi da 32 di parziale).
federico_fiorelli (9940 points)
2 4 14
commented Nov 19, 2021 by federico_fiorelli (9,940 points)
A me quasi uguale, da 32 a 20.77, ma non capisco il motivo
James_F (4750 points)
7 14 37
commented Nov 19, 2021 by James_F (4,750 points)
non siamo gli unici a quanto ho visto; evidentemente abbiamo tutti sbagliato qualcosa di simile, eppure dai vari confronti con gente a cui è stato confermato un voto molto vicino al parziale pensavo di aver ragionato ed implementato in modo relativamente simile. Ora, non capisco dove sia il mio errore, nè il tuo appunto.
andrea.sterbini (172780 points)
513 935 1789
commented Nov 19, 2021 by andrea.sterbini (172,780 points)
Controllo.               .
G
Gian-duiotto (630 points)
2 4 8
commented Nov 19, 2021 by Gian-duiotto (630 points)
lo stesso vale per me da 34 con i bonus a 24 :(
G
Gian-duiotto (630 points)
2 4 8
commented Nov 19, 2021 by Gian-duiotto (630 points)
senza bonus il 24
andrea.sterbini (172780 points)
513 935 1789
commented Nov 19, 2021 by andrea.sterbini (172,780 points)
edited Nov 19, 2021 by andrea.sterbini
Intanto carico i risultati ed i log dei test segreti su q2a così potete vedere come sono andati

Hmmmm ... il log non viene visualizzato tutto e stoppa al primo unicode ... controllo la pagina PHP che lo mostra
k
kingkompa (510 points)
1 2 4
commented Nov 19, 2021 by kingkompa (510 points)
Anche a me è successa la stessa identica cosa
James_F (4750 points)
7 14 37
commented Nov 19, 2021 by James_F (4,750 points)
Vi segnalo il problema, non abbiamo considerato nel giusto ordine l'ordine lessicografico.
andrea.sterbini (172780 points)
513 935 1789
commented Nov 19, 2021 by andrea.sterbini (172,780 points)
E niente, non mi riesce di mostrarvi i log completi aul sito.

Me li guardo a manina e vi rispondo dicendovi perchè avete un errore.
andrea.sterbini (172780 points)
513 935 1789
commented Nov 19, 2021 by andrea.sterbini (172,780 points)
Mi sa che ha ragione @James_F  forse non avete confrontato bene le stringhe in caso di patta

A
AlessandroMazzone7 (710 points)
2 4 9
answered Nov 19, 2021 by AlessandroMazzone7 (710 points)
A chi è stato annullato invece deve fare quello di recupero?
R
Rebs99 (2290 points)
2 4 10
commented Nov 19, 2021 by Rebs99 (2,290 points)
Sì, puoi fare quello di recupero
c
campobassof (1060 points)
3 4 14
answered Nov 19, 2021 by campobassof (1,060 points)
Buongiorno Prof.

Ho provato a eseguire i test segreti sul mio PC e danno tutti e 10 questo errore:

TypeError: alpha_sort() missing 2 required positional arguments: 'i' and 'j'

Solo che per me non ha senso perché:

1. Gli altri 16 test passano

2. i e j vengono passati.

Se è accaduto lo stesso sulla VM, non mi sembra corretto.
andrea.sterbini (172780 points)
513 935 1789
commented Nov 19, 2021 by andrea.sterbini (172,780 points)
Nel pomeriggio controllo
c
campobassof (1060 points)
3 4 14
commented Nov 19, 2021 by campobassof (1,060 points)
Grazie mille.
S
Stef2210 (300 points)
1 2 3
commented Nov 19, 2021 by Stef2210 (300 points)
reshown Nov 19, 2021 by Stef2210
Salve prof.,

quando vado ad eseguire i test segreti tutti e 10 mi riportano questo errore:
NameError: name 'matches' is not defined

mentre sui test normali non da nessun tipo di errore.

Vorrei sapere se questo è quello che succede sulla VM e se è un errore di codice mio.
andrea.sterbini (172780 points)
513 935 1789
commented Nov 19, 2021 by andrea.sterbini (172,780 points)

@campobassof chiami la funzione alpha_sort con un numero di parametri errato.

Nei 16 test evidentemente non capitava mai quel caso.

c
campobassof (1060 points)
3 4 14
commented Nov 19, 2021 by campobassof (1,060 points)
Ecco, però se uno dei test pubblici fosse stato con un caso simile me ne sarei accorto (come infatti ho fatto dopo varie prove con quelli segreti). Lei disse che i test segreti vengono fatti per beccare i furbetti, ma fatti così penalizzano quanti come me, in buona fede, si sono fidati dei test pubblici per testare la bontà del proprio programma. Trovo non sia corretto messa così sinceramente. Andava chiarito da subito questo punto affinché potessimo adottare un metodo di lavoro differente.
l
lorenzo.m (190 points)
0 0 1
commented Nov 19, 2021 by lorenzo.m (190 points)
edited Nov 19, 2021 by lorenzo.m
Per i test segreti dell'homerwork 4 obbligatorio, capita mai che nell'iputfilename venga inserito un testo che contiene del codice al suo interno come '\n' ?
marcofelici (3160 points)
1 2 20
commented Nov 19, 2021 by marcofelici (3,160 points)
Anche i file che abbiamo a disposizione ora per i test contengono degli '\n' che sarebbero le righe di spazio nel file tra i vari versi delle poesie o poemi, o meglio sono gli accapi che vengono codificati con il carattere '\n'. Quindi nel caso fossero presenti nei test segreti credo che debbano essere trattati cosi come trattiamo ora le righe di accapo. Se tu intendi che nel file di un test segreto viene scritto sottoforma di testo '\n' e non l'accapo che viene codificato con il carattere '\n' allora in quel caso essendo del testo vero e proprio bisognerebbe eliminare lo slash in quanto non è un carattere alfabetico e lasciare solo la lettera 'n' che invece è un carattere alfabetico e quindi verrebbe contata come PAROLA.
andrea.sterbini (172780 points)
513 935 1789
commented Nov 19, 2021 by andrea.sterbini (172,780 points)

@Stef2210 in caso di patta viene eseguito il codice che verifica l'ordine alfabetico delle due stringhe e devi averlo scritto male

andrea.sterbini (172780 points)
513 935 1789
commented Nov 19, 2021 by andrea.sterbini (172,780 points)

@lorenzo.m  no, non può capitare che il filename sia sbagliato

andrea.sterbini (172780 points)
513 935 1789
commented Nov 20, 2021 by andrea.sterbini (172,780 points)

In futuro aggiungerò nel log di correttezza, la misura della code coverage del programma testato.

In questo modo potrete accorgervi se una parte del programma non è stata eseguita dai test e necessita di un controllo manuale aggiuntivo.

Per il momento potete fare così:

  • installate il plugin pytest-cov (conda install pytest-cov)
  • eseguite i test col plugin attivato ( pytest test_01.py --cov=program01 --cov-report=html )
  • visualizzate il report (firefox htmlcov/index.html)
  • le righe marcate di rosso non sono state eseguite da nessun test e vanno controllate a mano

G
Gabriel Ghioca (350 points)
0 0 2
answered Nov 19, 2021 by Gabriel Ghioca (350 points)
reshown Nov 19, 2021 by Gabriel Ghioca
Secondo me non si può fare una valutazione di chi risulta il codice troppo simile a un altro, perché siamo da casa ed è normale che noi ci confrontiamo e spuntino fuori delle idee da cui possono prendere spunto tutti. Vorrei avere dei chiarimenti sul criterio di valutazione perché così non capisco, perché devo essere penalizzato ma non solo io ma anche altre persone che come me si sono impegnate a svolgere questo homework.
E
EBM (360 points)
0 0 2
answered Nov 19, 2021 by EBM (360 points)
Gentilissimo Professore,

dal report del test su vm, risultano dei tempi di esecuzione eccessivamente lunghi rispetto a quanto testato in locale e su vari sistemi.

Le chiedo cortesemente di verificare dato che un solo test non risulta passato per via del tempo.

Cordialmente
andrea.sterbini (172780 points)
513 935 1789
commented Nov 19, 2021 by andrea.sterbini (172,780 points)
La VM ha un timeout doppio (12s) ma in un test lo superi. I test in locale non fanno testo.