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.

Chiarimenti metodo disegna funzione

D
Deacoon (9100 points)
11 34 53
in Es3 by (9.1k points)
Non capisco cosa intende il testo per questo "la funzione passata riceve un solo argomento, il valore intero x e torna il valore y,
che può essere anche float. Per troncare il risultato y usate la funzione int()"

torna y da cosa?

e poi il metodo deve poter disegnare solo funzioni di primo grado o anche altro?
611 views
closed

1 Answer

Best answer
D
Dave76 (1070 points)
3 6 9
by (1.1k points)
selected by
La funzione passata in input  al metodo "disegna_funzione" è una lambda function, nel testo viene detto che se passi alla funzione un valore intero x, restituisce un valore y (ovvero il risultato della funzione) e per usare più agevolmente la coppia di punti (x,y) viene consigliato di trasformare in un intero il valore prodotto dalla funzione. Per farti un'idea ti suggerisco di vedere quali sono le funzioni su cui devi lavorare (facendo partire i test). Non sono molto articolate e sono solo quelle, per ciascun test.
D
Deacoon (9100 points)
11 34 53
by (9.1k points)
se provo a runnare il test da spyder da questo errore :

from ddt import file_data, ddt, data, unpack

ModuleNotFoundError: No module named 'ddt'
D
Dave76 (1070 points)
3 6 9
by (1.1k points)
Hai provato a farlo da Anaconda Prompt?
D
Deacoon (9100 points)
11 34 53
by (9.1k points)
il motivo penso che sia che ho cambiato computer e devo rinstallare i moduli per fare i test , li sto installando.

comunque potresti spiegarti meglio? che centra la lambda con una funzione da disegnare in un piano cartesiano?
D
Dave76 (1070 points)
3 6 9
by (1.1k points)
La lambda function accetta un certo numero di argomenti tra parentesi e ritorna un risultato, in questo caso ne accetta uno, come viene detto nel testo. Quindi, per ogni argomento passato avrai due coordinate, ovvero la x e la y del punto: la x è quella che hai dato tu in input, la y è il risultato della funzione per il valore dato. Se ripeti il procedimento più volte, avrai tutti i punti che appartengono alla funzione, quindi, per disegnarla, sarà sufficiente colorare l'immagine in quelle coordinate. Spero di essermi espresso meglio.
D
Deacoon (9100 points)
11 34 53
by (9.1k points)
Per ripetere il procedimento piu volte intendi con x differenti?
D
Dave76 (1070 points)
3 6 9
by (1.1k points)
Sì esatto con x differenti, purché non escano dall'immagine
D
Deacoon (9100 points)
11 34 53
by (9.1k points)
ma non posso creare una funzione che a ogni loop da in input alla funzione una cosa diversa .. sarebbe ricorsione e non sono ancora capace
D
Dave76 (1070 points)
3 6 9
by (1.1k points)
Non ho usato la ricorsione. Cerca di scorrere un certo intervallo di valori, così per ciascun valore avrai una coppia (x,y) diversa
D
Deacoon (9100 points)
11 34 53
by (9.1k points)
ma se ad esempio in input nel metodo c'è lambda x: x*^2

cio significa che y = x^2

come faccio a prendere quel x^2 dalla funzione sostituendo a x i valori
andrea.sterbini (207940 points)
756 1270 2377
by (208k points)
y = funzione(x)