Saturday, January 4, 2020

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

LabWork8

I. Внешняя спецификация
1. Условие задачи
Целочисленная функция f(K)=K3-25K2+50K+1000 определена только для целых значений аргумента  K. 
Составить программу вычисления значений функции  f(K) для 20 значений аргумента K в интервале (-30,60) с выводом лишь тех значений, которые удовлетворяют заданному условию, и подсчетом остальных ее значений.
Для проверки работы программы задать значения 
A=3*104, B=6*104, M=4.
Условие для определения выводимых значений f(K):
- значение f(K) не превышает по абсолютной величине сумму A+B+M, а если оно отрицательно, то к тому же меньше значения -(A+B)/M.

2. Состав данных
Тип
Имя
Смысл
Структура
Исходные данные
целый
A
параметр для определения выводимых значений функции
простая переменная
целый
B
параметр для определения выводимых значений функции
простая переменная
целый
M
параметр для определения выводимых значений функции
простая переменная
целый
N
количество значений аргумента
простая переменная
целый
K
аргумент функции
простая переменная
Выходные данные
целый
F
значение функции
простая переменная
целый
C
количество значений функции, не удовлетворяющих условию
простая переменная
Промежуточные данные
целый
i
номер элемента массива
простая переменная

3. Форма ввода
1 3
<N>
1 5
<A>
1 5
<B>
1 3
<M>
1 3
<K>
....
1 3
<K >

4. Выходная форма
1 3
<N>
1 5
<A>
1 5
<B>
1 3
<M>
1 3
<i >
1 3
<K >
1 6
<F >
...
...
...
1 3
<i >
1 3
<K >
1 6
<F>
1 3
<C>

5. / 6. Проработка фрагментов программы
Значение функции определено для любых значений целочисленного аргумента.
Проверка дополнительных условий требуется только при вводе некорректных данных пользователем: числа не находятся в указанном в условии интервале.
7. Аномалии
Ошибки программы возможны при некорректном вводе данных пользователем.
Сообщение об ошибке выдается программой в случае, если вводимые значения аргумента не находятся в указанном в условии интервале.
Сообщение об ошибке при вводе значений, не являющихся целочисленными, выдает компилятор.

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

20
30000
60000
4
-5
28
42
15
7
53
2
44
-10
10
-7
25
1
8
-6
-28
-8
17
-12
47

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

20
30000
60000
4
58
48
45
L
K
-27
8

20
30000
60000
4
58
78
45
89
-30
31

No comments:

Post a Comment