私は、分子と分母として変数を持つクラスRational
を作成する質問と、2つの有理数を追加する関数を作成する質問に取り組んでいます。%演算子を使用している間に二重にエラーが発生しました
これは私が作成したクラスです。
class Rational
{
public:
// n stands for numerator and d stands for denominator
double n,d;
// add stands for addition
void add(Rational r1, Rational r2);
};
そして、これが私の関数である:
void Rational::add(Rational r1, Rational r2)
{
// ar stands for rational number after addition
double ar;
// new object which takes the value after addition
Rational r3;
// formula for numerator after addition
r3.n=(r1.n*r2.d)+(r2.n*r1.d);
// formula for denominator after addition
r3.d=(r1.d*r2.d);
// ratio equals divisor plus quotient multiplied to remainder
ar=(r3.n/r3.d)+((r3.n)%(r3.d))*r3.d;
}
最後の行は、コンパイル時に次のエラーを生成します。
error: invalid operands of types 'double' and 'double' to binary 'operator%'|
私はcppに新しいと私の宿題...助けてください...
あなたが持っている問題を実証するために、本当にそのコードのすべてが必要なわけではありません。 [これを見る](http://ideone.com/YdNM6q) – PaulMcKenzie
@PaulMcKenzie:状況が重要です。試行された最小限のデモンストレーションには、最も重要な側面が含まれていません。 –
割り当てに「ダブル」を使用する必要があるのか、それともあなたの決定だったのかを明確にしてください。通常、「有理数」は、分子と分母が整数であることを意味します。 –