Задано 20 пар чисел х,у. Каждая пара чисел интерпретируется как координаты (х,у) некоторой точки плоскости. Определить, сколько точек попадет в круг радиусом R с центром в точке с координатами (a,b). Вывести на экран кол - во и координаты точек, попавших в круг.(Указание: Координаты точек задать в виде одномерных массивов X and Y по 20 элементов каждый. Точка с координатами (х,у) попадает в круг, если выполняется условие (x-a) в квадрате +(y-b) в квадрате<R в квадрате.)
Долго думал как сделать эту задачу но ниче у меня не получилось(((
const
n = 20; {Сколько всего точек}
ar_x : array [1 .. n] of real = (1, 2, 3, 4, 5, -1, -2, -3, -4, -5, 1, 2, 3, 4, 5, -1, -2, -3, -4, -5); {Массив х координат}
ar_y : array [1 .. n] of real = (1, 2, 3, 4, 5, -1, -2, -3, -4, -5, -1, -2, -3, -4, -5, 1, 2, 3, 4, 5); {Массив y координат}
r = 3; {радиус}
center_x = 0; {X координата центра}
center_y = 0; {У координата центра}
var i : integer; {Переменная для цикла}
count : integer;{Количество точек которые в круге}
begin
count:=0;{Обнуляем количество точек в круге}
for i:= 1 to n do {Пробегаем по массивам}
if (ar_x[i]-center_x)*(ar_x[i]-center_x)+(ar_y[i]-center_y)*(ar_y[i]-center_y)<=r*r then begin {Проверка на принадлежность кругу}
inc(count); {Если принадлежит, то увеличиваем количество принадлежащих на 1}
writeln(ar_x[i]:0:6,' ',ar_y[i]:0:6); {Если принадлежит, то выводим эту пару}
end;
writeln(count);{Выводим количество}
readln;{Ждем нажатия Enter, для завершения}
end.
Большое спс
! | Beseech, ты испытываешь терпение Администрации? Что такого информативного в "интересная" и "помогите"? Не переименуешь - получишь премодерацию |
arhimag упорно не хочет читать задания... Он их исключительно просматривает, и делает так, как ЕМУ удобно... Русским языком сказано:
Volvo , видимо твое желание найти у меня ошибку, превысило твою внимательность, но я думаю, что это можно тебе простить.
Уважаемый администратор сорри за такие темы...
Просто я уже незнаю как их писать...