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:

  • Python est très apprécié dans la communauté scientifique
  • alors que le javascript est le langage implémenté nativement dans tous les navigateurs web.

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

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

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

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")

  

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'autres 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`)
}

  

Boucles

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

Boucle for

python javascript

for i in range(10):
    print(i)


for (var i = 0; i < 10; i++) {
  console.log(i)
}

  

Boucle while

python javascript

i = 0 # initialisation
while i<10: # condition d'arrêt
    print(i)
    i = i + 1 # incrémentation de l'indice


var i = 0 // initialisation
while (i < 10) { // condition d'arrêt
  console.log(i)
  i = i + 1 // incrémentation de l'indice
}

  

Fonctions

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

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
}

  

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)

  
Procédure

Une fonction qui n'utilise pas d'argument est parfois qualifiée de procédure. L'appelle des procédures nécessite la présence des parenthèses pour être appelée sinon la fonction est renvoyée, mais |son code n'est pas exécuté.