public Fracao subtracao(Fracao obj)
        {
            int mmc        = getMmc(this, obj);
            int numerador1 = mmc / this.denominador * this.numerador;
            int numerador2 = mmc / obj.denominador * obj.numerador;

            return(new Fracao(numerador1 - numerador2, mmc));
        }
        public static int getMmc(Fracao obj1, Fracao obj2)
        {
            int num1 = obj1.denominador;
            int num2 = obj2.denominador;
            int resto;

            while (num2 != 0)
            {
                resto = num1 % num2;
                num1  = num2;
                num2  = resto;
            }
            return((obj1.denominador * obj2.denominador) / num1);
        }
Exemple #3
0
        public static void testar()
        {
            List <Fracao> lista = new List <Fracao> ();

            lista.Capacity = 10;
            Fracao soma = new Fracao(0, 1);
            Random rnd  = new Random();

            for (int i = 0; i < 10; i++)
            {
                Fracao obj = new Fracao(rnd.Next(1, 10), rnd.Next(1, 10));
                lista.Add(obj);
            }

            foreach (Fracao obj in lista)
            {
                soma = soma + obj;
                System.Console.WriteLine(obj);
            }
            System.Console.WriteLine("\nSoma: " + soma);
        }
 public bool opMenor(Fracao obj)
 {
     return((this.numerador / this.denominador) < (obj.numerador / obj.denominador));
 }
 public bool opDiferente(Fracao obj)
 {
     return((this.numerador != obj.numerador) || (this.denominador != obj.denominador));
 }
 public bool opIgual(Fracao obj)
 {
     return((this.numerador == obj.numerador) && (this.denominador == obj.denominador));
 }
 public Fracao divisao(Fracao obj)
 {
     return(new Fracao(this.numerador * obj.denominador, this.denominador * obj.numerador));
 }