Objectif : Cette rapide révision des prérequis informatiques nécessaires est l'occasion de comprendre dans quel esprit nous allons travailler tout au long de cette année en spécialité de première NSI (Numérique et Sciences Informatiques).
Au collège, en cours de mathématiques et de technologie, vous avez appris à écrire, mettre au point et exécuter un programme simple.
En seconde, vous avez consolidé ces acquis et découvert la programmation en langage Python.
Plus précisément, vous avez :
Dans ce qui suit nous vous proposons de revoir toutes ces notions.
Observez ce premier algorithme puis répondez aux questions.
a ← 1.5 b ← 2 c ← b d ← 'a' a ← a+b b ← b*c a ← a-0.5
a
, b
, c
et d
à la fin de l'algorithme ?a
, b
, c
et d
après l'exécution de ces 7 lignes.
On pourra vérifier les réponses en utilisant la fonction type(...)
.Voici un second algorithme.
DEMANDER a et b SI a<b ALORS AFFICHER b SINON AFFICHER a FIN SI
a
et b
et renvoie le résultat attendu.min(... , ...)
qui permet d'obtenir le minimum de deux nombres passés en argument.Voici un troisième algorithme.
DEMANDER a et b TANT QUE b ≤ a a ← a-b FIN TANT QUE AFFICHER a
a
et b
et renvoie le résultat attendu.quotient(...,...)
qui permet d'obtenir le quotient de la division euclidienne de deux nombres passés en argument.Remarque importante : Dans l'absolue, nous n'avons pas besoin de ces fonctions puisqu'il existe deux opérations qui permettent de faire la même chose (Etes-vous sûr de les connaitre ?). L'objectif du cours de NSI est justement de vous faire comprendre qu'avec ce que vous avez appris jusqu'à maintenant en informatique et en mathématiques, vous allez être capable de reconstruire tous les "outils numériques" que vous utilisez quotidiennement.
Pour aller plus loin :
Construire la fonction DivisionEuclidienne(... , ...)
qui permet d'obtenir le 2-uplets ou encore le 2-tuples, c'est à dire le couple, constitué du quotient et du reste de la division euclidienne de deux nombres passés en argument.
Vérifiez le type de la variable obtenue, à l'aide de la fonction type(...)
.
Comment peut-on obtenir à partir du 2-uplets ou du 2-tuples la valeur du quotient puis la valeur du reste ?
Voici un quatrième algorithme.
DEMANDER a et b m ← 0 REPETER a FOIS m ← m+b FIN REPETER AFFICHER m
a
et b
et renvoie le résultat attendu.
Remarque importante :
Dans cette partie, nous sommes sur le point de reconstruire à l'aide de l'opération addition et de structures algorithmiques élémentaires une opération bien connue de vos calculatrices et de Python.
Quel est l'intéret ?
Comme nous l'avons déjà dit plus haut, en NSI, notre objectif est justement de comprendre comment les informaticiens et plus généralement les scientifiques ont construit ces outils élémentaires dont nous oublions trop souvent la complexité mais que nous utilisons quotidiennement.
Ainsi, si nous sommes capables de faire faire à un ordinateur des séquences d'instructions, des affectations de variables et des additions sur ces variables, nous sommes capables de construire l'opération multiplication.
Comment un ordinateur fait l'addition de deux variables, par exemple ?
Patience, nous le verrons cette année.