Chapitre 7: Comparaisons de langages

Contenus Capacités attendues Commentaires
Diversité et unité des langages de programmation Repérer, dans un nouveau langage de programmation, les traits communs et les traits particuliers à ce langage. Les manières dont un même programme simple s’écrit dans différents langages sont comparées.

Comme nous l’avons vu précédemment un programme permet d’écrire un algorithme afin qu’il soit exécuté par un ordinateur.

Il existe de très nombreux langages de programmation aujourd’hui, chacun ayant ses forces et ses faiblesses et sera donc adapté à un domaine plutôt qu’à un autre.

Cette année nous utiliserons deux langages: Python et javascript:

Nous allons voir sur l’exemple de ces deux langages qu’il est possible d’écrire les mêmes algorithmes avec des syntaxes assez proches.

1 Commentaires

Les commentaires sont indispensables pour expliquer votre code à ceux qui le lisent(souvent vous-même quelques jours, semaines ou mois après). En javascript on utilise le double slash pour le commentaire de ligne //.

python javascript
# ceci est un commentaire
// ceci est un commentaire

2 Affectation de variable

Dans les deux langages on utilise le simple signe égal =, on utilise cependant le mot clé var en js.

python javascript
a = 3
var a = 3

Les nouvelles versions de javascript ont ajouté les mots-clés const et let pour déclarer des variables respectivement immutables ou mutables.

3 Entrées et sorties

Les entrées permettent de récupérer des données de l’utilisateur pour adapter son fonctionnement aux exigences de ce dernier.

Les sorties permettent d’afficher les résultats à l’utilisateur.

python javascript
# entrée
age = input("Quel age avez-vous?)
# sortie
print("Votre âge est " + age + " ans")
// entrée
var age = prompt("Quel age avez-vous?")
// sortie
console.log("Votre âge est " + age + " ans")

4 Instructions conditionnelles

Dans les deux langages on utilise les mots-clef if et else cependant le elif n’existe pas en js. On utilise else if.

D’autre part, le javascript n’utilise pas l’indentation pour définir les blocs de code, il les place entre accolades {}

python javascript
if age > 18:
    print("Vous êtes majeur")
elif age >16:
    print("Bientôt majeur")
else:
    print("Soyez patient")
if (age > 18) {
  console.log(`Vous êtes majeur`)
} else if (age > 16) {
console.log(`Bientôt majeur`)
} else {
  console.log(`Soyez patient`)
}

5 Boucles

Les deux langages définissent les boucles for et while.

5.1 Boucle for

python javascript
for i in range(10):
    print(i)
for (var i = 0; i < 10; i++) {
    console.log(i)
}

5.2 Boucle while

python javascript
i = 0 # initialisation
while i < 10: # condition d'arrêt
    print(i)
    # incrémentation de l'indice
    i = i + 1
else:
    print("Soyez patient")
var i = 0 // initialisation
while (i < 10) { // condition d'arrêt
    console.log(i)
    // incrémentation de l'indice
    i = i + 1
}
    console.log(`Soyez patient`)
}

6 Fonctions

6.1 Définition de la fonction

En python le mot clef utilisé est def et function en javascript, dans les deux cas le retour de fonction se fait par le mot-clé return.

python javascript
def carré(nb):
    return nb**2
function carré (nb) {
    return nb**2
}

6.2 Appel de la fonction

Même syntaxe, on écrit le nom de la fonction avec le ou les arguments de la fonction entre parenthèse.

python javascript
carré(2)
carré(2)

Une fonction peut ne pas avoir de paramètres, mais son appel nécessite la présence des parenthèses.

compte()