Suite – Bac pratique – Section informatique- 2009

Bac Info 05-12-25
40 0

Sujet (Algo et programmation - Bac 2009)

Soit Uo un nombre entier naturel de quatre chiffres. On forme a l'aide des quatre chiffres de U0, le plus grand entier nature! Max et le plus petit entier nature! min.

Leur différence (Max - min) donne le nombre U1

On refait le même travail pour U1 et on obtient ainsi une suite. Cette suite est stationnaire c'est-a-dire qu'elle devient constante a partir d'un certain rang.

Ecrire un programme en Python qui calcule et affiche les termes de la suite U jusqu'à ce qu'elle devienne constante. Le premier terme Uo est un entier donne de quatre chiffres. En même temps, les termes calcules de cette suite seront enregistres au fur et a mesure clans un fichier texte suite.txt a raison d'un terme par ligne.

 

 

Solution Algorithmique

Dans cet algorithme, On va utiliser trois fonctions et une procédure :

- la fonction saisie()

- la fonction max_entier ()

- la fonction min_entier ()

- la procédure remplir_fichier_suite ()

 

Algorithme du programme Principal

Déclaration des objets

Objet Type / Nature
u0 entier

La fonction saisir

Cette fonction saisit et retourne un entier positif formé de 4 chiffres .

Déclaration des objets

Objet Type / Nature
n entier

La fonction max_entier

La fonction max_entier(n) prend un nombre entier de quatre chiffres et construit, à partir de ses chiffres, le plus grand entier possible.

Pour cela, elle :

1- extrait les 4 chiffres du nombre n.

2- trie ces chiffres en ordre décroissant (du plus grand au plus petit) à l’aide d’un tri par sélection.

3- recompose un nouveau nombre à partir de ces chiffres triés.

4- retourne ce nombre, qui est donc le plus grand entier formé avec les chiffres de n.

Déclaration des objets

Objet Type / Nature
i entier
j entier
t tableau des entiers
max_indice entier
max_n entier
temp entier

 

La fonction min_entier

La fonction min_entier(n) prend un nombre entier de quatre chiffres et construit, à partir de ses chiffres, le plus petit entier possible.

Pour cela, elle :

1- extrait les 4 chiffres du nombre n.

2- trie ces chiffres en ordre croissant (du plus petit au plus grand) à l’aide d’un tri par sélection.

3- recompose un nouveau nombre à partir de ces chiffres triés.

4- retourne ce nombre, qui est donc le plus petit entier formé avec les chiffres de n.

Déclaration des objets

Objet Type / Nature
i entier
j entier
t tableau des entiers
min_indice entier
min_n entier
temp entier

 

La procédure remplir_fichier_suite

La procédure remplir_fichier_suite(u0) sert à générer la suite définie par :𝑈𝑛+1=max_entier(𝑈𝑛) − min_entier(𝑈𝑛) et à enregistrer tous les termes de cette suite dans un fichier texte.

Plus précisément, cette procédure :

1- ouvre le fichier suite.txt en écriture.

2- écrit le premier terme U₀ dans le fichier.

3- calcule le terme suivant U₁ à l’aide de :

max_entier(u0) : plus grand nombre formé avec les chiffres de U₀

min_entier(u0) : plus petit nombre formé avec les mêmes chiffres

4- continue à calculer et écrire les termes suivants de la suite tant qu’ils sont différents du terme précédent (c’est-à-dire tant que la suite n’est pas stationnaire).

5- s’arrête automatiquement dès que la suite devient constante (Uₙ₊₁ = Uₙ).

6- Ferme le fichier une fois la suite terminée.

Déclaration des objets

Objet Type / Nature
f fichier du nombre.dat
u1 entier

 

Solution en Python

0 commentaire

laisser un commentaire

Veuillez noter s'il vous plaît*

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Passion de robotique

Atelier robotique

Construction des robots

Bras robotique

Maison intelligente

But de ce site web

La robotique éducative joue un rôle important dans l'éducation des enfants et des jeunes en les aidant à acquérir des compétences en science et technologie.
Dans ce cadre notre site web représente une excellente ressource pour les parents, les enseignants et les enfants qui souhaitent découvrir la robotique.

Coordonnées

Zaouiet Kontech-Jemmel-Monastir-Tunisie

+216 92 886 231

medaliprof@gmail.com

Photos des articles

Site robotique réalisé par Mohamed Ali-Prof Info