summaryrefslogtreecommitdiff
path: root/include/scalaires.h
blob: fcd0b00d2a72ac00072b53101a19851c0d34cb95 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#ifndef __SCALAIRES_H__
#define __SCALAIRES_H__

typedef struct {
	int num;
	unsigned int denom;
} rationnel;

typedef enum typedisplay {
	HEX,
	DEC,
	OCT,
	FLT
} typedisplay;

extern typedisplay display;

rationnel rat_constr_zero(void);	/* renvoie 0 */
rationnel rat_constr(int num, int denom);	/* cree une fraction */
rationnel rat_constr_from_double(double flt);	/* cree une fraction a partir d un double */
void rat_destruct(rationnel rat);	/* destructeur */
double rat_to_double(rationnel rat);	/* obtention du double correspondant a un rationnel */
rationnel rat_addition(rationnel rat1, rationnel rat2);	/* addition */
rationnel rat_soustraction(rationnel rat1, rationnel rat2);	/* soustraction */
rationnel rat_moinsunaire(rationnel rat1);	/* moins unaire */
rationnel rat_multiplication(rationnel rat1, rationnel rat2);	/* multiplication */
rationnel rat_division(rationnel rat, rationnel rat2);	/* division */

#endif