Я учусь на вводном курсе C++. Для одного из наших прошлых заданий нам пришлось создать простую программу для сложения дробей. Каждая новая лаборатория — это просто применение новых навыков, полученных при создании одной и той же программы. Теперь мне нужно сделать его, используя объекты из определения класса.
После работы с примером умножения, который дал нам мой профессор, я, наконец, получил код для правильного сложения дробей.
#include <iostream>
using namespace std;
class Fraction
{
private:
float numer;
float denom;
public:
void Init(float n, float d);
void Multi(Fraction *, Fraction *);
void Print();
Fraction()
{
numer = 0.0;
denom = 0.0;
}
void setNumer( float n ) { numer = n; }
void setDenom( float d ) { denom = d; }
float getNumer() { return numer; }
float getDenom() { return denom; }
};
main()
{
Fraction x;
Fraction y;
Fraction f;
x.Init( 1.0, 4.0 );
y.Init( 3.0, 4.0 );
f.Init( 0.0, 0.0 );
f.Multi( &x, &y );
x.Print();
y.Print();
f.Print();
}
void Fraction::Init(float n, float d)
{
numer = n;
denom = d;
}
void Fraction::Multi(Fraction *x, Fraction *y)
{
numer = ( x->numer*y->denom) + (x->denom*y->numer);
denom = ( x->denom*y->denom);
}
void Fraction::Print()
{
cout << "Fraction:" << endl;
cout << " Numerator: " << numer << endl;
cout << " Denominator: " << denom << endl;
}
Stackoverflow отрезал мой код. :/ (Не совсем понимаю, почему. Я новичок на сайте)
В любом случае, что я действительно хотел бы сделать, так это настроить эту программу так, чтобы она могла принимать пользовательские данные о том, какими будут дроби x и y. В своих прошлых заданиях я использовал только команды cin и cout, но теперь понятия не имею, что делать. Как только я это понимаю, я знаю, что могу заставить его правильно уменьшить дроби и правильно отобразить, но я понятия не имею, как заставить его принимать входные данные.
У кого-нибудь есть предложения? (Или еще лучше, если вы можете направить меня на сайт с дополнительной информацией, такой как cplusplus.com, я был бы очень признателен!)