summaryrefslogtreecommitdiff
path: root/scalaires.c
diff options
context:
space:
mode:
authorPixel <Pixel>2001-04-28 21:40:25 +0000
committerPixel <Pixel>2001-04-28 21:40:25 +0000
commit3b37a00a4be251f87e543d269489cb7a989425d5 (patch)
tree51aedcb4d1627743d6e240266c58a67cf6ae0d67 /scalaires.c
parentab778d7f896b16f3e6f2b068c2b34d219723002b (diff)
Hop, gros bordel, plein de fichiers ajoutes et supprimes :)
Diffstat (limited to 'scalaires.c')
-rw-r--r--scalaires.c95
1 files changed, 0 insertions, 95 deletions
diff --git a/scalaires.c b/scalaires.c
deleted file mode 100644
index 71a106d..0000000
--- a/scalaires.c
+++ /dev/null
@@ -1,95 +0,0 @@
-/*
- *
- * Operations sur les scalaires ( rationnels )
- *
- */
-
-#include "scalaires.h"
-#include <math.h>
-
-#define PRECISION 1E6
-static int pgcd(int a, int b)
-{
- if (!a)
- return b;
- if (a < b)
- return pgcd(b, a);
- return pgcd(b, a % b);
-}
-
-rationnel rat_constr_zero(void)
-{ /* renvoie 0 */
- rationnel temp;
-
- temp.num = 0;
- temp.denom = 1;
- return temp;
-}
-
-
-rationnel rat_constr(int num, int denom)
-{ /* cree une fraction */
- rationnel temp;
-
- if (denom < 0) {
- denom = -denom;
- num = -num;
- }
-
- temp.num = num / pgcd(num, denom);
- temp.denom = denom / pgcd(num, denom);
- return temp;
-
-}
-
-rationnel rat_constr_from_double(double flt)
-{ /* cree une fraction a partir d un double */
-
- return rat_constr(floor(flt * PRECISION), PRECISION);
-
-
-}
-
-void rat_destruct(rationnel rat)
-{ /* destructeur */
-
-}
-
-double rat_to_double(rationnel rat)
-{ /* obtention du double correspondant a un rationnel */
- return ((double) rat.num / (double) rat.denom);
-}
-
-rationnel rat_addition(rationnel rat1, rationnel rat2)
-{ /* addition */
-
- return rat_constr(rat1.num * rat2.denom + rat2.num * rat1.denom, rat1.denom * rat2.denom);
-
-}
-
-rationnel rat_soustraction(rationnel rat1, rationnel rat2)
-{ /* soustraction */
-
- return rat_constr(rat1.num * rat2.denom - rat2.num * rat1.denom, rat1.denom * rat2.denom);
-
-}
-
-rationnel rat_moinsunaire(rationnel rat1)
-{ /* moins unaire */
-
- return rat_constr(-rat1.num, rat1.denom);
-
-}
-
-rationnel rat_multiplication(rationnel rat1, rationnel rat2)
-{ /* multiplication */
-
- return rat_constr(rat1.num * rat2.num, rat1.denom * rat2.denom);
-
-}
-
-rationnel rat_division(rationnel rat1, rationnel rat2)
-{ /* division */
-
- return rat_constr(rat1.num * rat2.denom, rat1.denom * rat2.num);
-}