// Calcolo dell'angolo e della distanza tra due vettori #include #include #include using namespace std; int main(){ double a[3], b[3]; double ab, na, nb; double ang, dist; fstream f; f.open("vettori.dat",ios::in); if ( f.fail() ){ cout << "Errore nell'apertura di 'vettori.dat' ==> Esco" << endl; return -1; } f >> a[0] >> a[1] >> a[2] >> b[0] >> b[1] >> b[2]; while( ! f.eof() ){ ab = 0.; na = 0.; nb = 0.; dist = 0.; cout << "A B" << endl; cout << "-------" << endl; for ( int i = 0; i < 3; i++ ){ cout << a[i] << " " << b[i] << endl; ab += a[i]*b[i]; na += a[i]*a[i]; nb += b[i]*b[i]; dist += (a[i] - b[i])*(a[i] - b[i]); } na = sqrt( na ); nb = sqrt( nb ); ang = acos( ab/(na*nb) ); dist = sqrt( dist ); cout << "Angolo = " << ang << endl; cout << "Distanza = " << dist << endl; cout << "-----------" << endl; f >> a[0] >> a[1] >> a[2] >> b[0] >> b[1] >> b[2]; } f.clear(); f.close(); return 0; }