Определить функцию, проверяющую, является ли заданная дробь несократимой. (Дробь задается двумя натуральными числами – числителем и знаменателем). Найти все несократимые дроби, заключенные между 0 и 1, знаменатели которых не превышают заданное число n.
пожалуйста помогите!!! никак не пойму
Если я правильно помню, несократимая дробь это та, числитель и знаменатель которой не имеют общих целых делителей.
Тогда алгоритм проверки можно примерно описать так:
С=начальное значение ИСТИНА; С-результат, если после выполнения цикла останется ИСТИНА, то дробь несократимая;
Ч-текущее значение числителя;
З-текущее значение знаменателя;
ЦИКЛ для I от 2 (единица не годится для общего делителя) до Ч, приращение 1
ЕСЛИ ОСТАТОК_ДЕЛЕНИЯ Ч на I ==0 И ОСТАТОК_ДЕЛЕНИЯ З на I ==0 то С=ЛОЖЬ
КОНЕЦ ЦИКЛА
Можно в начале (до цикла, но после присвоения С значения ИСТИНА) сделать проверку, что Ч больше 1, т.к. такая дробь не требует
проверки. А можно и не делать, т.к. цикл все равно в этом случае выполняться не будет.
Текст на каком-либо языке программирования потрудитесь написать самостоятельно.
Удачи!