Problema test HW2 obbligatorio

L
Lorenzo Scalera (2490 points)
1 4 6
asked Oct 31, 2020 in HW2 obbligatorio by Lorenzo Scalera (2,490 points)
closed Nov 1, 2020 by Lorenzo Scalera
Salve a tutti, ho recentemente terminato l'homework obbligatorio e ho avviato il mio programma per vedere se il risultato che ritornava fosse giusto. ( questo effettuato su spyder) Il risultato ritornato è proprio la lista dell'esempio , quindi fatto ciò ho provato ad avviare il programma con i vari test.

Purtroppo non so per quale motivo il programma fallisce tutti i test e dalla console di spyder vedo che la lista che ritornava era una lista contenente tutti 0, mentre precedentemente, provando il programma, mi risultava la lista con i vari punteggi corretti.

Come posso risolvere questo problema ?

Ringrazio anticipatamente per la risposta.
281 views
closed with note: Risolto

5 Answers

lwcs (1380 points)
4 15 26
answered Oct 31, 2020 by lwcs (1,380 points)
Se il test di esempio fatto su spyder inizialmente era giusto e poi riprovandolo dopo i test ti da risultati diversi, probabilmente hai scritto accidentalmente qualcosa nel codice e poi lo hai salvato.Altrimenti non saprei,ma escluderei il fatto che i test possano scrivere il file.py.
F
Figara93 (560 points)
1 2 7
answered Oct 31, 2020 by Figara93 (560 points)
se prima funzionava e ora no, ti consiglierei di controllare le indentazioni, probabilmente hai spostato qualcosa di uno spazio o di un tab includendola o escludandola in un ciclo non appartenente.
AdSum (16290 points)
9 20 134
answered Oct 31, 2020 by AdSum (16,290 points)
Senza un backup non puoi fare molto, probabilmente hai fatto una modifica apparentemente piccola e insignificante(a tal punto da neanche pensarci) che invece ha compromesso il programma. L'unica soluzione è mettersi sotto (anche perchè il tempo è poco) e capire dove sta il problema
L
Lorenzo Scalera (2490 points)
1 4 6
commented Oct 31, 2020 by Lorenzo Scalera (2,490 points)
no il mio problema è che il programma da lo stesso risultato dell'esempio ma quando vado a svolgere i test mi da la lista con tutti 0
AdSum (16290 points)
9 20 134
commented Oct 31, 2020 by AdSum (16,290 points)
Probabilmente stai sbagliando gli input che dai tu manualmente, pensando che siano nella stessa forma dei test. Controlla con attenzione i tipi e le strutture dati espresse nella consegna
L
Lorenzo Scalera (2490 points)
1 4 6
commented Oct 31, 2020 by Lorenzo Scalera (2,490 points)
In realtà gli input che immetto nel programma sono gli stessi dell'esempio
giordano_sannino (13650 points)
7 16 81
answered Nov 1, 2020 by giordano_sannino (13,650 points)
Avrai messo qualche indentatione dove non dovevi, qualche cosa dentro o fuori da qualche ciclo, ti consiglierei un bel debug!
L
Lorenzo Scalera (2490 points)
1 4 6
commented Nov 1, 2020 by Lorenzo Scalera (2,490 points)
Ho provato a fare il debug sia su spyder sia usando python tutor ma le iterazioni e le operazioni che svolge il programma sono tutte corrette, come anche il risultato
1946981 (3070 points)
4 13 34
answered Nov 1, 2020 by 1946981 (3,070 points)
Probabilmente il risultato non viene aggiornato, può essere che i calcoli che fai in una sottofunzione vengono salvati solo al suo interno e non nella funzione principale. Prova a togliere le sottofunzioni integrandole nella funzione principale. Lo so che non è la soluzione più ottimale perché si alzerà la complessità ciclomatica però se così funziona già è un buon punto.
L
Lorenzo Scalera (2490 points)
1 4 6
commented Nov 1, 2020 by Lorenzo Scalera (2,490 points)
Purtroppo la mia funzione principale è strutturata in modo che chiami la funzione del punteggio, però sarebbe un suicidio integrarla nella funzione principale in quanto andrebbe ad appesantire di molto il programma
L
Lorenzo Scalera (2490 points)
1 4 6
commented Nov 1, 2020 by Lorenzo Scalera (2,490 points)
Di per sé però i punteggi vengono aggiornati