Автоматизация тестирования студенческих программ - page 4

Ю.Е. Алексеев
,
А.В. Куров
4
Для примера взята первая часть задания 3.3.1 из [4]: требуется со-
ставить программу вычисления с помощью минимального числа опе-
раторов if else значения функции
Y
(
X
) по формуле
( )
1
при 2,
/ 2
при 2
0,
не определена при 0,
2 — в остальных случаях.
X
X
X
Y X
X
< −
− ≤ ≤
⎪⎪= ⎨
=
⎪⎩
К этому условию добавим, что тестирование следует проводить
только после разработки части программы, вычисляющей
Y
(
X
).
После копирования нового шаблона в файл главной программы с
расширением .cpp в ее текст следует добавить:
– в первую часть программы оператор ввода значения перемен-
ной
x
:
scanf("%lf",&x);
– во вторую часть — операторы вычисления
Y
(
X
):
if(x==0)
printf("x==0, ФУНКЦИЯ НЕ ОПРЕДЕЛЕНА\n");
else
{
if(x<-2)
y=1;
else
if(x<0)
y=x/2;
else
y=2;
}
– в третью часть программы оператор вывода значения перемен-
ной
y
:
printf("x=%lf\ty=%lf\n",x,y);
Для этого примера использовался один файл тестирования вы-
числительной части программы. Ниже приведен его текст:
#ifdef test
#ifndef test1
#define test1
double xx[5]={-3, -2, -1, 0, 1e-8}
,yy[5]={ 1, -1,-0.5, 0, 2}
1,2,3 5,6
Powered by FlippingBook