• Предмет: Информатика
  • Автор: Карапуз111
  • Вопрос задан 7 лет назад

Помогите решить задачу по информатике на языке Паскаль. Срочно! 25 баллов

Приложения:

Ответы

Ответ дал: Аноним
0
// PascalABC.NET 3.3, сборка 1579 от 18.11.2017
// Внимание! Если программа не работает, обновите версию!

begin
  Writeln('Введите начальную скорость снаряда, расстояние до стены, высоту стены');
  var (v,S,h):=ReadReal3;
  var A:=ReadReal('Введите угол наклона ствола пушки');
  if v<=0 then begin
    Writeln('Скорость должна быть положительной');
    Exit
    end;
  if v>1000 then begin
    Writeln('Скорость слишком велика');
    Exit
    end;
  if S<=0 then begin
    Writeln('Расстояние должно быть положительным');
    Exit
    end;
  if h<=0 then begin
    Writeln('Высота стены должна быть положительной');
    Exit
    end;
  if A<=0 then begin
    Writeln('Пушка не должна стрелять в землю');
    Exit
    end;
  if A>=pi/2 then begin
    Writeln('Пушка направлена не в сторону стены');
    Exit
    end;
  var L:=S*Tan(A)-9.81*S/(2*v*v*Sqr(Cos(A)));
  if L>h then begin
    Writeln('Снаряд не попал в стену...');
    Exit
    end;
  if L<0 then Writeln('Снаряд не попал в стену...')
  else Writeln('Попал!!!')
end.

Пример
Введите начальную скорость снаряда, расстояние до стены, высоту стены
300 500 8.5
Введите угол наклона ствола пушки 0.2
Снаряд не попал в стену...
Вас заинтересует