Подсчитать число точек внутри круга с радиусом R.c центром в точке с координатами (1;1). Координаты заданы массивами x(n),y(n) — Pascal(Паскаль)

uses crt;
function Rasst(x,y:real):real;
begin
Rasst:=sqrt(sqr(x-1)+sqr(y-1));
end;
var x,y:array[1..100] of real;
    n,i,k:byte;
    r:real;
begin
clrscr;
randomize;
write('Количество точек n=');
readln(n);
for i:=1 to n do
 begin
  x[i]:=10*random-4;
  y[i]:=10*random-4;
 end;
write('X:');
for i:=1 to n do
write(x[i]:5:1);
writeln;
write('Y:');
for i:=1 to n do
write(y[i]:5:1);
writeln;
writeln;
write('Введите радиус круга r=');
readln(r);
k:=0;
for i:=1 to n do
if Rasst(x[i],y[i])<=r then k:=k+1;
write('Внутри круга ',k,' тчк.');
readln
end.

Вариант 2

uses crt;
var i,n,k:byte;
     x,y:array[1..100] of real;
     R:real;
begin
 clrscr;
 write('Введите радиус R ');
 readln(R);
 writeln('Введите количество точек ');
 readln(n);
 for i:=1 to n do
  begin
   write('x[',i,']= ');
   readln(x[i]);
   write('y[',i,']= ');
   readln(y[i]);
  end;
k:=0;
for i:=1 to n do
 if (sqrt(sqr(x[i]-1)+sqr(y[i]-1))<=R) then inc(k);
writeln('Количество точек равно ',k);
readln;
end.

Leave a Comment

− 9 = 1