Лабораторна робота №1
Тема: тестування програми методом “білого ящика”
Мета: написання програми для вирішення поставленого завдання з її подальшим тестуванням.
Завдання: ідентифікувати трикутник по трьох сторонах (гострокутний, прямокутний, тупокутний, рівносторонній,
рівнобедрений).
Лістинг:
#include <iostream.h>
#include <stdlib.h>
void main ()
{
int a,b,c;
cout<<"Enter the size of 'a' side: ";
cin>>a;
cout<<"Enter the size of 'b' side: ";
cin>>b;
cout<<"Enter the size of 'c' side: ";
cin>>c;
if (((a<=0)||(b<=0)||(c<=0))||((a>=b+c)||(b>=a+c)||
(c>=a+b)))
{
|
cout<<"ERROR: Triangle is incorrect\n"; |
|
exit (1); |
}
Продовження лістинга програми
if ((a==b)&(a==c)&(b==c))
|
cout<<"Triangle is 'ravnostoronniy'\n"; |
|
else if ((a==b)||(b==c)||(a==c)) |
|
cout<<"Triangle is 'ravnobedrenniy'\n"; |
if ((a*a==(b*b+c*c))||(b*b==(a*a+c*c))||(c*c==(a*a+b*b)))
{
|
cout<<"Triangle is 'pryamougolniy'\n"; |
}
if ((a*a<(b*b+c*c))&(b*b<(a*a+c*c))&(c*c<(b*b+a*a)))
{
|
cout<<"Triangle is 'ostrougolniy'\n"; |
}
if ((a*a>(b*b+c*c))||(b*b>(a*a+c*c))||(c*c>(b*b+a*a)))
{
|
cout<<"Triangle is 'tupougolniy'\n"; |
}}
Умови для створення блок-схеми
(*1) = (((a<=0)||(b<=0)||(c<=0))||((a>=b+c)||(b>=a+c)||(c>=a+b)))
(*2) = ((a==b)&(a==c)&(b==c))
(*3) = ((a==b)||(b==c)||(a==c))
(*4) = ((a*a==(b*b+c*c))||(b*b==(a*a+c*c))||(c*c==(a*a+b*b)))
(*5) = ((a*a<(b*b+c*c))&(b*b<(a*a+c*c))&(c*c<(b*b+a*a)))
(*6) = ((a*a>(b*b+c*c))||(b*b>(a*a+c*c))||(c*c>(b*b+a*a)))