Loading presentation...

Present Remotely

Send the link below via email or IM

Copy

Present to your audience

Start remote presentation

  • Invited audience members will follow you as you navigate and present
  • People invited to a presentation do not need a Prezi account
  • This link expires 10 minutes after you close the presentation
  • A maximum of 30 users can follow your presentation
  • Learn more about this feature in our knowledge base article

Do you really want to delete this prezi?

Neither you, nor the coeditors you shared it with will be able to recover it again.

DeleteCancel

Make your likes visible on Facebook?

Connect your Facebook account to Prezi and let your likes appear on your timeline.
You can change this under Settings & Account at any time.

No, thanks

Les concepts de base de la programmation

No description
by

Florian Chassaing

on 1 December 2016

Comments (0)

Please log in to add your comment.

Report abuse

Transcript of Les concepts de base de la programmation

Objectifs
Découvrir les trois concepts à la base de n’importe quel programme informatique.

Être capable d’expliquer le fonctionnement d’un programme informatique à partir de ces concepts.

Concevoir le code comme un outil, parmi d’autres, au service de la création.

Pouvoir créer soi-même de petits programmes.
Une méthode efficace pour coder : le pseudo-code.
Le langage de programmation Scratch
Les LEGO Wedo
Le kit de construction Lego Wedo est un kit très simple d’utilisation, destiné à initier les plus jeunes élèves à la robotique.
Les concepts de base de la programmation
LightBot : un jeu pour comprendre l'algorithmique
Exercice
Décrivez en pseudo-code le programme suivant :
A vous de jouer :

https://lightbot.com/hocflash.html
https://scratch.mit.edu/projects/88236386/#fullscreen
Définition :

Un algorithme est une procédure permettant de résoudre un problème donné. Il regroupe l'ensemble des actions qui doivent être exécutées et l'ordre d'exécution de ces actions.

Autrement dit, un algorithme est simplement une séquence d'étapes à respecter pour résoudre un problème.
Pour construire des algorithmes, les développeurs utilisent différentes méthodes. L'une d'entre elles est le pseudo-code
Définition :

L'écriture de pseudo-code consiste en la description d'un algorithme sans faire référence à un langage de programmation spécifique, en utilisant simplement sa langue maternelle.
Les événements liés à l'objet Palet :
Tant que
la balle est en mouvement :

L'abscisse (
x
) du Palet est égale à celle de la souris.
L'ordonnée (
y
) du Palet ne change pas.

Si
le Palet entre en collision avec la Balle, la Balle rebondit.
Les événements liés à la Balle :
Tant que
la Balle est en mouvement :
Si
la Balle entre en
collision
avec le Palet, la Balle rebondit.
Si
l'abscisse de la Balle est
inférieure à 0
ou
supérieure à la largeur de l'écran
, la Balle rebondit.
Si
l'ordonnée de la Balle est
supérieure à la hauteur de l'écran
, la Balle rebondit.
Si
l'ordonnée de la Balle est
inférieure à zéro
:
Le joueur perd une vie.
La Balle n'est plus en mouvement.
La Balle est replacée sur le Palet.
Si
la Balle entre en
collision
avec un Bloc :
Le score est augmenté de 1.
La Balle rebondit.
Le Bloc est supprimé.

Tant que
la Balle est statique :
Si
l'utilisateur
appuie
sur la touche
Espace
, la Balle est lancée.
Les événements liés aux objets Bloc
Si
l'objet Bloc est touché par la Balle :

Le Bloc disparaît.
Le score est augmenté de 1.
Les événements liés à la variable Vie
Si
le jeu commence, la valeur de la variable Vie est mise à 5.

Si
la Balle sort de l'écran par le bas, la valeur de la variable Vie diminue de 1.

Si
la valeur de la variable Vie est égale à 0, le jeu s'arrête et affiche le message "
Game Over
".
Les événements liés à la variable Score :
Si
un Bloc est touché par la Balle, la valeur de la variable Score est augmentée de 1.

Si
la valeur de la variable Score est égale au nombre de Blocs de départ, le jeu s'arrête et affiche le message
"Bravo"
.
Consignes

Par groupe de deux ou trois, décrivez le fonctionnement de l'un des éléments suivants :

La balle.
Le palet.
Un bloc.
Les vies.
Le score.

Contrainte

Chacune de vos phrases doit commencer par l'un des mots suivants :

Tant que
Si

Scratch est un langage de programmation visuel créé par le Massachusetts Institute of Technology (MIT). Il est spécifiquement conçu pour initier les enfants (et les adultes) aux concepts fondamentaux de l'algorithmique sans avoir à taper une ligne de code et de manière ludique.
Activité introductive (1/2) (Difficulté 2/5)
Construisez une manette de jeu permettant de contrôler le chat à l'écran.

Un jeu d'enfant !
Travaux pratiques
https://scratch.mit.edu/projects/83607134/#fullscreen
Activité introductive (2/2) :
Faites sortir le chat du labyrinthe !
(Difficulté 3/5)
Consignes :

Décrivez en pseudo-code le fonctionnement du programme.

Identifiez le bloc qui vous permet d'empêcher que le chat traverse les murs.

Codez !

Vous pouvez bien-sûr réutiliser le code permettant de contrôler le chat à l'aide du capteur d'inclinaison.

Activité au choix (Difficulté 4/5)
Codez un casse-briques
Consignes :

Réutilisez le pseudo-code écrit précédemment et transformez-le en programme.

Adaptez le fonctionnement du jeu à votre convenance.


Astuces :

Assurez-vous bien d'avoir finalisé le code concernant le comportement d'un Bloc avant de le dupliquer.

Pour que la Balle "sache" qu'il est temps qu'elle rebondisse, pensez à lui envoyer un message !

Formule (très) basique pour calculer la nouvelle direction d'une balle rebondissante : 180 - angle actuel.

Ne paniquez pas, vous allez y arriver !
Construisez un domino physique / numérique
Consignes : Essayez de reproduire la vidéo suivante.
Important :

Ne cherchez pas la perfection dès le départ, procédez par iterations (essais-erreur), et décomposez le problème en plusieurs problèmes plus petits.

Il s'agit d'une méthode très utilisée par les développeurs.
Un peu de théorie :
Les boucles
En programmation informatique, une boucle est une séquence d'instructions répétée continuellement jusqu'à-ce qu'une condition de sortie de boucle soit remplie.

Une boucle peut être à
pré-condition
(while):

Exemple :

Tant que la condition
"
l'utilisateur penche la manette vers la droite
" est remplie,
répéter l'instruction
"
faire avancer le chat vers la droite
".

Ou à
post-condition
(until):

Exemple :

Répéter l'instruction
"
dire chronomètre"

jusqu'à ce que la condition
"
le chat a atteint le but
" soit remplie.

Le but d'une boucle est d'exécuter une portion de code plusieurs fois de suite sans avoir à la réécrire.
En informatique, une structure conditionnelle permet d'exécuter des parties de code différentes en fonction du respect ou non d'une condition de départ.

Exemple :

Si langage = "Français":
écrire "Bonjour"
Sinon, si langage = "Allemand":
écrire "Hallo"
Sinon, si langage = "Espagnol":
écrire "Hola"
Sinon :
écrire "Hello"
Les structures conditionnelles
Les variables
En informatique, une variable correspond à un espace de stockage associé à une information nommée valeur. Comme leur nom l'indique, les variables peuvent changer de valeur au cours du temps.

L'intérêt d'une variable est de stocker de l'information en mémoire afin de pouvoir la réutiliser plus tard.

Exemple :

age = 31
nom = "Florian"
est_heureux = True
Niveau secret :
de Scratch à Python
(Difficulté 5/5)
Essayez d'expliquer ce que font les lignes de code suivantes :
Allez dans le répertoire
Casse_briques

Double-cliquez sur le fichier
break_blocks.py
Jouez !
Une fois que vous avez terminé faites un clic droit sur le fichier
break_blocks.py,
ouvrir avec...
Sélectionnez le programme Sublime Text 2.
Remixez !

http://goo.gl/8PvbHe

Exercice collectif : Décrivez Google en pseudo-code
Full transcript