.

Objectifs

.

Le principal objectif de cet articles est de :

  • Savoir utiliser les boucles for (imbriquées) et la technique du « drapeau » sous Python

.

Les boucles for (imbriquées) et la technique du drapeau

.

Exercice 1 : Répéter l’affichage du contenu d’une liste

Soit une liste L d’entiers (entre 0 et 9, pour des raisons d’esthétique de l’affichage). On demande d’afficher n fois cette liste où n > 0 est un entier donné. Deux cases successives seront séparées d’un espace.

L = [4, 8, 0, 9, 6, 3, 2, 8]
lg = len(L)
n = 6

for i in range (0, n) :
     for j in range (lg) :
          print (L[j], end= " ")
     print ()

.

Exercice 2 : Damier de nombre

On dit que deux entiers a et b ont même parité si a et b sont tous les deux pairs ou bien si a et b sont tous les deux impairs.

Écrire un code qui à partir de deux entiers et calcule la valeur d’une variable memeParite qui vaut True si les deux entiers ont même parité, et False sinon.

a = 15
b = 89

#methode 1
memeParite = (a % 2 == b % 2)
print (memeParite)

#methode 2
memeParite = (a + b) % 2
print (memeParite)

Réaliser un programme qui affiche un damier de forme carrée, de côté de longueur n > 0 et rempli alternativement du nombre 4 et du nombre 2. La case en haut à gauche sera toujours 4.

n = 7

#i : indexe chaque ligne
for i in range (n) :
     #j : indexe chaque colonne de la ligne indexée par i
     for j in range (n) :
          #indices de ligne et de colonne de même parité
          if i % 2 == j % 2 : 
               print (4, end = " ")
          #indices de ligne et de colonne de parités distinctes
          else :
               print (2, end = " ")       
     print ()       

.

Exercice 3 : Alternance de parité

On donne une liste L d’entiers et on demande de créer un booléen alterneParite valant True si les élements de L se suivent en alternant de parité et False sinon.

L = [81, 32, 9, 12]
lg = len(L)
alterneParite = True

for i in range (0, lg-1) :
     if L[i] % 2 == L[i+1] % 2 :
          alterneParite = False
print (alterneParite)

.

Exercice 4 : Suite croissante d’entiers consécutifs

Ecrire un code qui, à partir d’une liste L d’entiers définit une variable booléenne nommée consecutifs qui vaut True si la liste est constituée d’entiers consécutifs croissants et False sinon.

L = [81, 32, 9, 12]
lg = len(L)
print (L)

consecutifs = True

#methode 1
for i in range (1, lg) :
     if L[i] != L[0] + i
          consecutifs = False
print (consecutifs)
print ()

#Alternative (drapeau et comparer un terme et le suivant)
for i in range (lg - 1) :
     if L[i] + 1 != L[i+1] :
          consecutifs = False
print (consecutifs)

.

Exercice 5 : Listes « opposées »

Écrire un code qui partant de deux listes d’entiers L et M crée un booléen sontOpposees valant True si les deux listes sont « opposées » et False sinon. Deux listes sont considérées comme « opposées » si elles ont le même nombre d’éléments et si, à des indices identiques, elles possèdent des éléments opposés (comme -81 et 81).

L = [81, -12, 0, -81, -31]
M = [-81, 12, 0, 81, 31]
n = len(L)
m = len(M)
print (L)
print (M)

sontOpposees = True

if n != m :
     sontOpposees = False
else :
     for i in range (0, n) :
          if L[i] != -M[i] :
               sontOpposees = False
print (sontOpposees)

.

Recevez GRATUITEMENT

20 fiches de révision

2 annales corrigées

un accès au groupe privé

une notification lors de chaque publication d’article de cours

Leave a Reply

Your email address will not be published.