You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
62 lines
1.5 KiB
62 lines
1.5 KiB
|
|
using System;
|
|
namespace TheGameExtreme.model
|
|
{
|
|
public class Fraction
|
|
{
|
|
public int Numerateur;
|
|
public int Denominateur;
|
|
|
|
public Fraction(int numerateur, int denominateur)
|
|
{
|
|
Numerateur = numerateur;
|
|
Denominateur = denominateur;
|
|
}
|
|
|
|
//public int CompareTo(Fraction fraction)
|
|
//{
|
|
// decimal d = (Numerateur / Denominateur) - (fraction.Numerateur / fraction.Denominateur);
|
|
// if (d > 0)
|
|
// {
|
|
// return 1;
|
|
// }
|
|
// else if (d < 0)
|
|
// {
|
|
// return -1;
|
|
// }
|
|
// else
|
|
// {
|
|
// return 0;
|
|
// }
|
|
//}
|
|
|
|
public bool testDiviseurCommun(Fraction fraction)
|
|
{
|
|
if (PGCD(Numerateur, fraction.Numerateur) == Numerateur || PGCD(Denominateur, fraction.Denominateur) == Denominateur)
|
|
{
|
|
return true;
|
|
}
|
|
return false;
|
|
}
|
|
|
|
private int PGCD(int a, int b)
|
|
{
|
|
int temp = a % b;
|
|
if (temp == 0)
|
|
return b;
|
|
return PGCD(b, temp);
|
|
}
|
|
|
|
public decimal Result()
|
|
{
|
|
decimal result = (decimal)Numerateur / (decimal)Denominateur;
|
|
return result;
|
|
}
|
|
|
|
override public string ToString()
|
|
{
|
|
return Numerateur.ToString() + "/" + Denominateur.ToString();
|
|
}
|
|
}
|
|
}
|