Fondamenti di Informatica

  

Università degli Studi di Cassino

Corso di Laurea in
Ingegneria Informatica e delle Telecomunicazioni

   prof. Francesco Tortorella  (mail)

     Anno Accademico 2009/2010

     primo semestre

 Home page del corso


 

 

Esercitazione di laboratorio n. 4 

 

Esercizio  4a

Realizzare un sottoprogramma di tipo funzione in C++ che riceva in ingresso due valori reali x e prec (precisione desiderata) e restituisca  il valore della radice quadrata di x calcolata sfruttando la seguente successione (metodo babilonese):

Realizzare il sottoprogramma scegliendo in maniera oculata uno dei costrutti  ciclici noti  (while, do..while o for).

HINT:  utilizzare la precisione prec per limitare il numero di cicli compiuti dall’algoritmo. In pratica, si deve procedere a calcolare il valore yk  finchè la differenza tra due valori successivi della sequenza non divenga minore del valore di precisione desiderato (in altre parole si termina il calcolo quando abs(yk-yk-1)<prec). Per questo va realizzato anche un sottoprogramma che calcoli il valore assoluto di un float.


 



 

   
 

Esercizio  4B

Realizzare un programma in C++ che riceva in ingresso le coordinate (x0,y0) di un punto P0 sul piano cartesiano. Successivamente riceva in ingresso un valore intero Num che indica il numero di punti Pi (i=1,..,Num) le cui coordinate sono quindi lette da input. Al termine dell'input il programma fornisca in output le coordinate e la distanza del punto più vicino e di quello più lontano da P0.  Per calcolare la distanza euclidea tra il generico punto Pi e P0 si usi il sottoprogramma realizzato nell'esercizio 4a; si consideri la precisione desiderata per il calcolo della radice quadrata prefissata e pari a 10-8.

HINT: si leggano le coordinate del primo dei Num punti e si consideri la sua distanza da P0 per inizializzare sia la distanza minima corrente che la distanza massima corrente. In un successivo ciclo si leggano le coordinate dei punti restanti e si aggiornino distanza minima e distanza massima quando necessario.

Esempio:





 


Home page del corso

© 2009 Francesco Tortorella.
Ultimo aggiornamento: 30/10/2009.