-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.c
114 lines (68 loc) · 1.85 KB
/
main.c
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
#include<stdio.h>
#include<stdlib.h>
typedef struct Rationnel {
int num;
int den;
}Rationnel;
Rationnel saisieRat(){
Rationnel Rat;
int i;
printf("Entrez le numerateur\n");
scanf("%d",&Rat.num);
printf("Entrez le denominateur\n");
scanf("%d",&Rat.den);
return Rat;
}
// Addition
Rationnel somme(Rationnel nb1, Rationnel nb2){
Rationnel somme;
if(nb1.den == nb2.den){
somme.num = nb1.num + nb2.num;
somme.den = nb1.den;
}else
{
somme.num = (nb1.num*nb2.den)+(nb2.num*nb1.den);
somme.den = (nb1.den*nb2.den);
}
return somme;
}
//multiplication
Rationnel multip(Rationnel nb1, Rationnel nb2){
Rationnel multip;
multip.num = nb1.num * nb2.num;
multip.den = nb1.den * nb2.den;
return multip;
}
//Affichage
void affichage(Rationnel somme,Rationnel multip){
int i;
for(i=2; i<=10; i++){
while(somme.num%i == 0 && somme.den%i == 0){
somme.num = somme.num/i;
somme.den = somme.den/i;
}
while(multip.num%i == 0 && multip.den%i == 0){
multip.num = multip.num/i;
multip.den = multip.den/i;
}
}
if(somme.num == 1 && somme.den == 1 || somme.num != 1 && somme.den == 1)
printf("La somme de ses 2 nombres rationnels est : %d\n\n",somme.num);
else
printf("La somme de ses 2 nombres rationnels est : %d/%d\n\n",somme.num,somme.den);
if(multip.num == 1 && multip.den == 1 )
printf("La multiplication de ces 2 nombres rationnel est : %d\n\n",multip.num);
else
printf("La multiplication de ces 2 nombres rationnel est : %d/%d\n\n",multip.num,multip.den);
}
int main(){
Rationnel nb1, nb2, som, mul;
printf("** Saisie du premier nombre rationnel**\n");
nb1 = saisieRat();
printf("** Saisie du deuxieme nombre rationnel**\n");
nb2 = saisieRat();
som = somme(nb1,nb2);
mul = multip(nb1,nb2);
//multipl = multipl(nb1,nb2);
affichage(som,mul);
}