Вычислить количество точек с целочисленными координатами,находящихся в круге радиуса r (r> 0) с центром в начале координат. (паскаль. цикл. без массива )

Zaayeva Zaayeva    1   22.06.2019 18:40    7

Ответы
kaaanrakun kaaanrakun  17.07.2020 20:27
Var
  r, r2, x, y: real;
  n: integer;

begin
  Write('Введите величину радиуса окружности: '); Readln(r);
  r2 := sqr(r); n := 0;
  {1. Точки в первой четверти без учета попавших на оси }
  x := 1;
  while x <= r do
  begin
    y := 1;
    while y <= r do
    begin
      if sqr(x) + sqr(y) <= r2 then n := n + 1;
      y := y + 1
    end;
    x := x + 1
  end;
  n := 4 * n; { учли точки в остальных трех четвертях }
  n := n + 1; { учли точку в начале координат }
  n := n + 4 * trunc(r); { учли точки, находящиеся на координатных осях }
  Writeln('Число точек, принадлежащих кругу, равно ', n);
end.

Тестовое решение:
Введите величину радиуса окружности: 3
Число точек, принадлежащих кругу, равно 29
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика