• Aucun résultat trouvé

DS d’Informatique Scientifique Mesures Physiques S'2

N/A
N/A
Protected

Academic year: 2022

Partager "DS d’Informatique Scientifique Mesures Physiques S'2"

Copied!
6
0
0

Texte intégral

(1)

DS d’Informatique Scientifique Mesures Physiques S'2

1h30, sans document hors l’Abrégé Dense Python 3.1, sans calculatrice ou autre système électronique

Faites d’abord tout ce qui est pour vous évident, et revenez ensuite sur les questions qui vous posent problème.

Nom :___________________________ Prénom : ___________________________ Date : __________

Exercice n°1

Définition d’un algorithme

Exercice n°2

Cochez la case Oui ou Non pour indiquer si l’expression est vraie :

Python est un langage orienté objet  Oui  Non Python est un langage interprété dynamique  Oui  Non Python est un langage procédural  Oui  Non Python est un langage machine  Oui  Non Python est un langage typé  Oui  Non

Exercice n°3

Quelle est la méthode permettant d’ajouter un élément à la fin d’une liste ?

Exercice n°4

Quel élément syntaxique permet d’identifier un bloc d’instructions composées en Python ?

(2)

Exercice n°5

Soit la définition des variables :

s = "Joe Student"

sequence = [ "3", "9", 6, 2, "0", 8 ] dept = { 75:"Paris", 91: "Essonne" } pt1 = ( 1, 4)

pt2 = (12, 15) rect = (pt1,pt2)

Que valent les expressions suivantes :

Expression Valeur résultante

s * 2 s[4:]

dept[75]

dept.has_key(1) rect[0][1]

75 in dept

max(dept)

Quel est le type du résultat des expressions suivantes :

Expression Type du résultat

s s[2:5]

s.upper() 3/2

sequence[1]

sequence[1:3]

sequence.index("0") sequence[-1]

34 <= 12 dept dept[75]

(3)

Exercice n°6

Écrire en Python la fonction f: f(x) = 3x² - 2x + 1

Exercice n°7

for i in range(3,11,2) : print(i)

Qu’affichent les instructions ci-dessus ?

Exercice n°8

long = input("Longueur du rectangle:") larg = input("Largeur du rectangle:") print ("Surface du rectangle:", long*larg)

Les instructions ci-dessus provoquent une erreur, pourquoi ? Comment la corriger ?

Exercice n°9

out = input("Nom fichier sortie:") in = input("Nom fichier entrée:") if out == in :

print("Impossible de travailler sur le même fichier.")

Les instructions ci-dessus provoquent systématiquement une erreur de syntaxe, pourquoi ?

Exercice n°10

Écrire les instructions de boucles permettant d’afficher une table de multiplication des nombres de 1 à 9 entre eux. L’affichage se fera simplement par des lignes comme ci-dessous:

1 x 1 = 1 1 x 2 = 2 ...

1 x 9 = 9 2 x 1 = 2 2 x 2 = 4 ...

9 x 9 = 81

(4)

Réponse :

Exercice n°11

Soit une variable globale compteur_appels, contenant un nombre entier et utilisée par ailleurs pour compter combien de fois une fonction est appelée dans un programme.

Écrire une fonction statistiques_appels(), sans paramètre et sans valeur de retour, qui affiche la valeur courante de compteur_appels, puis remet ensuite ce compteur à zéro.

Exercice n°12

Soit une liste :

vals = [ 1, 5, -3, 8, 9, -4, -2, 7 ]

Écrire une boucle qui remplace, directement dans la liste vals, toutes les valeurs négatives par leur carré. Après l’exécution de la boucle, la liste vals devrait donc contenir :

[ 1, 5, 9, 8, 9, 16, 4, 7 ]

Réponse :

Exercice n°13

Soit un dictionnaire qui contient une correspondance entre certains numéros de départements et le nom correspondant :

depart = { 91:"Essonne", 75:"Paris, 18:"Cher", 46:"Lot", 89:"Yonne" }

Écrire une boucle parcourant les clés numéros de département par ordre croissant, et affichant à chaque fois numéro et nom de département.

Note : Il est interdit de coder "en dur" les numéros des départements, il faut utiliser ceux présents dans le dictionnaire.

(5)

Réponse :

Exercice n°14

Écrire une fonction racinespoly2() prenant trois paramètres ab et c, et retournant un tuple qui contient les racines flottantes de l'équation du second degré ax²+bx+c=0. Le tuple retourné sera vide s’il n’y a pas de racine, ou contiendra une ou deux valeurs flottantes.

Exercice n°15

Écrire les instructions Python permettant de lire un fichier texte "apache.log", utilisant des caractères ascii, et d’en afficher uniquement les lignes qui contiennent le texte "cracker".

Exercice n°16

i = 0

while i<100 :

print(i,i**2) j = i+1

Les instructions ci-dessus entraînent une boucle sans fin, pourquoi ?

(6)

Exercice n°17

Dans l'appel de la fonction standard open() qui permet d'ouvrir un fichier, à quoi sert le paramètre

encoding ?

Exercice n°18

Dans les méthodes d’une classe, à quoi correspond le premier paramètre self ?

Exercice n°19

Soit une classe Poly2, utilisée pour stocker les coefficients d’un polynôme du second degré et fournissant les méthodes pour le manipuler.

Quelle méthode de Poly2 est appelée lorsque l’on crée un nouvel objet de la classe Poly2 ?

Exercice n°20

Le message d’erreur suivant s’affiche:

Traceback (most recent call last):

File "<string>", line 1, in <fragment>

builtins.IndexError: list index out of range

Quel genre d’erreur dois-je rechercher dans mon programme ?

Exercice n°21

Quel est l’effet de l’instruction:

if __name__ == "__main__" :

que l’on trouve souvent à la fin des modules ?

Quel est son usage ?

Références

Documents relatifs

Écrire un nombre en utilisant la notation scientifique. Écris le nombre A = 6 430 en notation

Écrire un nombre en utilisant la notation scientifique. Écris le nombre A = 6 430 en notation

E₁ Puce reçoit une première liste de 2019 entiers compris entre 0 et n qu’il doit recopier sur une même colonne puis en face de chaque entier il doit écrire sur une deuxième

E₁ Puce reçoit une première liste de 2019 entiers compris entre 0 et n qu’il doit recopier sur une même colonne puis en face de chaque entier il doit écrire sur une deuxième

4 Écris chaque nombre sous forme décimale puis en notation

4  Écris chaque nombre sous forme décimale puis en notation

Félicitez-vous donc que, dans notre Ecole moderne, sans négliger ni la roue; ni le carburateur ou le démarrage, on is'attarde à démon- ter 'longuement les

Écrire un nombre en utilisant la notation scientifique. Écris le nombre A = 6 430 en notation