Aller au contenu principal
BacInfo

Ch. 00 · Leçon 1

Fiche récapitulative : Algorithme et Python

30 minanalyse · python

Ce que vous saurez faire

  • Mémoriser la structure générale d'un algorithme et sa traduction en Python
  • Identifier les types de données de base et leurs opérations
  • Utiliser les structures de contrôle conditionnelles et itératives
  • Connaître les fonctions prédéfinies sur les types numériques, chaînes et caractères

id: 33-870-fiche-recapitulative-algorithme-python slug: 33-870-fiche-recapitulative-algorithme-python titre: 'Fiche récapitulative : Algorithme et Python' chapitre: 0 chapitre_titre: Fiche de synthèse lecon: 1 niveau: 4eme-sci ordre: 1 prerequis: [] duree_estimee_min: 30 mots_cles:

  • algorithme
  • python
  • pascal
  • structures
  • fonctions
  • types
  • operations langages:
  • analyse
  • python objectifs:
  • Mémoriser la structure générale d'un algorithme et sa traduction en Python
  • Identifier les types de données de base et leurs opérations
  • Utiliser les structures de contrôle conditionnelles et itératives
  • Connaître les fonctions prédéfinies sur les types numériques, chaînes et caractères status: published source_pdf: 33_870.pdf source_pages:
  • 1 kind: fiche

Cette fiche synthétise les éléments essentiels de l'algorithmique et de leur traduction en Python : structure générale d'un programme, types, opérations, structures de contrôle et fonctions prédéfinies.

Résolution d'un problème

Tout problème informatique se décompose en trois phases : Entrées → Traitements → Sorties.

Squelette d'un algorithme

ALGORITHME Nom
DEBUT
    Les entrées
    Traitements
    Les sorties
FIN
Déclaration des objets
ObjetType/nature
......

1. Les opérations simples

a. L'opération d'entrée

Ecrire("Donner ch") , Lire(ch)
Ecrire("Donner entier=") , Lire(n)
Ecrire("Donner réel=") , Lire(x)

b. L'opération de sortie

Ecrire("Message", x, x+10)

c. L'opération d'affectation

x ← 15
x ← x+1
z ← "Ok"

2. Les types de données

TypePythonExemple
Entierint15
Réelfloat12.3
BooléenboolTrue / False
Caractère----"A" / 'A'
Chaînestr"Ok" / 'Ok'

Tableau (array) d'entiers, réels, booléens

from numpy import *
a = array([4, 3, 6])
T = array([float()] * n)
T[0] = 13.5
a[0]; a[2]

3. Opérations de base

  • Opérateurs arithmétiques : +, -, *, /, %, //
  • Opérateurs de comparaison : ==, !=, >, >=, <, <=
  • Opérateurs logiques : or, and, not
OpérationSymboleExemple
Div//7 // 2 = 3
Mod%7 % 2 = 1

4. Les structures de contrôle conditionnelles

Conditionnelle simple

Initialisation
Si Condition Alors
    Traitement1
Sinon
    Traitement2
FinSi

Conditionnelle généralisée

Initialisation
Si Condition 1 Alors
    Traitement 1
Sinon Si Condition 2 Alors
    Traitement 2
Sinon ………………
Sinon Si Condition N-1 Alors
    Traitement N-1
Sinon
    Traitement N
FinSi

5. Les structures de contrôle itératives

a. Structure itérative complète

Initialisation
Pour compteur de Début à Fin (pas) Faire
    Traitement
Fin Pour

Correspondance des intervalles

AlgorithmePython
x ∈ [0..5]x in range(6)
x ∈ [2..8]x in range(2,9) ou 2 <= x <= 8

b. Structure itérative à condition d'arrêt

1ère formulation : Répéter … Jusqu'à

Répéter
    Traitement
Jusqu'à condition(s)

2ème formulation : Tant que … Faire

Initialisation
Tant que Condition(s) Faire
    Traitement
Fin Tantque

6. Les fonctions sur le type numérique

AlgorithmePythonRôleExemple
Arrondi(x)round(x)Retourne l'entier le plus proche de la valeur xround(4.3)=4 ; round(4.5)=5
racineCarré(x)sqrt(x)Retourne la racine carrée d'un nombre x positifsqrt(2)=1.4142
Aléa(vi,vf)randint(vi,vf)Retourne un entier aléatoire de l'intervalle [vi, vf]Aléa(1,10)
Ent(x)trunc(x)Retourne la partie entière de xtrunc(3.5)
abs(x)abs(x)Retourne la valeur absolue de xabs(-5)=5

7. Les fonctions sur le type chaîne de caractères

AlgorithmePythonRôleExemple
long(ch)len(ch)Retourne le nombre de caractères de la chaîne chlen('Bac')=3
pos(ch1,ch2)ch2.find(ch1)Retourne la première position de ch1 dans ch2 (-1 si absent)'Bac'.find('ac')1
convch(x)str(x)Retourne la conversion d'un nombre x en chaînestr(10)'10'
Estnum(ch)ch.isdigit() / ch.isdecimal()Retourne Vrai si la chaîne ch est convertible en nombre, Faux sinon'123'.isdigit()True
Valeur(ch)int(ch) / float(ch)Retourne la conversion d'une chaîne ch en valeur numérique (si possible)int('4') ou float('4')
sous_chaîne(ch,d,f)ch[d:f]Retourne une partie de ch de la position d à f (f exclue)ch='bac' ; ch[1:3]'ac'
Effacer(ch,d,f)ch = ch[0:d] + ch[f:len(ch)]Efface les caractères de la position d à f (f exclue)ch='bonjour''bjour'
majus(ch)ch.upper()Convertit la chaîne ch en majuscules'bac'.upper()'BAC'

Sous-chaîne : notation des tranches en Python

  • ch[:] → chaîne entière
  • ch[4:] → de l'index 4 jusqu'au dernier index
  • ch[:8] → de l'index 0 jusqu'à l'index 7
  • ch[2:7] → de l'index 2 jusqu'à l'index 6
  • ch[4:-1] → de l'index 4 à l'avant-dernier index

Opérations sur les chaînes

AlgorithmePython
'A' + 'B' donne 'AB''A' + 'B'
3 * 'A' donne 'AAA'3 * 'A'

Parcours d'une chaîne

Pour c de 0 à long(ch)-1 (pas=1) Faire
    Ecrire(ch[c])

8. Les fonctions sur le type caractère

AlgorithmePythonRôleExemple
ord(c)ord(c)Retourne le code ASCII du caractère cord("A")=65
chr(d)chr(d)Retourne le caractère dont le code ASCII est dchr(65)='A'

9. Appartenance à un ensemble

Caractère dans une plage

x ∈ ["A".."Z"]

Valeur dans une liste

x ∈ [1, 5, 6]
x ∈ ["a","e","i","o","y","u"]
Vérification des acquis

Quiz : correspondance algorithme ↔ Python

Vérifiez que vous savez passer rapidement d'une notation à l'autre.

Quiz (5 questions)

1

L'instruction `Ecrire(x)` en algorithme se traduit en Python par :

2

L'instruction algorithmique `Si C Alors A FinSi` devient en Python :

3

`Pour i de 1 à 5 Faire Ecrire(i) FinPour` se traduit par :

4

L'affectation `x ← 5` en algorithme devient :

5

Pour créer un tableau de 5 zéros en Python :

Bravo d'être arrivé jusqu'ici. Marquez la leçon terminée pour ancrer le progrès.