Abelsor

Semana 3 - Ejercicio 15

Feb 15th, 2022 (edited)
92
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.30 KB | None | 0 0
  1. /*
  2.                 Ejercicio 15
  3.     Diseñar un programa que acepte las coordenadas x, y de un punto.
  4.     Indicar con un mensaje si está dentro o no de la circunferencia x^2 + y^2 = 25 (Obs: un punto en el borde se considera como interior).
  5.     También se debe indicar si está por encima, por debajo, o es un punto de la recta x-y+2 = 0.
  6. */
  7.  
  8. #include<iostream>
  9. #include<math.h>
  10.  
  11. using namespace std;
  12.  
  13. int main()
  14. {
  15.     float x, y;
  16.    
  17.     cout<<"Ingrese las coordena del Punto"<<endl;
  18.     cout<<"x -> ";
  19.     cin>>x;
  20.     cout<<"y -> ";
  21.     cin>>y;
  22.    
  23.     // Verficamos si pertenece a la Cia, para ello utilizamos la ecuacion de distancia, asi comprobamos si el punto se encuntra en el radio
  24.     //Obs: a modo de facilitar la expresion, utilizo la funcion pow() y sqrt() de la libreria 'math.h'
  25.     // Como el centro de la Cia es P(0,0), la ecuacion de distancia es directamente (x^2 + y^2)^(1/2) (Raiz de la suma del cuadrado de las coordenadas)
  26.     float distanciaCentro = sqrt(pow(x,2)+pow(y,2));
  27.     if(distanciaCentro <= sqrt(25)) // Verificamos que la distancia se encuentre entre la longitud del radio
  28.         cout<<"El Punto P("<<x<<","<<y<<") se encuntra dentro de la Cia: x^2 + y^2 = 25"<<endl;
  29.     else
  30.         cout<<"El Punto P("<<x<<","<<y<<") NO se encuentra dentro de la Cia: x^2 + y^2 = 25"<<endl;
  31.  
  32.     /*
  33.         Determinamos si el punto de encuentra por arriba, por debajo o pertenece a la Recta dada R: x-y+2=0
  34.        
  35.         Para determinar la posicion del punto respecto a la recta podemos analizar las distancias del punto P a la recta R (Ecuacion de distancia entre un punto y una recta),
  36.          tomando ambos signos de la raiz y comparar los signos del resultado
  37.          
  38.             Si se tiene que tomando el '+' de la raiz da como resultado '-' y viceversa (para '+' --> '-'). Entonces el punto se encuntra por arriba de la recta
  39.             en caso que no se cumpla esto y que el punto no perteneza a la recta, el punto de encuntra por debajo de la recta.
  40.     */
  41.     float distanciaPuntoRectaPositivo = (x-y+2)/(sqrt(pow(1,2)+pow(1,2)));
  42.     float distanciaPuntoRectaNegativo = (x-y+2)/((sqrt(pow(1,2)+pow(1,2)))*(-1));
  43.    
  44.     if(x-y+2 == 0)
  45.         cout<<"Pertenece a la recta R: x-y+2=0"<<endl;
  46.     else if(distanciaPuntoRectaPositivo<0 and distanciaPuntoRectaNegativo>0)
  47.         cout<<"Se encuentra por arriba de la recta R: x-y+2=0"<<endl;
  48.     else
  49.         cout<<"Se encuentra por debajo de la recta R: x-y+2=0"<<endl;
  50. }
  51.  
Add Comment
Please, Sign In to add comment