Skip to content

Instantly share code, notes, and snippets.

@Sammers21
Last active December 17, 2017 14:42
Show Gist options
  • Save Sammers21/939dada96135f6b8e0ebb536ccb36457 to your computer and use it in GitHub Desktop.
Save Sammers21/939dada96135f6b8e0ebb536ccb36457 to your computer and use it in GitHub Desktop.
Тестирование номер 5: 2 1 1, 13 8 12, 14 9 13
//(0, 5) Покрывает из 16 строк = 2
//(0, 5) Покрывает из 12 ветвлений = 1
//(0, 5) Покрывает из 20 условий = 1
int gcd(int a, int b)
{
if(a == 0) // +
return b; // +
if(b == 0)
return a;
if(a == b)
return a;
if(a > 0 && b < 0 || a < 0 && b > 0)
b = -b;
do
{
if(b > a && a > 0 || b < a && a < 0)
{
a = b-a;
b = b-a;
a = a+b;
}
b = a-b;
a = a-b;
}
while(b != 0);
return a;
}
//(-2, 4) Покрывает из 16 строк = 13
//(-2, 4) Покрывает из 12 ветвлений = 8
//(-2, 4) Покрывает из 20 условий = 12
int gcd(int a, int b)
{
// f
if(a == 0) // false +
return b; // -
// f
if(b == 0) // false +
return a; // -
// f
if(a == b) // false +
return a; // -
// f f
if(a > 0 && b < 0 || a < 0 && b > 0) // false && false || true && true = ture +
b = -b; // +
// a = -2, b = -4
do
{ // f f tf t
if(b > a && a > 0 || b < a && a < 0) //+ 1st iter false && false || true && true = true ; 2nd iter // false && false || false && true = false
{
a = b-a; // +
//1st iter a = -2, b = -4
b = b-a; // +
//1st iter a = -2, b = -2
a = a+b; // +
//1st iter a = -4, b = -2
}
b = a-b; // +
//1st iter a = -4, b = -2
//2nd iter a = -2, b = 0
a = a-b; // +
//1st iter a = -2, b = -2
//2nd iter a = -2, b = 0
}
// tf
while(b != 0); // true + ; 2nd iter false
return a; // +
}
//(0, 5), (-2, 4) Покрывает из 16 строк = 14
//(0, 5), (-2, 4) Покрывает из 12 ветвлений = 9
//(0, 5), (-2, 4) Покрывает из 20 условий = 13
int gcd(int a, int b)
{
// ft
if(a == 0) // (-2, 4)false/(0, 5)true +
return b; // +
// f
if(b == 0) // false +
return a; // -
// f
if(a == b) // false +
return a; // -
// f f
if(a > 0 && b < 0 || a < 0 && b > 0) // false && false || true && true = ture +
b = -b; // +
// a = -2, b = -4
do
{ // f f tf t
if(b > a && a > 0 || b < a && a < 0) //+ 1st iter false && false || true && true = true ; 2nd iter // false && false || false && true = false
{
a = b-a; // +
//1st iter a = -2, b = -4
b = b-a; // +
//1st iter a = -2, b = -2
a = a+b; // +
//1st iter a = -4, b = -2
}
b = a-b; // +
//1st iter a = -4, b = -2
//2nd iter a = -2, b = 0
a = a-b; // +
//1st iter a = -2, b = -2
//2nd iter a = -2, b = 0
}
// tf
while(b != 0); // true + ; 2nd iter false
return a; // +
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment