Estratto del documento

Passaggio di coordinate, passaggio di parametri ByReference

#include <iostream>

#include <cmath>

using namespace std;

const double PI = 3.14159;

void gimmeRadialCoords(double, double, double&, double&); //significa: gli

ultimi due argomenti sono // passati PER RIFERIMENTO

int main() {

double coordX, coordY;

double rho, theta;

<< " Passaggio da coordinate cartesiane a polari !!!\n"

<< "==>Inserire la coordinata X:\n-->";

cin >> coordX;

cout << "==>Inserire la coordinata Y:\n-->";

cin >> coordY;

gimmeRadialCoords(coordX, coordY, rho, theta);

cout << " -----------------------------------------------\n"

<< "==>Il valore di rho e': " << rho << ";"

<< endl << "==>Il valore di theta e': " << (int)((180*theta/PI)

+0.5) << " gradi."

}

void gimmeRadialCoords (double cX, double cY, double& r, double& t){

r = sqrt(cX*cX + cY*cY);

if (cX==0&&cY==0) {

cout << "\n ** Origine: theta indeterminato. **\n\n";

t = 0;

return;

}

if (cX == 0){

if (cY > 0) t = PI * 0.5;

else t = PI * 1.5;

}

else {

t = atan(cY/cX);

if (cX < 0) t = t + PI;

if (t < 0) t = t + 2 * PI; //solo per bellezza, si passa

all'intervallo 0-2pi !

}

}

Anteprima
Vedrai una selezione di 1 pagina su 1
Programma - Passaggio di coordinate, passaggio di parametri ByReference Pag. 1
1 su 1
Sintesi

Titolo dell'appunto

Il programma chiede all'utente il valore delle componenti X e Y di un vettore nel piano cartesiano, e dà indietro la rappresentazione polare in coordinate rho e theta.

Esso utilizza una funzione void che accetta 4 argomenti: x e y, e rho e theta.

Alcuni esempi per spiegare il programma, esempio:

passaAPolare(x, y, Rho, Theta);

  • Se il vettore è il vettore nullo, la funzione renderà (0,0) e il programma mostrerà un messaggio di avvertimento.
  • La formula per il passaggio di coordinate è: rho = (x^2+y^2)^(1/2) theta = arctan(y/x), a cui si aggiunge pigreco se x<0. theta = +/- pigreco/2 se x=0 (a seconda del segno di y)
  • La libreria <cmath> contiene la funzione atan(double).
D/illustrazione/soddisfatti o rimborsati
Acquista con carta o PayPal
Scarica i documenti tutte le volte che vuoi