Algorithme de simplification de fractions et gestion de fichiers

InformaticsAlgorithms and Data StructuresMedium

Published:

Exercice 3 (5,25 points)

Une fraction de la forme $\frac{a}{b}$ est dite irréductible lorsqu'on ne peut plus la simplifier.

Mathématiquement, une fraction $\frac{a}{b}$ est irréductible si le $PGCD(a, b) = 1$.

Ainsi, pour rendre une fraction $\frac{a}{b}$ irréductible, on divise le numérateur et le dénominateur de cette fraction par le $PGCD(a, b)$.

Soit "Fraction.dat" un fichier d'enregistrements contenant des fractions représentée chacune par les deux champs suivants :

- Num : un entier représentant le numérateur de la fraction.

- Denom : un entier représentant le dénominateur de la fraction.

On se propose de créer puis d'afficher, un fichier d'enregistrements intitulé "Irreduct.dat" qui devra contenir pour chaque fraction du fichier "Fraction.dat" la fraction irréductible correspondante.

Travail demandé :

1. Ecrire un algorithme d'un module permettant de remplir puis d'afficher le fichier "Irreduct.dat" comme expliqué ci-dessus.

NB :

- Le candidat n'est pas appelé à remplir le fichier "Fraction.dat".

- Les fichiers "Fraction.dat" et "Irreduct.dat" ont la même structure.

- Il est possible d'utiliser la méthode de la division euclidienne pour calculer le PGCD de deux entiers a et b dont le principe se présente comme suit :

* diviser a par b pour obtenir un reste r,

* si $r = 0$, le PGCD est égal à b,

* si $r \neq 0$, refaire la division en remplaçant a par b et b par r jusqu'à obtenir $r = 0$. Dans ce cas le PGCD est égal au dernier reste non nul.

2. Donner une déclaration pour chaque nouveau type utilisé dans la réponse à la question 1.

Animated Video Solution

The first half plays free, the full solution is in the app.

Step by Step Written Solution

1
Step 1

Bonjour ! Aujourd'hui, nous allons résoudre un exercice d'algorithmique sur les fractions irréductibles. L'objectif est de lire des fractions dans un fichier et de générer un nouveau fichier avec leurs formes simplifiées.

Exercice 3 : Fractions Irréductibles

2
Step 2

Avant de coder l'algorithme principal, nous devons définir la structure de nos données. On nous demande de déclarer les types utilisés.

2. Déclaration des types

3
Step 3

Chaque fraction est composée d'un numérateur et d'un dénominateur. Nous allons donc créer un enregistrement nommé Fraction.

$$Type \: Fraction = Enregistrement \\ \quad Num : Entier \\ \quad Denom : Entier \\ Fin \: Fraction$$
4
Step 4

Ensuite, nous définissons un type Fichier pour stocker ces enregistrements.

$$Type \: FichierFrac = Fichier \: de \: Fraction$$
5
Step 5

Maintenant, attaquons la première question. Nous avons besoin d'une fonction pour calculer le Plus Grand Commun Diviseur, le PGCD, en utilisant l'algorithme d'Euclide mentionné dans l'énoncé.

1. Algorithme : Fonction PGCD

6
Step 6

La division euclidienne nous dit que si le reste r est nulle, le PGCD est le diviseur. Sinon, on continue avec le diviseur et le reste.

$$Fonction \: PGCD(a, b : Entier) : Entier \\ début \\ \quad TantQue \: b \neq 0 \: faire \\ \quad \quad r \leftarrow a \: MOD \: b \\ \quad \quad a \leftarrow b \\ \quad \quad b \leftarrow r \\ \quad FinTantQue \\ \quad Retourner \: a \\ Fin$$
7
Step 7

Passons à la procédure principale qui va traiter les fichiers. Appelons-la Traitement.

Procédure de Traitement

The rest of this solution is on Solvi

6 more steps are locked. Watch the full animated, narrated solution for free.

Snap a photo, solve any question like this.

Download on the App Store Get it on Google Play

Free to download · First solutions are on us

100K+Questions solved daily
50K+Students learning
4.8 ★App Store rating

About This Question

Subject
Informatics
Topic
Algorithms and Data Structures
Difficulty
Medium
Question Type
Open Ended

Solve any question in seconds

Snap a photo and AI explains it step by step with voice and animation.

Download on the App Store Get it on Google Play
Solvi
The full solution is in the appFree to download · First solutions are on us
Get