Files
1ereNSI/programmation/GENERALITES.md

5.0 KiB
Raw Permalink Blame History

title, author, license
title author license
Programmation - Généralités M. BODDAERT, M. MATHIEU CC-BY-NC-SA

Programmation - Généralités

📺 Pourquoi programme-t-on ? (Vidéo)

Objectifs

Les objectifs de la séquence Langages et Programmation est de se questionner et répondre aux interrogations suivantes :

  • Qu'est-ce qu'un langage de programmation ?
  • Pourquoi a-t-on besoin d'un langage de programmation ?
  • Qu'est-ce que programmer ?
  • Comment programme-t-on ?

Définition

Langage (Selon le Larousse) : Capacité, observée chez tous les humains, d'exprimer leur pensée et de communiquer au moyen d'un système de signes vocaux et éventuellement graphiques.

  • Le langage est un système permettant la communication entre 2 entités, 2 humains :
flowchart LR
	A[Humain A] --> |Demande|B[Humain B]
	C[Humain A] --> |Demande|D[Humain B]
	D --> |Interprète|D
	E[Humain A] --> |Demande|F[Humain B]
	F --> |Interprète|F
	F --> |Répond|E

Exemple :

flowchart LR
	A[Passant A] --> |"Quelle heure est-il, s'il vous plait ?"|B[Passant B]
	C[Passant A] --> |"Quelle heure est-il, s'il vous plait ?"|D[Passant B]
	D --> |Regarde sa montre|D
	E[Passant A] --> |"Quelle heure est-il, s'il vous plait ?"|F[Passant B]
	F --> |Regarde sa montre|F
	F --> |Répond : 8h35|E
  • Le langage est propre à une communauté. Un langage naturel, ou langage ordinaire, est une langue « normale » parlée par un être humain (Exemple : le Français, l'anglais...)
  • Le langage machine : directement interprétable par le processeur d'un ordinateur, mais peu lisible aux yeux d'un humain,
  • Le langage de programmation : Compréhensible par un humain et aisément traduisible en langage machine.

Un langage de programmation est un langage proche du langage naturel, utilisable par un humain, et exécutable, après traduction par une machine.

Sans langage de programmation, un humain devrait connaitre et commander la machine en maitrisant son langage, donc écrire des 0 et des 1.

flowchart LR
	A[Langage Naturel] --> B[Langage de Programmation]
	B --> C[Langage Machine]

Constituants d'un langage

Tout langage est constitué de 2 ensembles :

flowchart TD
 	subgraph Langage
		Grammaire --> Vocabulaire
	end

Vocabulaire : Ensemble des mots ou vocables d'une langue

Exemples :

  • heure, quelle, table...
  • rehue, llequ, betal...

Grammaire (Selon le Larousse) : Ensemble des structures linguistiques propres à telle ou telle langue. Autrement dit, la grammaire indique l'ordre et les règles de structures du vocabulaire

Exemples :

  • Quelle heure est-il ?
  • Il ? heure est quelle

...Mais avant de programmer

Quelles sont les similitudes et différences entre ces 3 activités

Itinéraire Mappy Recette de cuisine Montage de meuble IKEA
Itinéraire Mappy Recette de cookie aux pépites de chocolat Plan de montage

Algorithme (Selon Le Robert) : Ensemble fini des règles opératoires propres à un calcul. Ce terme vient d'Al-Khwarizmi, mathématicien du 9ème siècle.

Al-Khwarizmi, Source : Wikipedia Source : Wikipedia

Autrement dit, un algorithme est une suite finie d'instructions exprimées en langage naturel.

Un programme est l'implantation d'un algorithme dans un langage de programmation.

Programmer (Selon le Larousse) : Établir à l'avance une suite d'opérations ; planifier, déterminer à l'avance le moment et les modalités d'une action.

Exemple : Le calcul de l'hypoténuse dans un triangle rectangle

Algorithme : Dans un triangle rectangle, le carré de la longueur de lhypoténuse est égal à la somme des carrés des longueurs des deux autres côtés.

Implantation en Java :

class Hypotenuse 
{
public static void main(String[] args) 
    {
        double adjacent=4, oppose=3, hypotenuse;          
        hypotenuse= Math.sqrt((adjacent*adjacent)+(oppose*oppose));
        System.out.println("La longueur de l'hypotenuse est : " + hypotenuse);
    }
}

Implantation en Python :

import math

adjacent = 4
opposite = 3
hypotenuse = math.sqrt(adjacent**2 + opposite**2)
print("La longueur de l'hypotenuse est :", hypotenuse)

Langage de Programmation au lycée

Au collège, vous avez déjà programmé mais en utilisant un langage de programmation par blocs : Scratch. Ce type de langage est très utile pour apprendre les bases de lalgorithmique et de la programmation mais ne constitue pas un langage utilisé pour programmer réellement. Pour cela, on utilise des langages dits textuels qui nécessitent décrire tout le code avec son clavier.

Au lycée, vous allez apprendre lun de ces langages : le langage Python. Vous lutiliserez dans différentes disciplines : Mathématiques, SNT, Physique-Chimie, spécialité NSI notamment.