• 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

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

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

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

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

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é

ê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