СРОЧНО!!!!!! ОЧЕНЬ НАДО!!!!!!!!!!
c++
Напишите функцю void reduce_fraction(int *n, int *m), которая сократит дробь , то есть изменит числа, которые лежат по указателям n и m таким образом, что значение дроби останется прежним, но она будет несократимой.
После написания функции требуется решить задачу, в которой вводятся натуральные числа a и b, после чего дробь сокращается, и выводится уже в сокращенном виде.
Формат входных данных
Вводятся два натуральных числа a и b, не превосходящие 100.
Формат выходных данных
Требуется вывести сокращенную дробь.
Примеры
входные данные
выходные данные
12
16
3 4
Answers & Comments
using namespace std;
int reduce_fraction(int n, int m)
{
if (m == 0) {
return n;
}
return reduce_fraction(m, n % m);
}
int main()
{
int num, dem;
cout << "Nominator: ";
cin >> num;
cout << "Denominator: ";
cin >> dem;
int nod = reduce_fraction(num, dem);
cout << num << '/' << dem << " => " << (num / nod) << '/' << (dem / nod) <<
endl;
return 0;
}