|
- int Rational::numerator () {
- return n;
- }
-
- int Rational::denominator () {
- return d;
- }
-
- void Rational::print () {
- ::print(n,"/",d,0);
- }
-
- // ggT zum kuerzen
- int Rational::ggT (int a, int b) {
- return (b==0) ? a : ggT(b,a%b);
- }
-
- // Konstruktoren
- Rational::Rational (int num, int denom)
- {
- int t = ggT(num,denom);
- if (t!=0)
- {
- n=num/t;
- d=denom/t;
- }
- else
- {
- n = num;
- d = denom;
- }
- }
-
- Rational::Rational (int num) {
- n=num;
- d=1;
- }
-
- Rational::Rational () {
- n=0;
- d=1;
- }
-
- // Operatoren
- Rational Rational::operator+ (Rational q) {
- return Rational(n*q.d+q.n*d,d*q.d);
- }
-
- Rational Rational::operator- (Rational q) {
- return Rational(n*q.d-q.n*d, d*q.d);
- }
-
- Rational Rational::operator* (Rational q) {
- return Rational(n*q.n, d*q.d);
- }
-
- Rational Rational::operator/ (Rational q) {
- return Rational(n*q.d,d*q.n);
- }
|