Sunday, December 22, 2019

ЛР2 Программирование (1.3.1 В21) - I

LabWork2
I. Внешняя спецификация
1. Условие задачи

Тело С, покоящееся на расстоянии R м от тела В (ниже и левее последнего), начинает движение по горизонтальной прямой вправо, а тело В остается неподвижным. Расстояние между телами сокращается до Т м (когда тело С проходит под телом В), а затем опять начинает увеличиваться. Вычислить расстояние между телами через 1, 2, …, N с после начала движения тела С, если его ускорение равно А.

D[i]:=abs(sqrt(T*T+exp(2*ln(0.5*A*i*i-sqrt(R*R-T*T)))))

2. Состав данных
Тип
Имя
Смысл
Структура
Исходные данные
вещественный
A
ускорение тела С
простая переменная
вещественный
R
расстояние от тела С до тела В в начальный момент времени
простая переменная
вещественный
Т
минимальное расстояние от тела С до тела В
простая переменная
целый
N
количество значений величины “время”
простая переменная
Выходные данные
вещественный
D
расстояние между телами С и В через 1, 2, …, N с после начала движения тела С
одномерный массив
Промежуточные данные
целый
i
номер вычисляемого значения функции расстояния и одновременно время с момента начала движения в секундах
простая переменная

3. Форма ввода
1 3
<N>
1 5
<A>
1 5
<R>
1 5
<T>

4. Выходная форма
1 3
<N>
1 5
<A>
1 5
<R>
1 5
<T>
1 3
<i>
1 7
<D[1]>
...
...
1 3
<i>
1 7
<D[N]>

5. / 6. 
Вычисления производятся после проверки условий:
1) A>0 (тело движется только в одном направлении);
2) R>=T (расстояние между телами не может быть меньше Т).
7. Аномалии
1) A<=0;
2) R<T.

8. Тесты
1) с отрицательным результатом ⇒

10
-3.1
15.6
12.1


5
2.7
5.9
24.1


2) с положительным результатом ⇒

7
3.2
23.1
9.4


No comments:

Post a Comment