Ceci est une ancienne révision du document !
Une fois que la solution au problème informatique a été trouvée, il va falloir la communiquer à l'ordinateur ou au système embarqué afin qu'il puisse l'utiliser en temps que programme. Ce dernier, beaucoup plus rapide et fiable que l'être humain pourra alors montrer son intérêt en résolvant les problèmes de ses utilisateurs.
Il existe de nombreux langages de programmation (Basic, Java, Python, PHP, C, SCRATCH …) utilisables par l'être humain et chacun adaptés à un type de problème particuliers.
Tous les langages utilisent des variables, des boucles, des conditions, des instructions générales. Un sous-programme est une suite d'instruction spécifiées à part et généralement utilisées plusieurs fois dans le programme principal.
Certain langages, comme SCRATCH, peuvent être graphiques et utiliser la technique des blocs pour faciliter leur utilisation par les débutants.
Un programme informatique est un ensemble d'opérations destinées à être exécutées par un ordinateur. C'est la traduction de l'algorithme.
Il n'existe qu'un langage (le code machine) compréhensible par l'ordinateur. Il faut donc un interpréteur (traduction ligne par ligne) ou un compilateur (traduction en 1 seule fois) pour passer du langage de programmation au code machine.
Les programmes se composent d'instructions, généralement dérivées de mots anglais, et utilisent une syntaxe qu'il faut respecter pour leur écriture. Certains langages utilisent une programmation par blocs graphiques (SCRATCH, BLOCKLY …).
Ils se composent principalement de :
Au collège, nous programmerons avec des langages graphiques par bloc (SCRATCH et mBloc).
Ce programme SCRATCH est la traduction de l'algorithme convertissant un nombre décimal en nombre binaire.
Il nécessite 3 variables (NOMBRE, SEUIL et RÉPONSE) pour manipuler les données utiles :
Le déroulement est le suivant :
Ce programme JavaScript est la traduction du même algorithme dans un langage textuel.
Les variables sont définies avec “var”. En plus des opérateurs arithmétiques classiques, il existe un opérateur pour incrémenter “++” (+1) et un pour concaténer “.” (ajouter à la suite).
Les boucles le sont avec “for” (on indique la condition de départ, de fin et à chaque répétition).
Les conditions avec “if … else …”.
Il existe des fonctions (bloc d'instructions prédéfinies) comme “prompt (…)” entrer une valeur et “print (…)” sortir une valeur.
La syntaxe impose des “;” en fin d'instruction et des crochet pour les regrouper en bloc (l'indentation n'est pas nécessaire en JavaScript mais rend le programme plus lisible).
Les lignes commençant par “\/\/” sont des commentaires sans effets sur le programme mais très utiles pour les programmeurs.
Pour résoudre un problème informatique, je dois d'abord trouver et écrire l'algorithme qui convient.
Ensuite, je le traduit dans un langage de programmation que je connais pour que l'ordinateur puisse l'utiliser.
Enfin, je l'exécute directement avec l'interpréteur pour les langages tels SCRATCH et JavaScript ou je le compile en un programme exécutable (logiciel) pour les langages de haut niveau.