Визначення приналежності точки колі з центром на початку координат, рішення задач по

Пояснення до задачі і алгоритм рішення

Будемо вважати, що точка належить кругу, якщо знаходиться всередині його або на його окружності.

З будь-якої точки координатної площини можна провести відрізок до початку координат. Якщо довжина цього відрізка більше радіусу кола, то точка лежить за межами кола і, отже, не належить йому. Якщо ж відрізок, що з'єднує точку і початок координат, менше радіуса кола з центром на початку координат або дорівнює йому, то точка буде належати колі.

Відрізок між будь-якою точкою і нульовою точкою (початком координат) є гіпотенузою прямокутного трикутника, катети якого дорівнюють значенням x і y координати цієї точки.

Таким чином задача зводиться по-суті до двох дії:

  1. Знаходження довжини відрізка між точкою і початком координат по теоремі Піфагора (квадрат довжини гіпотенузи дорівнює сумі квадратів довжин катетів).
  2. Порівняно отриманого значення з радіусом кола.

Вихідний код на мові програмування Pascal

var x. y. r. h. real;
begin
write # 40; 'Координати точки:' # 41; ;
readln # 40; x. y # 41; ;
write # 40; 'Радіус кола:' # 41; ;
readln # 40; r # 41; ;
h. = sqrt # 40; x * x + y * y # 41; ;
if h> r then writeln # 40; 'Точка не належить колу' # 41;
else writeln # 40; 'Точка належить колу' # 41; ;
end.

Приклад (и) виконання програми на мові Pascal

координати точки: -1 -2
радіус кола: 5
Точка належить колу

Вихідний код на мові програмування C

#include
#include
main # 40; # 41; # 123;
float x. y. r. h;
printf # 40; "Координати точки:" # 41; ;
scanf # 40; "% F% f". x, y # 41; ;
printf # 40; "Радіус кола:" # 41; ;
scanf # 40; "% F". r # 41; ;
h = sqrt # 40; x * x + y * y # 41; ;
printf # 40; "Гіпотенуза дорівнює% .2f.". h # 41; ;
if # 40; h> r # 41; printf # 40; "Точка не належить колу. \ N" # 41; ;
else printf # 40; "Точка належить колу. \ N" # 41; ;
# 125;

Приклад (и) виконання програми на мові C

Координати точки 4 5
Радіус кола: 10
Гіпотенуза дорівнює 6.40. Точка належить колу.

Особливості рішення на мові програмування C

Для gcc компілювати з ключем -lm.

Вихідний код на мові програмування Python

from math import sqrt

x = float # 40; input # 40; "X =" # 41; # 41;
y = float # 40; input # 40; "Y =" # 41; # 41;
r = float # 40; input # 40; "R =" # 41; # 41;
h = sqrt # 40; x ** 2 + y ** 2 # 41;
print # 40; "Відстань до точки від початку координат одно% .2f"% h # 41;
if h> r:
print # 40; "Точка знаходиться за межами кола" # 41;
else:
print # 40; "Точка належить кругу" # 41;

Приклад (и) виконання програми на мові Python

x = 10
y = - 3
r = 5
Відстань до точки від початку координат одно 10.44
точка знаходиться за межами кола

Вихідний код на мові програмування кумирів

алг точка_круг
нач
вещ x. y. r. h
висновок "Координати точки:"
введення x. y
висновок "Радіус кола:"
введення r
h: = sqrt # 40; x ** 2 + y ** 2 # 41;
якщо h> r то висновок "Чи не належить"
інакше висновок "Належить"
Усе
кін

Приклад (и) виконання програми на мові кумирів

Координати точки: 1.6 - 2.1
Радіус кола: 4
належить