Заяц и дерево - Pascal

Узнай цену своей работы

Формулировка задачи:

Помогите пожалуйста решить задачу. Заранее спасибо! После строительства на выбранной поляне частокола для обороны от хищников Заяц обнаружил, что внутри ограды оказалось огромное засохшее дерево, которое может помешать строительству домика. Зайцу хочется спилить это дерево “под самый корешок” таким образом, чтобы дерево при падении не повредило ограду. Заяц обрубил все ветки, и от дерева остался цилиндр высотой h и радиусом r. Ограда имеет форму окружности с радиусом R и по высоте больше диаметра дерева. Центр дерева находится на расстоянии b от центра ограды. Заяц может повалить дерево в любую нужную ему сторону. После падения нижний край поваленного дерева касается (как касательная) окружности основания дерева, как показано на рисунке. Требуется написать программу, которая определит, сможет ли заяц повалить спиленное дерево, не повредив ограду.

Входные данные

В единственной строке записано четыре целых числа через один пробел: R, r, h и b (1 ≤ r ≤ r+b, R≤ 100, 1 ≤ h ≤ 1000).

Выходные данные

нужно вывести слово YES, если существует направление падения дерева, при котором ограда останется неповрежденной, и NO в противном случае.

Пример

Ввод : 90 3 50 10 Вывод: YES

Решение задачи: «Заяц и дерево»

textual
Листинг программы
var rr, r, h, b: integer;
begin
  readln(rr, r, h, b);
  if rr >= sqrt(sqr(h + r - b) + r * r)
    then writeln('YES')
    else writeln('NO')
end.

Объяснение кода листинга программы

  1. Объявление переменных:
    • rr, r, h, b - все типа integer.
  2. Ввод значений переменных rr, r, h, b с клавиатуры.
  3. Проверка условия: если значение rr больше или равно квадратному корню из суммы квадрата (h плюс r минус b) и квадрата r:
    • Если условие выполняется, то выводится 'YES'.
    • Если условие не выполняется, то выводится 'NO'.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 4.375 из 5
Похожие ответы