Numérique et sciences informatiques
Épreuve de contrôle continu
Représentation des données : types de valeurs de base
Quel est l’entier positif codé en base $2$ sur $8$ bits par le code $0010\ 1010$ ?
Quelle est la valeur affichée à l’exécution du programme Python suivant ?
Quel est l’entier relatif codé en complément à $2$ sur un octet par le code $1111\ 1111$ ?
Que peut-on dire sur ce programme Python de calcul sur les nombres flottants ?
À la fin de l’exécution, la variable $x$ vaut $-0.000001$ |
L’exécution peut ne pas s’arrêter, si la variable $x$ n’est jamais égale exactement à $0.0$ |
À la fin de l’exécution, la variable $x$ vaut $0.000001$ |
L’exécution s’arrête sur une erreur FloatingPointError |
Si $\text{A}$ et $\text{B}$ sont des variables booléennes, quelle est l’expression booléenne équivalente à $(\text{not\ A) \text{or B}}$ ?
$\text{(A and B)}$ $\text{or (not A or B)}$ $\text{or (not A or not B})$ |
$\text{(A and B)}$ $\text{or (not A or B)}$ |
$\text{(not A or B)}$ $\text{or (not A or not B)}$ |
$\text{(A or B)}$ $\text{or (not A or not B)}$ |
Quelle est l’affirmation vraie concernant le codage UTF-8 des caractères ?
Le codage UTF-8 est sur $8$ bits |
Le codage UTF-8 est sur $8$ octets |
Le codage UTF-8 est sur $7$ bits |
Le codage UTF-8 est sur $1$ à $4$ octets |
Représentation des données : types construits
Avec la définition de fonction $\text{f}$ suivante en Python, quelle est la valeur retournée par l’appel $\text{f}(42, 21)$ ?
$(21, 21)$ |
$(42, 21)$ |
$(21, 42)$ |
$(42, 42)$ |
Avec la variable
alphabet définie par l’affectation suivante, quelle est l’expression Python permettant d’accéder à la lettre « E » ?
alphabet . E |
alphabet['E'] |
alphabet[5] |
alphabet[4] |
Dans la définition suivante de la fonction
somme en Python, quelle est l’instruction à ajouter pour que la valeur retournée par l’appel
somme([10,11,12,13,14]) soit $60$ ?
for i in range (len(tab)):
s = s + tab[i] |
s = tab[i] |
tab[i] = tab[i] + s |
s = s + i |
Quel est le résultat de l’évaluation de l’expression Python suivante ?
[n * n for n in range (10)]
[0, 1, 4, 9, 16, 25, 36, 49, 64, 81, 100] |
[0, 2, 4, 8, 16, 32, 64, 128, 256, 512] |
[0, 1, 4, 9, 16, 25, 36, 49, 64, 81] |
[0, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024] |
Comment peut-on accéder à la valeur associée à une clé dans un dictionnaire ?
On ne peut pas accéder à une valeur contenue dans un dictionnaire à partir d’une clé |
Il faut d’abord déchiffrer la clé pour accéder à un dictionnaire |
Il faut parcourir le dictionnaire avec une boucle à la recherche de la clé |
On peut y accéder directement à partir de la clé |
Quelle est la valeur affichée à l’exécution du programme Python suivant ?
ports = {'http' : 80, 'imap' : 142, 'smtp' : 25}
21 |
Key not found |
{'ftp' : 21} |
3 |
Traitement de données en tables
Quelle expression Python permet d’accéder au numéro de téléphone de Tournesol, sachant que le répertoire a été défini par l’affectation suivante :
repertoire = [{'nom':'Dupont', 'tel':'5234}, {'nom':'Tournesol', 'tel':'5248'}, {'nom':'Dupont', 'tel':'3452'}]
repertoire ['Tournesol'] |
repertoire [1] ['tel'] |
repertoire ['tel'] [1] |
repertoire ['Tournesol'] ['tel'] |
Quelle est l’expression manquante dans le programme Python suivant, pour que son exécution affiche le numéro de Dupond ?
repertoire = [{'nom':'Dupont', 'tel':'5234'},
{'nom':'Tournesol', 'tel':'5248'}, {'nom':'Dupond', 'tel':'3452'}]
for i in range(len(repertoire)):
print(repertoire[i]['tel'])
repertoire['nom'] == 'Dupond' |
repertoire[i]['nom'] == 'Dupond' |
repertoire[i] == 'Dupond' |
repertoire ['Tournesol'] ['tel'] |
Laquelle de ces listes de chaînes de caractères est triée en ordre croissant ?
['Chat', 'Cochon', 'Cheval', 'Chien'] |
['Cochon', 'Chat', 'Cheval', 'Chien'] |
['Cheval', 'Chien', 'Chat', 'Cochon'] |
['Chat', 'Cheval', 'Chien', 'Cochon'] |
Laquelle de ces listes de chaînes de caractères est triée en ordre croissant ?
['12', '142', '21', '8'] |
['8', '12', '21', '142'] |
['8', '12', '142', '21'] |
['12', '21', '8', '142'] |
Quelle est la valeur de la variable image après exécution du programme Python suivant :
image = [[0, 0, 0, 0],[0, 0, 0, 0],[0, 0, 0, 0],[0, 0, 0, 0]]
[[0, 0, 0, 1], [0, 0, 0, 1], [0, 0, 0, 1], [0, 0, 0, 1]] |
[[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [1, 1, 1, 1]] |
[[0, 0, 0, 1], [0, 0, 1, 1], [0, 1, 1, 1], [1, 1, 1, 1]] |
[[0, 0, 0, 1], [0, 0, 1, 0], [0, 1, 0, 0], [1, 0, 0, 0]] |
Quelle est la valeur de la variable
table après exécution du programme Python suivant :
table = [12, 43, 6, 22, 37]
for i in range(len(table) - 1):
table[i],table[i+1] = table[i+1],table[i]
[6, 12, 22, 37, 43] |
[12, 6, 22, 37, 43] |
[43, 12, 22, 37, 6] |
[43, 37, 22, 12, 6] |
Interactions entre l'homme et la machine sur le Web
Parmi les balises HTML ci-dessous, quelle est celle qui permet à l’utilisateur de saisir son nom dans un formulaire en respectant la norme HTML ?
<input type="text"/> |
<input type="name"/> |
<select/> |
<form/> |
Parmi les propriétés suivantes d'une balise
<button> dans une page HTML, laquelle doit être rédigée en langage JavaScript ?
La propriété name |
La propriété onclick |
La propriété type |
La propriété id |
Quel est le nom de l’événement généré lorsque l’utilisateur clique sur un bouton de type
button dans une page HTML ?
submit |
click |
mouse |
action |
Lors de la consultation d’une page HTML, contenant un bouton auquel est associée la fonction suivante, que se passe-t-il quand on clique sur ce bouton ?
this.style.color = "blue"
Le pointeur de la souris devient bleu quand il arrive sur le bouton |
Le texte de la page passe en bleu |
Le texte du bouton est changé et affiche maintenant le mot "bleu" |
Le texte du bouton passe en bleu |
Quelle est la machine qui va exécuter un programme JavaScript inclus dans une page HTML ?
Le serveur web sur lequel est stockée la page HTML |
La machine de l'utilisateur ou du serveur, selon la disponibilité de chacune |
La machine de l’utilisateur sur laquelle s'exécute le navigateur web |
La machine de l'utilisateur ou du serveur, suivant la confidentialité des données manipulées |
Quelle méthode d'envoi des paramètres est-il préférable d'utiliser, pour un formulaire d’une page web, destiné à demander à l’utilisateur un mot de passe pour se connecter (le protocole utilisé est HTTPS) ?
La méthode PASSWORD |
La méthode CRYPT |
La méthode GET |
La méthode POST |
Architectures matérielles et systèmes d'exploitation
Quel est le rôle de l'unité arithmétique et logique dans un processeur ?
Effectuer les calculs |
Réaliser les branchements |
Gérer le contrôle interne du processeur |
Définir la base des opérations arithmétiques (binaire, octale, hexadécimale) |
Dans un réseau informatique, que peut-on dire de la transmission de données par paquets ?
Cela nécessite la réservation d’un chemin entre l’émetteur et le récepteur |
Cela garantit que toutes les données empruntent le même chemin |
Cela empêche l’interception des données transmises |
Cela assure une utilisation efficace des liens de connexion |
Quelle est l’utilité de la commande
ping dans un réseau informatique ?
Obtenir la route suivie par un paquet dans le réseau |
Tester si la connexion peut être établie avec une machine distante |
Mesurer les performances d'une machine distante |
Établir un réseau privé virtuel |
Quel est l'effet de la commande
shell suivante?
% cd ..
Changer le répertoire courant vers le répertoire supérieur |
Copier le contenu du répertoire courant dans un répertoire caché |
Éjecter le CD |
Supprimer le répertoire courant |
Que peut-on dire du système de fichiers, suite à l’exécution des commandes suivantes ?
entier.py flottant.py readme.md
Le répertoire foo contient le résultat de l’exécution des deux fichiers entier.py et flottant.py |
L’utilisateur foo est propriétaire des fichiers entier. py et flottant.py |
Le répertoire foo contient deux fichiers d'extension .py |
Les fichiers entier.py, flottant.py, et foo ont été déplacés dans le répertoire de l’utilisateur |
Parmi les dispositifs d’entrée et de sortie suivants, lequel est uniquement un capteur ?
Le thermomètre |
L’écran tactile |
La diode |
Le moteur pas à pas |
Langages et programmation
Dans le programme JavaScript suivant, quelle est la notation qui délimite le bloc d'instructions exécuté à chaque passage dans la boucle
while ?
Les accolades |
Les instructions qui suivent le mot clé while |
Les instructions qui sont indentées de $4$ caractères |
Les parenthèses |
La fonction suivante calcule la racine carrée du double d’un nombre flottant.
Quelle est la précondition sur les arguments de cette fonction ?
2 * x > 0 |
x < 0 |
sqrt(x) >= 0 |
x >= 0 |
Avec la définition de fonction
capital-double suivante, que peut-on toujours affirmer à propos du résultat $n$ retourné par la fonction ?
def capital-double (capital, interet):
while montant <= 2 * capital:
montant = montant + interet
n = capital / interet |
capital + n * interet > 2 * capital |
n = 2 * capital / interet |
capital * n * interet > 2 * capital |
Le programme Python suivant ne calcule pas toujours correctement le résultat de $x^y$. Parmi les tests suivants, lequel va permettre de détecter l’erreur ?
puissance(2,1) |
puissance(2,0) |
puissance(2,2) |
puissance(2,10) |
On a écrit une fonction qui prend en paramètre une liste non vide et qui renvoie son plus grand élément. Combien de tests faudrait-il écrire pour garantir que la fonction donne un résultat correct pour toute liste ?
Deux tests : pour le cas où le plus grand élément est en début de liste, et pour le cas où le plus grand élément n'est pas en début de liste |
Deux tests : pour une liste à un élément et pour une liste à deux éléments ou plus |
Trois tests : pour une liste vide, pour une liste à un élément, et pour une liste à deux éléments ou plus |
Une infinité de tests : on ne peut pas prouver que cette fonction est correcte, simplement en la testant |
La documentation de la bibliothèque random de Python précise :
Renvoie un entier aléatoire N tel que a <= N <= b
Quelle est l'expression Python permettant de simuler le tirage d’un dé à $6$ faces après avoir exécuté import random ?
random.randint(1,7) |
random.randint(6) |
random.randint(1,6) |
random.randint(0,6) |
Algorithmique
La fonction suivante doit calculer la moyenne d’un tableau de nombres, passé en paramètre. Avec quelles expressions, faut-il compléter l'écriture pour que la fonction soit correcte ?
1 et len(tableau) |
1 et len(tableau) + 1 |
0 et len(tableau) + 1 |
0 et len(tableau) |
Quelle valeur retourne la fonction
mystere suivante ?
while indice < len(liste) - 1:
if liste[indice] > liste[indice + 1]:
La valeur du plus grand élément de la liste passée en paramètre |
Une valeur booléenne indiquant si la liste passée en paramètre est triée |
La valeur du plus petit élément de la liste passée en paramètre |
Une valeur booléenne indiquant si la liste passée en paramètre contient plusieurs fois le même élément |
Combien d’échanges effectue la fonction Python suivante pour trier un tableau de $10$ éléments au pire des cas ?
for i in range (1, len(tab)):
for j in range (len(tab) - i):
tab[j],tab[j+1] = tab[j+1], tab[j]
À quelle catégorie, appartient l'algorithme des $k$ plus proches voisins ?
Algorithmes de tri |
Algorithmes de classification et d'apprentissage |
Algorithmes gloutons |
Algorithmes de recherche de chemins |
Avec un algorithme de recherche par dichotomie, combien d’étapes sont nécessaires pour déterminer que $35$ est présent dans le tableau
$[1, 7, 12, 16, 18, 20, 24, 28, 35, 43, 69]$ ?
9 étapes |
2 étapes |
1 étapes |
11 étapes |
Pour pouvoir utiliser un algorithme de recherche par dichotomie dans une liste, quelle précondition doit être vraie ?
La liste ne doit pas comporter de doublons |
La liste doit comporter uniquement des entiers positifs |
La liste doit être de longueur inférieure à $1024$ |
La liste doit être triée |