👤

Se dau în plan, un punct de coordonate (x,y)și o dreaptă ce trece prin punctele de coordonate (x1,y1) si (x2,y2). Să se scrie un program C++ care sa determine distanța de la punct la dreaptă.

Răspuns :

[tex]A(x_1,y_1);\ B(x_2,y_2) \\ d:ax+b=y \\ \left \{ {{ax_1+b=y_1} \atop {ax_2+b=y_2}} \right. \\ b=y_2-ax_2 \\ ax_1+y_2-ax_2=y_1 \\ a(x_1-x_2)=y_1-y_2 \\ a= \frac{y_1-y_2}{x_1-x_2} \\ b=y_2-ax_2 \\ \hbox{a si b au fost gasite. Formula pentru distanta este:} \\ d_{M(x_M,y_M),d(ax+b=y)}= \frac{|y_M-ax_M-b|}{\sqrt{1+a^2}} [/tex]

Codul din prima imagine din atasament este scris in limbajul C++, compileaza cu succes folosind Visual Studio 2015 si implementeaza functionalitatea ceruta de problema. In a doua imagine se observa rularea programului pentru un punct de coordonate 4 si 5, a carui distanta la dreapta ce trece prin punctele (0,3) si (1,6) este corect calculata, rezultand ~3.1623.




Vezi imaginea АНОНИМ
Vezi imaginea АНОНИМ