Guest User

Untitled

a guest
Jan 23rd, 2018
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.91 KB | None | 0 0
  1. /*Determinare l'equazione di una retta passante per due punti*/
  2.  
  3. /*Sapendo che per calcolare l'equazione della retta, dati 2 punti p1(x1,y1) e p2(x2,y2),
  4. bisogna impostare l'equazione seguente: (y-y1)/(y2-y1)=(x-x1)/(x2-x1)
  5. che può scriversi ax+bx+c=0 (equazione implicita della retta)
  6. con a=y2-y1 , b=x1-x2 , c=(x2*y1)- (x1*y2). */
  7. #include <iostream.h>
  8. #include <math.h>
  9. int main ()
  10.  
  11. {
  12.     float a, b, c, x1, x2, y1, y2, m, q, aa, bb;
  13.     cout<<"Calcoliamo l'equazione di una retta passante per due punti p1 e p2"<< endl;
  14.     //Inseriamo le coordinate cartesiane dei due punti p1(x1,y1) p2(x2,y1)
  15.     cout<<"Inserisci l'ascissa del primo punto"<< endl;
  16.     cin >> x1;
  17.     cout<<"Inserisci l'ordinata del primo punto"<< endl;
  18.     cin >> y1;
  19.     cout<<"Inserisci l'ascissa del secondo punto"<< endl;
  20.     cin >> x2;
  21.     cout<<"Inserisci l'ordinata del secondo punto"<< endl;
  22.     cin >> y2;
  23.     a=y2-y1; b=x1-x2; c=(x2*y1)-(x1*y2); m=-(a/b); q=-(c/b);
  24.     //Controllo se me q sono valori interi oppure razionali
  25.    
  26.    
  27.    m=-(a"/"b);
  28.    q=-(c"/"b);
  29.     //Ricaviamo dunque l'equazione della retta
  30.     cout<<"L'equazione implicita della retta e'"<< endl;
  31.     cout<<a<<"x";
  32.     {
  33.     if(b>=0)
  34.              cout<<"+"<<b<<"y";
  35.     else
  36.              cout<<b<<"y";
  37.    
  38.      
  39.     if(c>=0)
  40.              cout<<"+"<<c<<"=0";
  41.     else
  42.              cout<<c<<"=0";
  43.              }
  44.              cout<< endl;
  45.     /*cout<<"L'equazione esplicita e'"<< endl;
  46.     cout<<"y="<<m<<"x";
  47.     {
  48.     if(q>=0)
  49.     cout<<"+"<<q;
  50.     else
  51.     cout<<q;
  52.     cout<< endl;
  53. }*/
  54.  
  55. cout<<"L'equazione esplicita e'"<< endl;
  56.  
  57. aa=fmodf(a, 2);
  58.  
  59. bb=fmodf(b, 2);
  60. {
  61. if(aa==0)
  62.  
  63. cout<<"y="<< m<<"x";
  64.  
  65. else
  66.  
  67. cout<<"y="<<"-("<< a<<"/"<< b<<")"<<"x";
  68. }
  69. {
  70. if(bb==0)
  71.     {
  72.          if(q>=0)
  73.          cout<<"+"<< q;
  74.          else
  75.          cout<< q<< endl;
  76. }
  77. else
  78. cout<<"-("<<c<<"/"<<b<<")"<< endl;
  79. }
  80.     system("pause");
  81. }
Add Comment
Please, Sign In to add comment