Xwab
Форумыnavigate_nextДругие языки программирования

Перегрузка функций,операторов в С++
Сообщения
Pljus

Помогите реализовать на С++
1.Определить пользовательский тип данных fraction (дробь), представляющий собой структуру из 2х полей: числителя (long m) и знаменателя (unsigned long n)
2. На основе создания функции НОД(найбольший общий делитель), вида
unsigned long nod(unsigned long, unsigned long);
3 Используя функцию nod, создать функцию, производящую сокращение дробиЖ
void reduce (fraction* f);
4 Создать перегруженный оператор +, возвращающий сокращенную сумму двух дробей
fraction operator + (fraction, fraction);
5 Дополнить программу кодом, позволяющим вводить с клавиатуры значения 2 дробей(отдельно числителя и знаменателя)
6 Дополнить программу кодом, производящим сложение веденных дробей с помощью перегруженного оператора + и вывести результат на экран.
Нахождение НОД:
cout << "Input x: ";
cin >> x;
cout << "Input y: ";
cin >> y;
if (x==0 || y==0)
cout << "nevozmozno rasschitat NOD" ;
else if (x<0) x=abs(x);
if (y<0) y=abs(y);
while (x!=y)
if (x>y) x-=y;
else y-=x;
cout << "NOD=" << x << '\n';

02 Ноя 2010, 20:34
Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.