Нескончаемая клеточная страничка состоит из квадратных клеток. Сторона каждой клетки равна

Безграничная клеточная страничка состоит из квадратных клеток. Сторона каждой клетки одинакова k единиц. Радиус круга равен r единиц. Необходимо определить, сколько клеток заходит в круг (и те, которые входят на сто процентов в круг, и те, которые пересекаются окружностью).

k и r - естественные
Вход 1 5 Выход 88
Вход 3 7 Выход 32
Вход 4 5 Выход 12
Написать желанно на Delphi 7, но и на pascal abc сойдёт.

Задать свой вопрос
1 ответ
Var i,k,p,r,m,n: integer;
begin
  write('размер клеточки k = ');  readln(k);
  write('радиус круга r = ');  readln(r);
  n:=r div k;
  if ((r mod k)gt;0) then inc(n);
  m:=0; p:=n-1;
  for i:=1 to n-1 do 
  begin
    if Ceil(sqrt(r*r-k*i*k*i))lt;=p*k then
    begin
      p:=p-1;
      m:=m+n-i;
    end;  
  end;
  m:=4*n*n-4*m;
  writeln(m);
end.

размер клеточки k = 1
радиус круга r = 5
88

размер клеточки k = 3
радиус круга r = 7
32

размер клетки k = 4
радиус круга r = 5
12

Никита
При входных данных 1 и 5 выходит 96, а не 88
Никита Сипунов
Поглядите тесты в условии задачки.
Sergenchev Timur
тут все правильно
Катюша Метелимова
Вероятно неувязка в том, что я заместо ceil использую trunc, а после прибавляю 1. Мне нельзя использовать дополнительные библиотеки.
Милена Хотянцева
ну да
Артём
Ощущаю себя дураком. При целом значении у меня +1, а этого не необходимо. Спасибо, что подтолкнули на решение
, оставишь ответ?
Имя:*
E-Mail:


Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт