Предмет: Информатика,
автор: Bekose
( НА ЯЗЫКЕ С++ ) Напишите процедуру, которая сокращает дробь вида M/N. Числитель и
знаменатель дроби передаются как изменяемые параметры.
ПРИМЕР.
Входные данные
25 15
Выходные данные
5/3
Ответы
Автор ответа:
2
#include <iostream>
using namespace std;
void reduce(int* m, int* n) {
int a,b,c;
a=*m; b=*n;
// НОД a b - алгоритм Евклида
do {
c=a%b; a=b; b=c; }
while (b>0);
*m/=a; *n/=a;
}
int main() {
int m,n;
cout<<"input m n "; cin>>m>>n;
cout<<m<<"/"<<n<<" = ";
reduce(&m,&n);
if (n>1) cout<<m<<"/"<<n<<endl;
else cout<<m<<endl;
system("pause");
return 0;
}
input m n 25 15
25/15 = 5/3
using namespace std;
void reduce(int* m, int* n) {
int a,b,c;
a=*m; b=*n;
// НОД a b - алгоритм Евклида
do {
c=a%b; a=b; b=c; }
while (b>0);
*m/=a; *n/=a;
}
int main() {
int m,n;
cout<<"input m n "; cin>>m>>n;
cout<<m<<"/"<<n<<" = ";
reduce(&m,&n);
if (n>1) cout<<m<<"/"<<n<<endl;
else cout<<m<<endl;
system("pause");
return 0;
}
input m n 25 15
25/15 = 5/3
Bekose:
не правильно
Похожие вопросы
Предмет: Биология,
автор: Sofia5234
Предмет: Русский язык,
автор: gamer12012010
Предмет: Алгебра,
автор: svitlanash0212
Предмет: Математика,
автор: Nurgsv1
Предмет: Математика,
автор: vovapivin2004l