Problema con il programma e con il grade del primo programma

L
LucaAb (560 points)
1 9 14
asked Oct 20, 2017 in Funzionamento degli homework by LucaAb (560 points)
closed Oct 21, 2017 by andrea.sterbini
Salve, ho finalmente finito il primo programma e funziona discretamente (ci mette meno di 30 secondi), il problema è che quando faccio il run sul grade mi dà errore perché sembra che non riceve la lista modificata. La lista dei numeri primi la riceve e la compara. È strano! Ho ovviamente messo entrambe le liste sul return. Qualcuno mi può aiutare? Se faccio il run senza grade i risultati sono giusti.

Luca
271 views
closed with note: answered

4 Answers

Best answer
francesco.dev (33560 points)
14 51 129
answered Oct 20, 2017 by francesco.dev (33,560 points)
selected Oct 20, 2017 by LucaAb

Ciao Luca!

Sei sicuro che dal programma ritorni una sola lista (quella contenente i numeri primi!)??
Sei sicuro che tutto il procedimento di eliminazione degli elementi che non hanno k divisori e di creare la lista numeri primi sia corretto??

Aspetto tue notizie,
- Francesco Pio Scognamiglio

L
LucaAb (560 points)
1 9 14
commented Oct 20, 2017 by LucaAb (560 points)
Ciao Francesco tutto bene? comunque se faccio il run i risultati sono corretti, quindi credo che il procedimento sia giusto.  Succede solo con il grade.  alla fine della mia funzione c' è il return con entrambe le liste.
francesco.dev (33560 points)
14 51 129
commented Oct 20, 2017 by francesco.dev (33,560 points)
Ecco, è questo il problema! Alla fine della funzione devi ritornare solo una lista, ovvero solo quella contenente i numeri primi. Prova a modificare il codice, riesegui il grade e fammi sapere!
L
LucaAb (560 points)
1 9 14
commented Oct 20, 2017 by LucaAb (560 points)
Allora va tutto bene tranne che con il primo test. Non ci sto capendo nulla è tutto il giorno che scrivo, Francesco ti chiedo: nel test del primo esercizio la lista che corregge ha 70,154, 128, ma 70  non ha sei divisori o sbaglio?
francesco.dev (33560 points)
14 51 129
commented Oct 20, 2017 by francesco.dev (33,560 points)
I divisori di 70 sono: {1,2,5,7,10,14,35,70}
Però escludendo 1 e se stesso (che non sono divisori propri) se conti abbiamo che 70 ha ben 6 divisori propri
francesco.dev (33560 points)
14 51 129
commented Oct 20, 2017 by francesco.dev (33,560 points)
Devi ricordarti di togliere dal numero dei divisori 1 e il numero stesso! Quindi farai n_divisori - 2
L
LucaAb (560 points)
1 9 14
commented Oct 20, 2017 by LucaAb (560 points)
Grazie mille! :)
francesco.dev (33560 points)
14 51 129
commented Oct 21, 2017 by francesco.dev (33,560 points)
Di niente Luca! E' stato un piacere! :)
Colgo l'occasione per dirti che giorni fa ti ho mandato un messaggio in privato tramite questo forum, per poterlo visionare ti basterà andare sul mio profilo e cliccare "send private message", così si aprirà la conversazione privata e potrai leggere ciò che ti scrissi!
restante.giuseppe (2480 points)
4 32 49
answered Oct 20, 2017 by restante.giuseppe (2,480 points)
edited Oct 20, 2017 by restante.giuseppe

Ciao Luca!
Rileggiamo insieme il testo:

1) cancella  dalla lista ls gli interi che non hanno esattamente k divisori propri.
2) restituisce una seconda lista che contiene i soli numeri primi di ls.

Ti lascio il piacere di intuire da solo.

Non è un problema del grade da come lo hai descritto.

L
LucaAb (560 points)
1 9 14
commented Oct 20, 2017 by LucaAb (560 points)
Non ho capito :(
restante.giuseppe (2480 points)
4 32 49
commented Oct 20, 2017 by restante.giuseppe (2,480 points)
Va restituita solo una lista, l'altra modificata.
L
LucaAb (560 points)
1 9 14
commented Oct 20, 2017 by LucaAb (560 points)
Grazie mille per l'aiuto  e l'interessamento:)
LeonardoEmili (35740 points)
11 65 155
answered Oct 20, 2017 by LeonardoEmili (35,740 points)
Ciao Luca!
Ho sentito già altri ragazzi nella tua situazione, però non mi hanno potuto verificare che effettivamente il problema era dipeso dal Grader. Quindi per cercare di capire insieme il problema ti chiedo.
Hai verificato che effettivamente la lista è modificata attraverso l'uso di print strategici al di fuori del corpo della funzione?
Hai returnato solo la lista dei numeri primi?
Confido che tu possa arrivare alla soluzione, se hai altri dubbi o domande non esitare a chiedere ! :)
Buona serata
.
Leonardo Emili
L
LucaAb (560 points)
1 9 14
commented Oct 20, 2017 by LucaAb (560 points)
Grazie mille per l'aiuto  e l'interessamento :)
LeonardoEmili (35740 points)
11 65 155
commented Oct 21, 2017 by LeonardoEmili (35,740 points)
Sempre un piacere!
m
moin.uddin (820 points)
3 10 19
answered Oct 20, 2017 by moin.uddin (820 points)
ciao luca,

per caso ti esce ASSERTION ERROR ? :)
L
LucaAb (560 points)
1 9 14
commented Oct 20, 2017 by LucaAb (560 points)
No non mi dava alcun errore. Adesso ho risolto. Grazie per l'aiuto moin.uddin :)