Предмет: Информатика,
автор: 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:
не правильно
А что не правильно. 25/15 = 5/3 - это не правильно?
на сайте проверено и написано wrong answer
Вы же видите, что для наглядности ввод и вывод в другом формате. Уберите в программе строку cout<<"input m n "; и строку cout<<m<<"/"<<n<<" = "; - это же элементарно.
Я знаю, все равно не получается
Похожие вопросы
Предмет: Физика,
автор: vitaliymurzin08
Предмет: Русский язык,
автор: maksafanasenko9
Предмет: История,
автор: borzenkova8232
Предмет: Математика,
автор: Nurgsv1
Предмет: Математика,
автор: vovapivin2004l