Var x,y: real;
begin
write(' x = '); readln(x);
if x<0 then y:=sqr(x)*x+2
else y:=sqrt(x);
writeln(' y = ',y:6:4);
end.
<span>
</span>
Это определение стандартной неэлементарной кусочно-постоянной математической функции sgn(x) - сигнум От латинского signum - знак).
В языке Паскаль эта функция уже определена.
// PascalABC.NET 3.1, сборка 1239 от 08.05.2016
// Также проверено в WDE: http://pascalabc.net/WDE
begin
Writeln('y=',Sign(ReadReal('x=')))
end.
<u><em>Тестовое решение</em></u>
x= 4.564
y=1
#include <iostream>
using namespace std;
int main(){
int now = 1; //tekushee chislo
for(size_t i = 0; i < 10; i++)
{ cout << now << " " << now * now << " " << now * now * now << endl; //vivodim chislo, kvadrat i kub
now += i + 1; //nahodim sledujushee
}
return 0;}<span>
</span>
Немного непонятно, о каком именно коэффициенте сопротивления идёт речь (если задача действительно по информатике, а не по физике). По размерности подходит такое выражение для силы сопротивления (я буду считать, что дано именно оно, плотность воздуха ρ примем равной 1,25 кг/м3):
Уравнение движения парашютиста:
Для решения задачи создадим таблицу, в которой будут столбцы: время, координата, скорость и ускорение. Со временем проще всего, это последовательные шаги, начиная с 0 с с некоторым шагом t. Затем вычисляем по формуле ускорение, скорость (изменение скорости есть a * t), и координату (изменение координаты есть v * t). Когда парашютист достигнет земли, его координата не должна меняться, это можно сделать при помощи функции ЕСЛИ.
Получившийся файл Excel и графики приложены к ответу.