• Aucun résultat trouvé

PARCOURS 5 EXERCICE 31 : Typage : Typage

N/A
N/A
Protected

Academic year: 2022

Partager "PARCOURS 5 EXERCICE 31 : Typage : Typage"

Copied!
2
0
0

Texte intégral

(1)

PARCOURS 5

EXERCICE 31 : Typage :

Typage : pour déterminer un type on utilisera l’instruction type() À ce stade, on identifie 4 types distincts :

types Exemples

int : entier relatifs

float : réels

str : chaîne de caractère

bool : booléen

prend les valeurs : vrai(True) ou faux(False)

REMARQUE : le type bool : booléen : il s’agit de la valeur de vérité d’une assertion.

Travailler dans l’éditeur : saisir les scripts suivants, puis les lancer en saisissant différentes valeurs de a et de b, et expliquer les résultats :

n°du script Script à saisir Résultats à expliquer

1

a = input(« Valeur de a : ») b = input(« Valeur de b : ») c = a + b

print(c)

2

a = input(« Valeur de a : ») b = input(« Valeur de b : ») a = int(a)

b = int(b) c = a + b print(c)

a = input(« Valeur de a : ») b = input(« Valeur de b : ») a = float(a)

b = float(b) c = a + b print(c)

3

a = int(input(« Valeur de a : »)) b = int(input(« Valeur de b : »)) c = a + b

print(c)

a = float(input(« Valeur de a : »)) b = float(input(« Valeur de b : »)) c = a + b

print(c)

(2)

REMARQUE :

Python étant un langage à typage dynamique fort, sans précision particulière il type les valeurs d’une façon qui n’est pas toujours l’attendu par l’utilisateur.

Pour plus de sécurité on peut utiliser type() dans une phase de débuggage.

Comme par exemple dans le script n°1, si on ajoute print(type(c)) en fin de script on constate que c’est une chaîne de caractère et pas un entier ou un réel comme on aurait voulu l’obtenir.

Ce typage systématique n’est pas un frein.

En effet :

a = 2 #type int b = 3.14 # type float c = a*b # type float On obtient :

>>> 6.28.

Python fait du transtypage.

EXERCICE 32 :

Laurent Sartre BY-NC - SA

On considère un entier positif N à huit chiffres susceptibles de représenter un numéro de carte bancaire.

Le dernier chiffre, appelé le chiffre de contrôle, permet de vérifier que le numéro de carte bancaire a été convenablement communiqué.

Le principe du contrôle est le suivant :

➢ Ajouter les chiffres de rangs pairs de N

➢ Ajouter les chiffres de rangs impairs de N et multiplier le résultat obtenu par 2.

➢ Ajouter ces deux nombres. Si le dernier chiffre du résultat obtenu est un zéro, le numéro est correct.

Écrire un fonction chiffre_controle(code) qui renvoie True si le code est valide et False s’il ne l’est pas.

Il pourra être intéressant d’utiliser : range(a,b,n) où a, b et n sont des entiers : répète de i = a à i = b – 1 en allant de n en n.

Un autre exemple : Saisir : b = (2<4) if b :

 a = 3*b + 5*(1 – b)

Quelle réponse obtenez vous ? ……….

Quel est le type de b ? ………..

Expliquer la réponse renvoyée par Python :

………..

Références

Documents relatifs

Chapter 7: We define Lineal , an explicitly typed algebraic λ-calculus based on λ lin and Vectorial , with the subject reduction and strong normalisation properties.. This

les messages sont des structures : le routeur n’accepte pas en entr´ee de messages.. tels que des entiers ou des chaˆınes de caract`eres. Notre dernier exemple reprend

Dans un second temps, nous proposons un syst`eme de typage plus souple permettant de manipuler des collections h´et´erog`enes, c’est ` a dire des collections contenant des valeurs

En Python, les entiers sont aussi grands que l’on veut : si nécessaire, Python prend le nombre de mots nécessaires pour coder l’entier.. Typage : type plain integer, « int

Rapporteurs : Gilles Dowek Professeur, ´ Ecole Polytechnique, Palaiseau, France Herman Geuvers Professeur, Radboud Universiteit, Nijmegen, Pays-Bas Examinateurs : Adam

Spécier partiellement un programme Éviter de programmes absurdes ( 1 + true ) Éviter la violation de la mémoire. Ne pas écrire un programme ayant des comportements indénis Ne

[r]

Mais les deux fonctions sont une instance d'une même fonction identité qui se comporte de la même façon