Aller au contenu

TP 1 - Introduction à l'algorithmique, présentation de python et exemples

Les parties en italique sont des approfondissements qui pourraient être utiles.

Quelques symboles

Symbole Signification
+ Addition 1+2==3
- Soustraction 1-2==-1
* Multiplication 2*3==6
** Puissance 2**3==8
/ Division 6/2==3
// Quotient division euclidienne 7//2==3
% Reste division euclidienne 7%2==1

Les chiffres à virgule s'écrivent avec un point en python. Ex: 1.005

Variables et affichage

Un algorithme python s'exécute dans l'ordre(1ère ligne->dernière ligne), il faut donc initialiser les variables avant de les utiliser.

a="t"
b=2
c=3
print(a,c,b)
Renvoie
t 3 2

Python est sensible à la casse, donc Variable != variable.

Le point-virgule

En python, le point-virgule ; n'est pas obligatoire à la fin d'une ligne. Il est possible de l'utiliser pour séparer plusieurs instructions sur une même ligne, mais ce n'est vraiment pas recommandé (PEP-0008: "Compound statements (multiple statements on the same line) are generally discouraged").

a=1; b=2; print(a+b)
Renvoie
3

Dans certains cas, l'utilisation du point-virgule peut même donner des erreurs, comme pour les instructions if, for, while et def.

print('Hi') ; for i in range (4): print ('Hello')
Renvoie
SyntaxError: invalid syntax

Il est donc préférable de ne pas l'utiliser.

Premières fonctions

abs(x) int(x) max(a,b,c,...) min(a,b,c,...) round(x, n)
Valeur absolue abs(-3)==3 Supprime la partie fractionnaire int(-3.7)==-3 Maximum max(2.5,-3,6)==6 Minimum min(2.5,-3,6)==-3 Arrondi à 10^(-n) près round(3.577,1)==3.6

Importer une bibliothèque

Une bibliothèque est un ensemble de fonctions et variables prédéfinies. Il faut toujours importer la bibliothèque avant d'utiliser une fonction ou variable de cette bibliothèque. Le plus souvent, il est préférable d'importer les bibliothèques au début du fichier, afin quelles soient disponibles dans tout le fichier.

Pour importer une bibliothèque, par exemple la bibliothèque math:

import math
print(math.pi, math.e)
Renvoie
3.141592653589793 7.38905609893065

Pour importer une fonction ou variable d'une bibliothèque:

from math import pi
print(pi)
Renvoie
3.141592653589793

Attention, en important de cette façon, on n'importe que pi, pas toute la bibliothèque math. Donc on ne peut pas écrire math.pi par exemple:

from math import pi
print(pi)
print(math.pi)
Renvoie
3.141592653589793
    print(math.pi)
        ^^^^
NameError: name 'math' is not defined # (1)!
  1. Erreur car on a importé seulement pi, pas toute la bibliothèque math.

Pour importer toutes les fonctions et variables d'une bibliothèque:

from math import *
print(pi, exp(2))
Renvoie
3.141592653589793 7.38905609893065

Il est possible de renommer une bibliothèque (on appelle ce nouveau nom un alias), on l'utilisera surtout pour les bibliothèques numpy et matplotlib.pyplot:

import math as m
print(m.pi)

import numpy as np
import matplotlib.pyplot as plt

Première bibliothèque: math

Il faut importer la bibliothèque math avant d'utiliser les fonctions ou variables de cette bibliothèque.

math.pi math.floor(x) math.sqrt(x)
π ⌊x⌋ math.floor(-3.7)==-4 √x math.sqrt(9)==3

math.pi n'est pas une fonction mais une variable, il ne faut donc pas écrire math.pi() mais math.pi.

Bibliothèque fractions

Permet de manipuler des fractions. Toutes les opérations possibles avec les entiers et les flottants sont aussi possibles avec les fractions. Les fractions sont toujours automatiquement simplifiées.

Ne pas écrire from Fraction import *, mais from fractions import *.

Pour mieux comprendre

Le nom de la librairie est fractions et une classe (un "outil") de cette bibliothèque est Fraction. Un import est de la forme from fichier import outil ou fichier est le nom de la bibliothèque et outil est le nom de la classe, fonction ou variable qu'on souhaite utiliser.

from fractions import *
numerateur=3
denominateur=12
a=Fraction(numerateur, denominateur)
print(a.numerator)
print(a.denominator)
print(a)
b=Fraction(2, 3)
print(a*b, a/b, a+b, a-b, a//b, a**b)
Renvoie
1
4  
1/4
1/6 3/8 11/12 -5/12 0 0.3968502629920499

Symboles de tests

Symbole Signification
== Égal
< Strictement inférieur
> Strictement supérieur
!= N'est pas égal
<= Inférieur ou égal
>= Supérieur ou égal

Si le test est vrai (Ex: 6==2*3), alors il renvoie True, sinon False.