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.

Dubbio Risultati Test Programma 3

G
Giordano_Dionisi (3100 points)
16 41 59
in Es3 by (3.1k points)
closed by

Salve, volevo chiedere effettivamente come deve essere modificata la lista di input. Infatti io ho provato varie metodologie, ovvero ritorno la lista (ma mi dice che la lista che dovrebbe venire è [topo, gatto] e per lui io ritorno ([topo, gatto], gatto)) mentre se non la ritorno mi dice che la lista non è stata modificata, nonostante io utilizza i metodi corrispettivi delle liste. Ho fatto tutti gli esempi dei test sul mio programma e funzionano tutti, ma eseguendo normalmente i test mi dà questi errori qui sulla lista, quindi sicuramente il programma è giusto ma magari devo restituire o eseguire delle modifiche su ciò che passo alla funzione di testing.. Se mi poteste dire effettivamente cosa devo ripassare alla funzione di testing (io ritorno a fine del mio programma, una tupla che contiene la lista degli elementi che compaiono nel testo e la tupla contiene poi una stringa che equivale all'elemento che compare più volte nel testo e poi ritorno la lista o meno, ho fatto entrambe le prove). Quindi vi sarei immensamente grato se sapeste dirmi quale è il problema perchè è una mattinata che ci sto sbattendo la testa, dato che gli esempi e tutti i test fatti da me funzionano perfettamentecrying

483 views
closed with the note: deadline passed

3 Answers

andrea.sterbini (207920 points)
750 1267 2373
by (208k points)
I test da te fatti sono i nostri test o dei test tuoi?

Perchè non consegni così vedo i risultati dei test?
c
cristian (2770 points)
3 17 29
by (2.8k points)
La funzione es3 deve avere un solo return:  una nuova lista delle parole che compongono il testo e la parola che ricorre più spesso; Ti viene anche chiesto di modificare la lista che viene passata come parametro togliendo le parole usate nel testo. Quindi devi fare due operazioni modficare lista iniziale e ritornare nuovaLista(con le parole che compongono il testo) , parolaRiccorente. Spero di essermi spiegato bene e di aver risolto il tuo dubbio
Auron (15880 points)
50 126 194
by (15.9k points)

"Definire una funzione es3(lista, testo) che prende:
- una lista di parole (nessuna delle quali e' prefisso dell'altra)
- una stringa di testo. Il testo e' stato ottenuto concatenando alcune delle parole presenti nella lista 'lista'
  (una stessa parola puo' comparire piu' volte nella stringa di testo).
- restituisce una coppia (tupla) formata da:
        - la lista delle parole che, concatenate producono il testo
        - la parola che vi occorre piu' spesso;

[[...]]

Ad esempio: se lista=['gatto','cane','topo']
  - con  testo='topogattotopotopogattogatto' la risposta e' la coppia (['topo','gatto'],'gatto')
    e lista diviene ['cane']"

Come ben specificato nel testo, il return deve interessare SOLTANTO LA TUPLA.
La lista deve venir modificata come richiesto dalla traccia, ma non ha a che fare con il return... Il controllo sulla sua corretta modifica viene effettuato dal grader/tester in "background" (ma comunque viene effettuato).
Quindi, per rispondere alla tua domanda, il risultato che dovrai ritornare è nella forma ([x1, x2, ..., xn], xi), non un elemento di più.
Spero di averti aiutato :D
In caso di problemi assicurati che a ritornare il risultato finale sia la funzione "madre", quella da cui parti, e non una funzione definita da te per ridurre l'intricatezza.
Inoltre quando testi il programma rimuovi tutti gli input che magari hai inserito per fare delle prove rapide, o elementi simili che minano la correttezza dei test :)