← Spécialité NSI

Faire le point : Spécialité NSI, Première

Une question par chapitre, 9 en tout, tirées des exercices corrigés du cours. Réponds à celles que tu sais faire et passe celles d'un chapitre que tu n'as pas encore vu : chaque réponse se vérifie tout de suite, et la correction s'ouvre après.

Avec ton espace gratuit, chaque réponse est gardée et ton tableau de bord range chaque chapitre : réussi au test, ou à travailler. Ce sont les mêmes questions que sur les pages des séries : une réponse donnée ici compte là-bas.

Ce que le cours suppose

Ces chapitres viennent d'une année précédente, et le cours s'appuie dessus dès les premières semaines.

Mathématiques · Seconde · Algorithmique et Python

On considère la liste des notes d'un élève : notes = [12, 8, 15, 9, 18, 11].

a) Donnez les valeurs de len(notes), notes[0], notes[2] et notes[len(notes) - 1].

Tape tes réponses, la page te dit juste ou faux 0/4

a)
Voir la correction

Réponse

a) 66, 1212, 1515, 1111

a) len(notes) vaut 66, notes[0] vaut 1212, notes[2] vaut 1515 et notes[len(notes) - 1] vaut 1111. Les indices commencent à ZÉRO, donc le dernier indice est 55 et non 66 : écrire notes[6] provoquerait une erreur d'indice. L'écriture notes[len(notes) - 1] est la façon standard de désigner le dernier élément sans connaître la taille.

L'exercice complet, avec toutes ses questions →

La série du chapitre · la fiche de révision

SNT · Seconde · Internet et le Web : protocoles, adressage, HTML et HTTP

Les débits s'expriment en bits par seconde, les tailles de fichiers en octets. Confondre les deux fait des erreurs d'un facteur 8, et c'est l'erreur la plus fréquente de tout le programme. On prendra 1 Mo = 1000 ko et 1 Go = 1000 Mo.

c) Une page web pèse 2,5 Mo. Combien de temps met-elle à se charger sur une connexion à 8 Mbit/s ? Et sur une connexion mobile dégradée à 500 kbit/s ?

Tape tes réponses, la page te dit juste ou faux 0/3

c)
Voir la correction

Réponse

c) 2,52{,}5 s à 8 Mbit/s, 4040 s à 500 kbit/s

c) La page pèse 2,5 Mo, soit 20 Mbit. À 8 Mbit/s cela donne 208=2,5\dfrac{20}{8}=2{,}5 secondes. À 500 kbit/s, c'est-à-dire 0,5 Mbit/s, cela donne 200,5=40\dfrac{20}{0{,}5}=40 secondes, ce qui est insupportable en usage réel. D'où l'importance d'alléger les pages pour les visiteurs en mobilité.

L'exercice complet, avec toutes ses questions →

La série du chapitre · la fiche de révision

Les chapitres du cours

Dans l'ordre du cours.

Chapitre 1 · Python : types, contrôle, fonctions et tableaux

Toutes les questions demandent la valeur ET le type du résultat. Répondez sans machine : l'épreuve se passe sans interpréteur, et savoir prévoir ce que Python va faire est précisément la compétence évaluée.

b) Donnez la valeur de -7 // 2 et de -7 % 2. Le résultat de la division entière vous surprend-il ? Expliquez la règle utilisée par Python.

Tape tes réponses, la page te dit juste ou faux 0/2

b)
Voir la correction

Réponse

b) -4 et 1 : arrondi vers moins l'infini

b) -7 // 2 vaut -4, et non -3. Python arrondit le quotient vers le bas (vers moins l'infini), pas vers zéro. Et -7 % 2 vaut 1, un reste positif. Les deux sont cohérents : la relation a=b×(a // b)+(a % b)a = b \times (a\ //\ b) + (a\ \%\ b) doit rester vraie, et en effet −7=2×(−4)+1-7 = 2\times(-4)+1. En Python, le reste a toujours le signe du diviseur.

L'exercice complet, avec toutes ses questions →

La série du chapitre · la fiche de révision

Chapitre 2 · Représentation des données : réels et texte

Le code ASCII associe à chaque caractère un nombre entier compris entre 00 et 127127, codé sur 77 bits. Il couvre les lettres non accentuées, les chiffres, la ponctuation et quelques caractères de commande.

Repères à connaître : le caractère AA vaut 6565, le caractère aa vaut 9797, le chiffre 00 vaut 4848 et l'espace vaut 3232. La droite ci-dessous place ces repères parmi les 128 codes.

commandes032espace48« 0 »65« A »97« a »127

a) Donnez le code ASCII des caractères CC, cc et 55, en justifiant chaque calcul.

Tape tes réponses, la page te dit juste ou faux 0/3

a)
Voir la correction

Réponse

a) 67, 99, 53

a) Les lettres se suivent dans l'ordre alphabétique : CC est la troisième lettre, donc 65+2=6765+2=67. De même cc vaut 97+2=9997+2=99. Le chiffre 55 vaut 48+5=5348+5=53. On ne mémorise que les points de départ, jamais la table entière.

L'exercice complet, avec toutes ses questions →

La série du chapitre · la fiche de révision

Chapitre 3 · Algorithmique : preuve, terminaison et coût

On ne devine pas le coût d'un algorithme, on le constate. Le test du doublement consiste à doubler la taille des données et à regarder ce que devient le temps : inchangé pour un coût constant, doublé pour un coût linéaire, quadruplé pour un coût quadratique.

Quatre programmes AA, BB, CC et DD ont été chronométrés sur les mêmes données, pour quatre tailles qui doublent à chaque ligne. Les temps sont en millisecondes.

nA (ms)B (ms)C (ms)D (ms)1 0000,81,52412,02 0000,83,19713,44 0000,96,238914,88 0000,812,31 55416,2

b) Prédisez le temps de BB et celui de CC pour n=16 000n = 16\,000, puis pour n=64 000n = 64\,000. Donnez le temps de CC à 64 00064\,000 en secondes, au dixième.

Tape tes réponses, la page te dit juste ou faux 0/3

b)
Voir la correction

Réponse

b) BB : 24,624{,}6 ms puis 98,498{,}4 ms. CC : 6 2166\,216 ms puis 99 45699\,456 ms, soit 99,599{,}5 s

b) Pour BB, chaque doublement multiplie par 22 : 12,3×2=24,612{,}3 \times 2 = 24{,}6 ms à 16 00016\,000, puis 24,6×2×2=98,424{,}6 \times 2 \times 2 = 98{,}4 ms à 64 00064\,000, deux doublements plus loin. Pour CC, chaque doublement multiplie par 44 : 1 554×4=6 2161\,554 \times 4 = 6\,216 ms à 16 00016\,000, puis 6 216×16=99 4566\,216 \times 16 = 99\,456 ms à 64 00064\,000, soit environ 99,599{,}5 secondes. On passe donc de moins de deux secondes à plus d'une minute et demie pour huit fois plus de données. Le piège est de multiplier par 88 au lieu de 4×44 \times 4 : trois doublements se traduisent par 232^{3} pour un linéaire et par 434^{3} pour un quadratique, jamais par la même valeur.

L'exercice complet, avec toutes ses questions →

La série du chapitre · la fiche de révision

Chapitre 4 · Traitement de données en tables et types construits

Le schéma oppose deux situations qui s'écrivent presque de la même façon et ne font pas du tout la même chose. C'est l'erreur la plus coûteuse du chapitre, parce qu'elle ne provoque aucun message : le programme donne simplement un résultat faux.

abcd[1, 2, 3][1, 2, 3][1, 2, 3]b = a : un seul objetd = list(c) : deux objets

c) Une table est une liste de dictionnaires. On écrit copie = list(table) puis copie[0]['nom'] = 'X'. La table d'origine est-elle modifiée ? Justifiez précisément.

Tape tes réponses, la page te dit juste ou faux 0/1

c)
Voir la correction

Réponse

c) Copie de surface : table modifiée

c) Oui, la table d'origine EST modifiée. list(table) construit bien une nouvelle liste, mais ses cases contiennent les MÊMES dictionnaires que l'original : on a copié le contenant, pas les contenus. copie[0] et table[0] désignent donc le même dictionnaire, et lui ajouter ou changer une clé se voit des deux côtés. C'est précisément le piège : le programmeur croit avoir protégé ses données parce qu'il a écrit une copie, alors qu'il n'a dupliqué qu'un niveau.

L'exercice complet, avec toutes ses questions →

La série du chapitre · la fiche de révision

Chapitre 5 · Les k plus proches voisins

Un producteur veut trier automatiquement des fruits. Chaque fruit est décrit par un couple (largeur, hauteur) mesuré en millimètres. La table d'exemples contient cinq fruits dont on connaît la nature : trois pommes A, D, E et deux poires B, C. Un nouveau fruit N, de largeur 7070 mm et de hauteur 7575 mm, arrive sur le tapis.

Coordonnées : A (76 ;75)(76\,;75), B (67 ;79)(67\,;79), C (64 ;83)(64\,;83), D (82 ;70)(82\,;70), E (70 ;67)(70\,;67). On compare deux distances entre deux points (x ;y)(x\,;y) et (x′ ;y′)(x'\,;y') : la distance euclidienne (x−x′)2+(y−y′)2\sqrt{(x-x')^{2}+(y-y')^{2}}, « à vol d'oiseau », et la distance de Manhattan ∣x−x′∣+∣y−y′∣|x-x'|+|y-y'|, celle d'un trajet qui suit le quadrillage.

6065707580856570758085ABCDEN● pomme○ poirelargeur (mm)hauteur (mm)

b) Calculez la distance de Manhattan de N à chacun des cinq fruits.

Tape tes réponses, la page te dit juste ou faux 0/3

b)
Voir la correction

Réponse

b) A : 66, B : 77, C : 1414, D : 1717, E : 88

b) La distance de Manhattan additionne les valeurs absolues des écarts : A 6+0=66+0=6, B 3+4=73+4=7, C 6+8=146+8=14, D 12+5=1712+5=17, E 0+8=80+8=8. Le nom vient des rues à angle droit d'une ville quadrillée : pour aller d'un carrefour à un autre, on ne traverse pas les pâtés de maisons en diagonale, on suit les rues. La valeur absolue est indispensable ; sans elle, les écarts de B, −3-3 et +4+4, se compenseraient et donneraient 11, une distance absurdement petite. Ce piège revient en Python à l'exercice 2.

L'exercice complet, avec toutes ses questions →

La série du chapitre · la fiche de révision

Chapitre 6 · Interactions homme-machine sur le Web

Une page web n'est pas un texte : c'est un ARBRE de balises, que le navigateur construit à la lecture et que le script manipule ensuite. Tout le chapitre découle de cette structure.

htmlheadbodytitleh1forminputbutton

b) Donnez la racine de l'arbre, les feuilles, la profondeur de l'élément button, et le nombre de frères et soeurs de l'élément form.

Tape tes réponses, la page te dit juste ou faux 0/3

b)
Voir la correction

Réponse

b) 4 feuilles, profondeur 3, un frère

b) La racine est html. Les feuilles, c'est-à-dire les éléments sans fils, sont title, h1, input et button. La profondeur de button est 3 si l'on compte la racine au niveau 0 : html, puis body, puis form, puis button. L'élément form a un seul frère, h1, puisque body a deux fils.

L'exercice complet, avec toutes ses questions →

La série du chapitre · la fiche de révision

Chapitre 7 · Architectures matérielles, systèmes et réseaux

Un ordinateur ne connaît que des suites de bits. Tout le reste, entiers positifs, entiers négatifs, adresses, couleurs, est une CONVENTION d'interprétation de ces suites, et c'est la convention qu'il faut connaître. Le schéma ci-dessous représente l'octet et les deux programmes qui le lisent.

1101001176543210rangprogramme 1entier naturelprogramme 2complément à deux

b) La suite 11010011 est lue par deux programmes différents, l'un qui l'interprète comme un entier naturel, l'autre comme un entier relatif en complément à deux. Donnez les deux valeurs.

Tape tes réponses, la page te dit juste ou faux 0/2

b)
Voir la correction

Réponse

b) 211 ou −45 selon la convention

b) Comme entier naturel, 1101001111010011 vaut 128+64+16+2+1=211128 + 64 + 16 + 2 + 1 = 211. Comme entier relatif en complément à deux, le bit de poids fort valant 1, le nombre est négatif : sa valeur est 211−256=−45211 - 256 = -45. On peut aussi le retrouver en inversant tous les bits, ce qui donne 00101100 soit 44, puis en ajoutant 1 pour obtenir 45, et en mettant le signe moins. La même suite de huit bits vaut donc 211 ou moins 45 selon la seule convention retenue, et rien dans la mémoire ne dit laquelle est la bonne.

L'exercice complet, avec toutes ses questions →

La série du chapitre · la fiche de révision

Et maintenant ?

Ton tableau de bord range chaque chapitre selon tes réponses et te dit par où commencer. Une date d'examen en tête ? Note-la sur la carte du cours : il en tire un plan, jour après jour.

Voir mon bilan dans mon espace →
Site par Studio Squalli