Programmation Scratch

Slides:



Advertisements
Présentations similaires
Formation des enseignants Formation MATLAB. Formation des enseignants MATLAB® (pour MATrix LABoratory) est un logiciel scientifique de calcul numérique.
Advertisements

C++ Les fonctions. Présentation Utilité : Dès qu'un programme dépasse la centaine de lignes de code, il est pratique de pouvoir le décomposer en plusieurs.
Les systèmes d'information 1- Une pratique quotidienne 2- Les données 3- Approche conceptuelle 4- Notion de serveur 5- Conception d'un système d'information.
Auteur : Patrice LEPISSIER Les probabilités  Notions de base Notions de base  Variable aléatoire Variable aléatoire  La loi Normale La loi Normale.
CINI – Li115 1 Semaine 3 Boucles (suite), tirages aléatoires, bibliothèque graphique ● Imbrication d'instructions if et for ● Boucles for imbriquées ●
D.Enselme : VARI-NFP 135 cours n°5 1 Chapitre 5 : conception de programmes Décomposition par raffinements successifs Décomposition itérative Décomposition.
Mini Projet : Station Météo ➢ Etudiant E1 : ✔ Réception de la trame, analyse, transmission. ➢ Etudiant E2 : ✔ Réception des données, traitement, stockage.
1 Programmation en C++ Fonctions ● Déclaration et définition de fonctions ● Arguments ● Surcharge ● Arguments optionnels ● Fonctions constantes ● Fonctions.
Tableaux en C Mardi 2/05.
Semaine 8 Retour sur les tableaux : fonctions et récursivité
Les Bases de données Définition Architecture d’un SGBD
Module de gestion des tournées de livraison
Les tableaux différencier les variables simples des variables indicées (ordonnées et numérotées) un identificateur unique désigne un ensemble, une collection.
Environnement de développement des BD
Les Instructions Itératives (Les Boucles)
Pierre Joli Cours de Mathématique Pierre Joli
Scratch un outil au service de la technologie
Modifications des blocs fonctionnels du Servo 9300 V2.0
10 - CREATION D’UNE ACTION
Visite guidée - session 3 Les postes de charge et les gammes
Algorithmiques Abdelbasset KABOU
Eléments d’Informatique Cours11 – Allocation dynamique, listes chaînées Catherine Recanati.
Introduction à l’algorithmique. Introduction Algorithme: Procédure décrivant, étape par étape, une méthode permettant de résoudre un problème. Mot provenant.
Programmation avec Scratch
Master Réseaux et Systèmes Distribués (RSD)
Langues vivantes (1/14) Sommaire Refonte ergonomique Onglet Synthèse
Les objectifs du cours Savoir utiliser un Tableur
Analyse en Composantes Principales A.C.P. M. Rehailia Laboratoire de Mathématiques de l’Université de Saint Etienne (LaMUSE).
Les fonctions.
Algorithmiques Abdelbasset KABOU
Information, Calcul, Communication
Matrices, déclaration en CSharp
Diffusion Eurostat Mode opératoire
Programmation en C++ Fonctions
Arguments de la ligne de commande
Séance 1 : voiture-ville
Introduction à l’algorithmique. Introduction Algorithme: Procédure décrivant, étape par étape, une méthode permettant de résoudre un problème. Mot provenant.
DIAPO 1: 30 secondes Voici un algorithme SCRATCH Question 1
Programmation Impérative II
L ES I NSTRUCTIONS I TÉRATIVES (L ES B OUCLES ) Réalisé par : OUZEGGANE Redouane Département de Technologie Faculté de Technologie – Université A.Mira,
Programmation en C++ Fonctions
Avec 30 blocs polyéthylènes donnés par le professeur, construire un mur de 5 rangées de haut et de 8 blocs pour la base.
Introduction à l’algorithmique. Introduction Algorithme: Procédure décrivant, étape par étape, une méthode permettant de résoudre un problème. Mot provenant.
Cours N°9: Algorithmiques Les Tableaux 1
Les tableaux.
Cyber-Sphinx Séance 2.
PROGRAMMATION INFORMATIQUE D’INGÉNIERIE II
Cours N°10: Algorithmiques Tableaux - Matrices
1 RECURSIVITE PRESENTATION Ch. PAUL ALGORITHMIQUE Présentation de la récursivité.
Type Concret – Type Abstrait
Les mécanismes de transmission du mouvement. définition la transmission du mouvement est une fonction mécanique complexe qui consiste à transmettre un.
Calcul Scientifique Initiation à SCILB
SYSTèMES à évènements discrets
De Scratch à Python : une transition douce… COMMUNICATION
CalculmatricielCalculmatriciel. I. Matrices Définitions & notations :
ENSEIGNER L’ALGORITHMIQUE ET LA PROGRAMMATION AU COLLÈGE
Information, Calcul, Communication
PRO1026 Programmation et enseignement
Compléments sur Python (EduPython)
PROGRAMMATION ET ENSEIGNEMENT
RABAH M ed Ali 2018/2019
Programmation Scratch
PROGRAMMATION ET ENSEIGNEMENT
Véhicule autonome Mindstorms
Scratch au collège.
Piles et files.
Tableaux Cours 06.
Boulain Joris, Handouz Yassine, Regnier Fabien, Giraud Antoine
Type Tableau Partie 1 : Vecteurs
Transcription de la présentation:

Programmation Scratch PRO1026 Programmation et enseignement Programmation Scratch Sujets Introduction Calcul de la factoriel Calcul du nombre triangulaire Notions de programmation Variables, vecteurs Structures conditionnelles Structures itératives Fonctions et récursion Passage de messages

Introduction La fonction factorielle (n!) consiste à multiplier la valeur de n termes entre eux et est définie comme suit: Si n = 0, alors n! = 1; Si n > 0, alors n! = n (n –1)!; Ainsi: 0! = 1; 1! = 1; 2! = 2 x (2‐1)! = 2 x 1! = 2 x 1 = 2; 5! = 5 x (5‐1)! = 5 x 4! = 5 x 4 x (4‐1) != 5 x 4 x 3! = … = =5 x 4 x 3 x 2 x1 = 120 n! = n x (n‐1) x (n‐2) x … x 1 Donc, si n = 0 alors la solution est de 1. Cela constitue le cas de base. Dans les autres cas, nous sommes dans un cas complexe qui nécessite une récurrence.

Notions de programmation (Vecteur): voir l’exemple EX-FACTORIELLE-RECURSIF-VECTEUR.sb2 Calcule de la factorielle: création d’une pile (vecteur) pour stocker les valeurs intermédiaires

Notions de programmation (Vecteur): voir l’exemple EX-FACTORIELLE-RECURSIF-VECTEUR.sb2 Calcule de la factorielle: création d’une pile (vecteur) pour stocker les valeurs intermédiaires

Notions de programmation (Vecteur): voir l’exemple EX-FACTORIELLE-RECURSIF-VECTEUR.sb2 Calcule de la factorielle: création d’une pile (vecteur) pour stocker les valeurs intermédiaires (fonctions utiles pour la manipulation de liste (vecteurs)) Ajout d’un élément à la fin d’une liste Suppression de l’élément 1: premier dernier: dernier élément supprimé tout: tous les éléments supprimés Accéder à un élément dans une liste 1: premier ajouté dernier: dernier ajouté

Notions de programmation (Vecteur): voir l’exemple EX-FACTORIELLE-RECURSIF-VECTEUR.sb2 Calcule de la factorielle: création d’une pile (vecteur) pour stocker les valeurs intermédiaires n! = n * n-1 * n-2 * …. * 3 * 2 Premier appel de factorielle(n) n ajouter à la liste (pile) Second appel de factorielle(n-1) Valeur du dernier élément de la pile * n-1 ajouter à la liste (pile) Après le n-1 ième appels à factorielle() Critère d’arrêt number1 = 1 Affichage des résultats

Notions de programmation (Vecteur): voir l’exemple EX-FACTORIELLE-RECURSIF-VECTEUR.sb2 Calcule de la factorielle: création d’une pile (vecteur) pour stocker les valeurs intermédiaires Fonction principale (point d’entrée)

Notions de programmation (Vecteur): voir l’exemple EX-FACTORIELLE-RECURSIF-VECTEUR.sb2 Calcule de la factorielle: création d’une pile (vecteur) pour stocker les valeurs intermédiaires Fonction factorielle()

Notions de programmation (Variable): voir l’exemple EX-FACTORIELLE-RECURSIF.sb2 Calcule de la factorielle: création d’une variable pour accumuler les valeurs intermédiaires n! = n * n-1 * n-2 * …. * 3 * 2 Premier appel de factorielle(acc, n) La variable acc est mise à jour avec la valeur n Second appel de factorielle(acc, n-1) La valeur de acc = acc * n-1 Après le n-1 ième appels à factorielle() Critère d’arrêt number1 = 1 Affichage des résultats

Notions de programmation (Variable): voir l’exemple EX-FACTORIELLE-RECURSIF.sb2 Calcule de la factorielle: création d’une variable pour accumuler les valeurs intermédiaires

Notions de programmation (Variable): voir l’exemple EX-FACTORIELLE-RECURSIF.sb2 Calcule de la factorielle: création d’une variable pour accumuler les valeurs intermédiaires

Notions de programmation: voir l’exempleEX-NOMBRE-TRIANGULAIRE.sb2 Calcule du nombre triangulaire: Calcul du nombre de blocs d’une pyramide, traçage de chaque bloc, affichage du nombre de blocs Nombre blocs de la base Nombre de blocs par étage Nombre d’étages Total Nombre de blocs total de la pyramide Largeur du carré dessiné Numéro de l’étage dessiné

Notions de programmation: voir l’exempleEX-NOMBRE-TRIANGULAIRE.sb2 Calcule du nombre triangulaire: Calcul du nombre de blocs d’une pyramide, traçage de chaque bloc, affichage du nombre de blocs LCarre = 360 / nbBlocBase

Notions de programmation: voir l’exempleEX-NOMBRE-TRIANGULAIRE.sb2 Calcule du nombre triangulaire: Calcul du nombre de blocs d’une pyramide, traçage de chaque bloc, affichage du nombre de blocs (px,py) py = -180 + Lcarre * noEtage LCarre px = -(nbBlocBase/2 * LCarre) + noEtage-1 * LCarre/2 + noBlocEtage * LCarre Position x du premier bloc d’un étage

Notions de programmation: voir l’exempleEX-NOMBRE-TRIANGULAIRE.sb2 Calcule du nombre triangulaire: Calcul du nombre de blocs d’une pyramide, traçage de chaque bloc, affichage du nombre de blocs noBlocEtage += 1 nbBlocTotal += 1

Notions de programmation (programmation multi-lutins, transmission de message): voir l’exemple EX-NOMBRE-TRIANGULAIRE-COLLABORATION.sb2 Calcule du nombre triangulaire: Calcul du nombre de blocs d’une pyramide, traçage des blocs d’un étage par des lutins différents, traçage de chaque bloc, affichage du nombre de blocs Transmission de message Un lutin peut transmettre un message à un autre lutin Un lutin peut être réveillé quand il reçoit un message

Notions de programmation (programmation multi-lutins, transmission de message): voir l’exemple EX-NOMBRE-TRIANGULAIRE-COLLABORATION.sb2 Calcule du nombre triangulaire: Calcul du nombre de blocs d’une pyramide, traçage des blocs d’un étage par des lutins différents, traçage de chaque bloc, affichage du nombre de blocs Programmation multi-lutins

Notions de programmation (programmation multi-lutins, transmission de message): voir l’exemple EX-NOMBRE-TRIANGULAIRE-COLLABORATION.sb2 Calcule du nombre triangulaire: Calcul du nombre de blocs d’une pyramide, traçage des blocs d’un étage par des lutins différents, traçage de chaque bloc, affichage du nombre de blocs Programmation multi-lutins (Pomme: fonction principale) Demande la largeur de la pyramide Initialisation des variables Transmission d’un message (SignalChatDebout) au Lutin Chat Debout pour lancer le traçage des blocs (premier étage) Attente d’un message (SignalPomme) pour l’affichage du nombre de blocs total Affichage du nombre de blocs total

Notions de programmation (programmation multi-lutins, transmission de message): voir l’exemple EX-NOMBRE-TRIANGULAIRE-COLLABORATION.sb2

Notions de programmation (programmation multi-lutins, transmission de message): voir l’exemple EX-NOMBRE-TRIANGULAIRE-COLLABORATION.sb2 Calcule du nombre triangulaire: Calcul du nombre de blocs d’une pyramide, traçage des blocs d’un étage par des lutins différents, traçage de chaque bloc, affichage du nombre de blocs Programmation multi-lutins (Chat Debout) Sur réception du message SignalChatDebout Traçage des blocs d’un étage complet Si c’est le dernier étage à traçer, transmission du message SignalPomme pour permettre de retourner le contrôle au lutin Pomme Sinon, transmission du message SignalChatVolant pour lancer le traçage des blocs du prochain étage

Notions de programmation (programmation multi-lutins, transmission de message): voir l’exemple EX-NOMBRE-TRIANGULAIRE-COLLABORATION.sb2

Notions de programmation (programmation multi-lutins, transmission de message): voir l’exemple EX-NOMBRE-TRIANGULAIRE-COLLABORATION.sb2 Calcule du nombre triangulaire: Calcul du nombre de blocs d’une pyramide, traçage des blocs d’un étage par des lutins différents, traçage de chaque bloc, affichage du nombre de blocs Programmation multi-lutins (Chat Volant) Sur réception du message SignalChatVolant Traçage des blocs d’un étage complet Si c’est le dernier étage à traçer, transmission du message SignalPomme pour permettre de retourner le contrôle au lutin Pomme Sinon, transmission du message SignalChatDebout pour lancer le traçage des blocs du prochain étage

Notions de programmation (programmation multi-lutins, transmission de message): voir l’exemple EX-NOMBRE-TRIANGULAIRE-COLLABORATION.sb2