4 / 4 / 0
Регистрация: 31.05.2011
Сообщений: 25
1

Найти координаты точек пересечения прямой.

01.10.2011, 07:20. Показов 2816. Ответов 2
Метки нет (Все метки)

Найти координаты точек пересечения прямой y=kx+b и окружности радиуса R с центром в начале координат. В каких координатных четвертях находятся точки пересечения? Если точек пересечения нет или прямая касается окружности, выдать соответствующее сообщение.

помогите пожалуйста!
2
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
01.10.2011, 07:20
Ответы с готовыми решениями:

Найти координаты точек пересечения прямой
Помогите пожалуйста) Найти координаты точек пересечения прямой y=kx+b и окружности радиуса R с...

Найти координаты точек пересечения прямой и окружности
Помогите пожалуйста новмчку!) Найти координаты точек пересечения прямой y=kx+b и окружности...

Найти координаты точек пересечения
1 Даны координаты двух точек A(x1,y1) и B(x2,y2) в прямоугольной системе координат. Какая из этих...

Даны два круга, расположенных внутри прямоугольника. Найти координаты точек пересечения этих кругов, если они имеются.
Окружности Даны два круга, расположенных внутри прямоугольника. Найти координаты точек пересечения...

2
Почетный модератор
64275 / 47574 / 32739
Регистрация: 18.05.2008
Сообщений: 115,182
01.10.2011, 09:41 2
Найти координаты точек пересечения прямой и окружности
0
Злой няш
2136 / 1505 / 565
Регистрация: 05.04.2010
Сообщений: 2,881
01.10.2011, 10:14 3
Лучший ответ Сообщение было отмечено vostrik как решение

Решение

Имеем такую систему уравнений:
https://www.cyberforum.ru/cgi-bin/latex.cgi?\left\{\begin{matrix}y = k * x + b\\{x}^{2} + {y}^{2} = {r}^{2}\end{matrix}\right.
Приравняв одно уравнение к другому имеем значения для дискриминанта:
https://www.cyberforum.ru/cgi-bin/latex.cgi?\left(1 + {k}^{2} \right) * {x}^{2} + (2 * k * b) * x + ({b}^{2} - {r}^{2}) = 0
Точки размещал по четвертям согласно этому рисунку:
Найти координаты точек пересечения прямой.

Сама программа:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
procedure check(x, y : real);
   begin
      write('Точка (', x:0:4, ', ', y:0:4, ') в ');
      if (x > 0) and (y > 0) then writeln('I четверти.');
      if (x < 0) and (y > 0) then writeln('II четверти.');
      if (x < 0) and (y < 0) then writeln('III четверти.');
      if (x > 0) and (y < 0) then writeln('IV четверти.')
   end;
 
var k, b, r, d : real; {входные параметры и дискриминант}
   x1, y1, x2, y2 : real; {координаты первой и второй точки}
begin
   write('k = '); readln(k);
   write('b = '); readln(b);
   write('r = '); readln(r);
   d := sqr(2 * k * b) - 4 * (1 + sqr(k)) * (sqr(b) - sqr(r));
   if d < 0 then writeln('Прямая не пересекает окружность.')
   else if d = 0 then begin
      x1 := (-k * b) / (1 + sqr(k));
      y1 := k * x1 + b;
      writeln('Прямая касается окружности.');
      check(x1, y1)
   end else begin
      x1 := (-2 * k * b - sqrt(d)) / (2 * (1 + sqr(k)));
      x2 := (-2 * k * b + sqrt(d)) / (2 * (1 + sqr(k)));
      y1 := k * x1 + b;
      y2 := k * x2 + b;
      writeln('Прямая пересекает окружность в двух точках:')
      check(x1, y1);
      check(x2, y2)
   end
end.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
01.10.2011, 10:14
Помогаю со студенческими работами здесь

Нахождение координат точек пересечения прямой и окружности
Даны прямая и окружность, заданные уравнениями у=kх+b и {(x-a)}^{2}+{(y-b)}^{2} = {r}^{2}....

Известны координаты двух точек. Найти расстояния от начала координат до этих точек.
Известны координаты двух точек A(x1,y1) и B(x2,y2). Найти расстояния от начала координат до этих...

Найти точки пересечения прямой и параболы
Найти точки пересечения прямой y = mx + n и параболы y = ax2 + bx + c пожалуйста))

Найти координаты точки пересечения медиан треугольника
Дорогие друзья помогите пожалуйста с решением этой задачи, завтра сдавать а у меня она не готова(((...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru