Esercizi

Negli esercizi seguenti useremo il modulo test con la funzione testEqual. In particolare dopo avere importato con from test import testEqual, la chiamata testEqual(x, y) stampa “Pass” se x è uguale a y, altrimenti comunica che x è diverso da y generando un errore di esecuzione. Alcuni IDE Python non permettono l’uso del pacchetto test. In tal caso, il comportamento del pacchetto test può essere simulato scrivendo:

def testEqual(x, y):
    if x == y:
            print("Pass")
    else:
            print("Not Passing")
            #qui stiamo stampando invece di generare un'eccezione e interrompere l'esecuzione
  1. Scrivere una funzione sumTo(n) che ritorna la somma di tutti i numeri interi fino a n (incluso). Per cui sumTo(10) corrisponde a 1+2+3...+10 ovvero 55. Usare l’equazione (n * (n + 1)) / 2. Per vedere l’output della funzione ricordiamoci che la funzione va invocata.


    
    
    

    (ex_f1)


    
    
    

    (q_f1)

  2. Scrivere una funzione areaOfCircle(r) che ritorna l’area del cerchio di r, usando il modulo math.


    
    
    

    (ex_f2)

  3. Riscrivere la funzione sumTo(n) che ritorna la somma dei numeri fino a n incluso usando l’iterazione (accumulazione).


    
    
    

    (ex_5_13)


    
    
    

    (q13_answer)

  4. Scrivere una funzione chiamata mySqrt che approssima la radice quadrata di un numero n usando l’algoritmo di Newton. L’algoritmo di Newton raffina l’approssimazione iterativamente: l’approssimazione iniziale è n/2 e l’approssimazione successiva (newguess) è ottenuta da quella precedente usando la seguente formula: newguess = (1/2) * (oldguess + (n/oldguess)).


    
    
    

    (ex_f3)

  5. Scrivere una funzione chiamata myPi che ritorna un’approssimazione di PI (3.14159...), usando l’approssimazione di Leibniz <http://en.wikipedia.org/wiki/Leibniz_formula_for_%CF%80>.


    
    
    

    (ex_f4)


    
    
    

    (ex_f5)

  6. Scrivere una funzione che prende in input 10 numeri e calcola il minimo, la somma, il massimo e la media.

Note

Puoi usare la finestra sotto per fare le tue prove.




(scratch_f)

Next Section - Valori Booleani e Espressioni Booleane