salut,
l'enoncé de mon probleme est le suivant :
Les rationnels peuvent être vus comme des couples d’entiers, la fraction 2/5 par exemple est
représentée par le couple (2,5).
Pour manipuler les rationnels il faut définir le type Rationnel, et implanter leur arithmétique
(addition, multiplication, ..).
1- Définir le type Rationnel.
2- Ecrire une fonction void PrintRat (Rationnel R) qui permet d’afficher un rationnel.
3- Ecrire une fonction void SetRat (Rationnel *R) qui permet de saisir un rationnel.
4- Ecrire une fonction Rationnel AddRat(Rationnel R1 , Rationnel R2) qui additionne deux
rationnels
5- Ecrire une fonction Rationnel ProdRat(Rationnel R1, Rationnel R2) qui calcule le produit de
deux rationnels
6- Ecrire une fonction Rationnel QuotRat(Rationnel R1, Rationnel R2) qui calcule le quotient de
deux rationnels
7- Ecrire une fonction Rationnel RedtRat(Rationnel R) qui permet la réduction, sous forme
irréductible, d’un rationnel exemple 6/8 3/4 :
8- Ecrire une fonction AddTabRat(Rationnel tab[], int n) qui permet d’additionner un tableau de n rationnels.
ma solution est :
je n'arrive pas a compliter 7 et 8
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 #include<stdio.h> #include<conio.h> typedef struct { int n1; int n2; }Rationnel; void PrintRat (Rationnel R) {printf("l'entier 1 est %d",R.n1); printf("l'entier 2 est %d",R.n2); } void SetRat (Rationnel *R) { printf(" donner le premier entier :"); scanf("%d",&R->n1); printf("donner le deuxiemme entier :"); scanf("%d",&R->n2); } Rationnel AddRat(Rationnel R1,Rationnel R2) {Rationnel R3; R3.n1=R1.n1+R2.n1; R3.n2=R1.n2+R2.n2; return R3; } Rationnel ProdRat(Rationnel R1,Rationnel R2) { Rationnel R3; R3.n1=R1.n1*R2.n1; R3.n2=R1.n2*R2.n2; return R3; } Rationnel QuotRat(Rationnel R1,Rationnel R2) { Rationnel R3; if(R2.n1!=0) R3.n1=R1.n1/R2.n1; else printf("ereur"); if(R2.n2!=0) R3.n2=R1.n2/R2.n2; else printf("ereur"); return R3; } void main() { Rationnel K,K1,K2; SetRat(&K); PrintRat(K); K=AddRat(K1,K2); printf("oui"); K=ProdRat(K1,K2); K=QuotRat(K1,K2); getch(); }
pouriez vous m'aidez a le compliter
et coriger ce code
merci d'avance
Partager