• Aucun résultat trouvé

II Exercice 5 : la fonction EstUnChiffre()

N/A
N/A
Protected

Academic year: 2022

Partager "II Exercice 5 : la fonction EstUnChiffre()"

Copied!
2
0
0

Texte intégral

(1)

BTSSIO:TD 5 Correction 2015-2016

I Exercice 1 : la fonction trouve()

Écrire une petite fonctiontrouve()qui fera exactement le contraire de ce que fait l’opérateur d’indexage (c’est-à-dire les crochets [ ]). Au lieu de partir d’un index donné pour retrouver le caractère correspondant, cette fonction devra retrouver l’index correspondant à un caractère donné.

Attention, il faut penser à tous les cas possibles ! Il faut notamment veiller à ce que la fonction renvoie une valeur particulière (par exemple la valeur −1) si le caractère recherché n’existe pas dans la chaîne traitée.

Une réponse : N˚

a b c d e f g h - - - - - 1 2 3

def trouve(chaine,car) : i=0

while (i<len(chaine)) and (chaine[i] !=car) : i=i+1

if i==len(chaine) : index=−1 else :

index=i return index

#

#—————-Fin fonction——————————————

#

#—————-Début programme principal ——————

#

mot=input("Saisir un mot : ")

lettre=input("De quelle lettre rechercher le rang ? ")

print("Le rang est ",trouve(mot,lettre)) #fonction appelée à la ligne 3

On a rempli le tableau d’avancement du programme avec le mot vodka et la lettrek dont il faut trouver le rang :

N˚de ligne 1 2 3

N˚ligne (fonction) a b c b c b c b d f g h

mot vodka

lettre k

i 0 1 2 3

conditionwhile OK OK OK OK

condition if OK OK

index 3

affichage 3

• • •

II Exercice 5 : la fonction EstUnChiffre()

Écrivez une fonction EstUnChiffre() qui renvoie « vrai », si l’argument transmis est un chiffre, et « faux

» sinon. Tester ainsi tous les caractères d’une chaîne en parcourant celle-ci à l’aide d’une boucle for.

Une réponse :

My Maths Space 1 sur 2

(2)

BTSSIO:TD 5 Correction 2015-2016

a b c d - - - - - 1 2 3 4

def EstUnChiffre(car) : if ’0’ <= car <= ’9’ :

return True else :

return False

#

#—————-Fin fonction——————————————

#

#—————-Début programme principal ——————

#

c=input("Chiffres dans le mot suivant ? ") for r in range(0,len(c)) :

if EstUnChiffre(c[r])==True : # fonction appelée à la ligne 3 print("Il y a un chiffre en position ",r+1)

Tableau d’avancement : N˚de ligne

N˚ligne (fonction) test fonction valeur fonction

c ab1dK35s

r condition test

affichage

III Exercice 6 palindrome

1 2 3 4 5 6 7 8 9 10

mot=input("palindrome ? ") compt=0

mil=len(mot)//2 for r in range(0,mil) :

if mot[r]==mot[len(mot)-1-r] : compt=compt+1

if compt==len(mot)//2 : print("YES") else :

print("NO")

My Maths Space 2 sur 2

Références

Documents relatifs

Il faut comparer les ordonnées de deux points de même abscisse, l’un sur C f , l’autre sur (D)... En discutant suivant les valeurs du réel m, trouver graphiquement le nombre

Il faut donc faire défiler le message dans buffer, c'est à dire copier message dans buffer à partir d'une position donnée, afficher son contenu pendant un instant donné

Votre travail : Ajouter des instructions Input en haut du programme avant la boucle For( pour fixer les deux valeurs d’attente Wait à utiliser. Venez alors faire

- Ecrire une fonction récursive qui calcule le PGCD de deux entiers positifs. On suppose qu’on ne peut effectuer que

être couplé à Un compteur Un disjoncteur divisionnaire Une prise de terre 2.. Un disjoncteur différentiel

être couplé à Un compteur Un disjoncteur divisionnaire Une prise de terre 2.. Un disjoncteur différentiel

être couplé à Un compteur Un disjoncteur divisionnaire Une prise de terre.. Un disjoncteur divisionnaire sert

Conformément à l’article 51 de la Loi sur l'accès, nous vous informons que vous pouvez, en vertu de la section III du chapitre IV de cette loi (article 135 et suivants), faire