Structures de contrôle en Python

Par défaut, les instructions Python sont exécutées de manière séquentielle :

instruction1 
instruction2 
...

 

Pour briser cet implacable enchaînement d’instructions, on utilise des structures de contrôle, qui permettent un traitement par blocs (ou séquence) d’instructions, qui peuvent eux-même être traités de manière séquentielle, conditionnelle ou répétitive. (voir les structures algorithmiques)

Ces blocs sont organisés en arborescence, dans une relation parent-enfant, matérialisée par une indentation relative (le bloc « enfant » est indenté d’un « cran » à droite par rapport au bloc « parent ») :

Activité
Sur l’exemple ci-dessous, encadrer, avec des couleurs différentes, les différents blocs de contrôle, et souligner, avec la même couleur, leur instruction de déclaration.
# Programme pour multiplier deux matrices

def mat_prod(X, Y):
    result = []
    for i in range(len(X)):
        l = [0]*len(Y[0])
        for j in range(len(Y[0])):
            for k in range(len(Y)):
                l[j] += X[i][k] * Y[k][j]
        result.append(l)
    return result


def aff_mat(X):
    for r in X:
        print(r)
        
if __name__ == "__main__":
    A = [[12,7,3],
        [4 ,5,6],
        [7 ,8,9]]

    B = [[5,8,1,2],
        [6,7,3,0],
        [4,5,9,1]]
        
    R = mat_prod(A, B)
    aff_mat(R)

 

Voir les structures algorithmiques

 

Laisser un commentaire

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