Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- struct Fraction
- {
- int Numerator, // Числитель
- Denominator; // Знаменатель
- } ;
- Fraction aTest[10];
- int test(int); // Тестирует функцию "checking_the_correct_fraction()"
- // несколькими предопределёнными дробями.
- // Если дроби все правильные, то возвращает 1 (один)
- // Если хотя бы одна неправильная, то вернёт 0 (ноль)
- int checking_the_correct_fraction(int k, int p);
- ////////////////////////////////////////////////////
- int main() //
- {
- if(test(2) == 1) printf("Test. All fractions are correct. \n"); // Удалить после тестирования ф-ции.
- else printf("Test. Not all fractions are correct !!! \n"); // Удалить после тестирования ф-ции.
- }
- // Возвращает:
- // = 0, если дробь неправильная
- // = 1, если правильная
- //////////////////////////////////////////////////// k - это числитель
- int checking_the_correct_fraction(int k, int p) // p - знаменатель
- {
- if(k >= p) return 0;
- while (p > 0)
- {
- int c = k % p;
- k = p;
- p = c;
- }
- if(k != 1) return 0;
- return 1;
- }
- // Тестирует функцию "checking_the_correct_fraction()"
- // несколькими предопределёнными дробями.
- // Если дроби все правильные, то возвращает 1 (один)
- // Если хотя бы одна неправильная, то вернёт 0 (ноль)
- //////////////////////////////////////////////////////////////////////
- int test(int n) //
- {
- switch(n)
- {
- case 1: // Есть неправильные дроби
- if(checking_the_correct_fraction( 2, 5) == 0) return 0;
- if(checking_the_correct_fraction( 3, 7) == 0) return 0;
- if(checking_the_correct_fraction(13, 14) == 0) return 0;
- if(checking_the_correct_fraction(19, 20) == 0) return 0;
- if(checking_the_correct_fraction( 2, 6) == 0) return 0;
- if(checking_the_correct_fraction( 3, 9) == 0) return 0;
- if(checking_the_correct_fraction(13, 26) == 0) return 0;
- if(checking_the_correct_fraction( 5, 20) == 0) return 0;
- return 1;
- case 2: // Все дроби правильные
- if(checking_the_correct_fraction( 2, 5) == 0) return 0;
- if(checking_the_correct_fraction( 3, 7) == 0) return 0;
- if(checking_the_correct_fraction(13, 14) == 0) return 0;
- if(checking_the_correct_fraction(19, 20) == 0) return 0;
- if(checking_the_correct_fraction( 5, 7) == 0) return 0;
- if(checking_the_correct_fraction(13, 14) == 0) return 0;
- if(checking_the_correct_fraction(15, 26) == 0) return 0;
- if(checking_the_correct_fraction( 5, 19) == 0) return 0;
- return 1;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement