Laboratorio di Calcolo (G. D'Agostini)

 

Soluzioni dei problemi dell'ultima lezione


Problemi del lunedì

  1. Ritorniamo alle figure relative al calcolo delle aree mediante campionamento di punti in un rettangolo (vedi qui e qui). Da esse ci possiamo ispirare per affrontare un problema che apparente ha poco a che fare con il precedente e sul quale torneremo a lezione.
    Per cominciare: Ci poniamo quindi le seguenti domande:

     
  2. Esempio di soluzione iterativa. Un classico problemino di Fisica elementare è quello del sasso che viene lasciato cadere in un pozzo, si sente il tonfo nell'acqua e, cronometrando il tempo intercorso dall'istante in cui il sasso comincia a cadere a quando si sente il rumore, ci cerca di valutare la profondità del pozzo (ovviamente si assuma che l'orecchio del cronometrista sia molto vicino al punto dal quale è partito il sasso).
    Immaginiamo di aver misurato 3 s e assumiamo 340 m/s per la velocità del suono.
    La soluzione classica passa per la soluzione di una equazione di secondo grado della quale si sceglie la 'soluzione ragiovevole'.(*)
    La soluzione iterativa consiste nel seguente algoritmo, da implementare in C o in R (o in entrambi): (Se si è scritto il programma in R si grafichi pure l'andamento della profondità in funzione del numero di iterazione).
      [ (*) Curiosità sulla soluzione 'standard': di quale problema è soluzione la soluzione spuria?]

     
  3. Cammino casuale (e non solo).
    Si immagini un punto che possa assumere posizioni discrete identificate dei numeri intere e che all'istante iniziale si trovi nella posizione indicata da 0. In pratica (in R)
        

  4. Curiosità dell'aritmetica modulare, mostrate direttamente con i seguenti comandi R (il link è solo per chi vuole approfondire privatamente; ai fini del corso le righe che seguono sono più che sufficienti):
    • ( m = 21 )
    • ( n = 1:m - 1 )
    • (n + 2) %% m
    • (n + 10) %% m
    • (n + m) %% m
    • ( nr = (n + 7) %% m )
    • (nr - 7) %% m
    • (nr - 9) %% m
    Possiamo applicare queste proprietà per implementare il famoso cifrario di Cesare, seppure, per semplicità, con le 26 lettere dell'alfabeto inglese invece che con le 21 di quello latino:
    Ecco quindi dei problemi in C


Torna alla pagina del corso