MODULE INF112 TD 2 2012 2013 2012-2013 INF112 - TD2 1



Documents pareils
Algorithmique et programmation : les bases (VBA) Corrigé

Anne Tasso. Java. Le livre de. premier langage. 10 e édition. Avec 109 exercices corrigés. Groupe Eyrolles, , ISBN :

Rappels sur les suites - Algorithme

Formation Excel, Niveau initiation, module 1 DUREE DE LA FORMATION OBJECTIFS DE LA FORMATION

Algorithmique et structures de données I

Synoptique des icônes Interwrite Workspace

Créer le schéma relationnel d une base de données ACCESS

Algorithmique avec Algobox

EXERCICES DE REVISIONS MATHEMATIQUES CM2

Initiation à l algorithmique

TP1 : Initiation à l algorithmique (1 séance)

Cours d Informatique

Introduction à MATLAB R

Cours 1 : Qu est-ce que la programmation?

Sub CalculAnnuite() Const TITRE As String = "Calcul d'annuité de remboursement d'un emprunt"

Comment créer et utiliser une fonction

Algorithme. Table des matières

Les algorithmes de base du graphisme

Définitions. Numéro à préciser. (Durée : )

Algorithmique et Programmation, IMA

Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application

Premier cours d informatique

Une brique dans le cartable. Du Plan à l Ouvrage

Réalisation de cartes vectorielles avec Word

Manuel d utilisation 26 juin Tâche à effectuer : écrire un algorithme 2

LPP SAINT JOSEPH BELFORT MODE OPERATOIRE ACTIVINSPIRE. Bonne utilisation à toutes et tous! UTILISATION DES TBI LE LOGICIEL ACTIVINSPIRE

ET 24 : Modèle de comportement d un système Boucles de programmation avec Labview.

Java Licence Professionnelle CISII,

Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions

Tutoriel : logiciel de présentation Openoffice Impress

Feuille TD n 1 Exercices d algorithmique éléments de correction

Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if

Licence Sciences et Technologies Examen janvier 2010

Aide à la clé pédagogique «Former à la première intervention et à l évacuation»» 2 e édition

Algorithmes récursifs

Vision industrielle et télédétection - Détection d ellipses. Guillaume Martinez 17 décembre 2007

Programmation Visual Basic. Visite guidée d'un programme Visual Basic 6.0

ALGORITHMIQUE ET PROGRAMMATION En C

1/24. I passer d un problème exprimé en français à la réalisation d un. I expressions arithmétiques. I structures de contrôle (tests, boucles)

1 Introduction C+ + Algorithm e. languag. Algorigramm. machine binaire. 1-1 Chaîne de développement. Séance n 4

ARCHIVAGE / SIGNATURE ELECTRONIQUE

Initiation à LabView : Les exemples d applications :

Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java

Formation à distance Powerpoint Réaliser une présentation - FOAD exemples de parcours -

Chapitre 22 Optimisation pour diffusion à l'écran, pour le web

Sélection du contrôleur

Université du Québec à Chicoutimi. Département d informatique et de mathématique. Plan de cours. Titre : Élément de programmation.

Excel 2007 Niveau 3 Page 1

Google Documents permet d élaborer un questionnaire, de le diffuser sur le net pour ensuite le dépouiller.

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.

L espace de travail de Photoshop

Cours Informatique Master STEP

Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation 24 octobre 2007impérative 1 / 44 et. structures de données simples

FORMATIONS INFORMATIQUE

INTRODUCTION A JAVA. Fichier en langage machine Exécutable

introduction Chapitre 5 Récursivité Exemples mathématiques Fonction factorielle ø est un arbre (vide) Images récursives

EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

Priorités de calcul :

Mise en scène d un modèle dans l espace 3D

Création d une SIGNATURE ANIMÉE avec PHOTOFILTRE 7

Gnuplot. Chapitre Lancer Gnuplot. 3.2 Options des graphes

Algorithme des fourmis appliqué à la détection et au suivi de contours dans une image

Organigramme / Algorigramme Dossier élève 1 SI

Utilisation du logiciel Epson Easy Interactive Tools

NOS FORMATIONS EN BUREAUTIQUE

TP : Gestion d une image au format PGM

Notice d Utilisation du logiciel Finite Element Method Magnetics version 3.4 auteur: David Meeker

UTILISER LA MESSAGERIE

TUTORIEL IMPRESS. Ouvrir Impress cocher «présentation vierge», «suivant» cocher «écran», «suivant» cocher «standard», «créer»

GUIDE Excel (version débutante) Version 2013

IUT BREST UN LOGICIEL SCADA : PC VUE 2010 DEP.GMP

NOM : Prénom : Date de naissance : Ecole : CM2 Palier 2

Initiation à linfographie

LA GMAO ACCEDER : EXPLOITATION POUR L ENSEIGNEMENT

F o r m a t i o n. M a i s o n d e l a. Catalogue des formations. E s p a c e P u b l i c N u m é r i q u e. domaine numérique

TBI et mathématique. Pour vous soutenir dans votre enseignement des mathématiques. Les outils du logiciel Notebook. les ressources internet

PowerPoint offre trois modes d affichage principaux : le mode Normal, le mode Trieuse de diapositives et le mode Diaporama

Attestation de maîtrise des connaissances et compétences au cours moyen deuxième année

Outils permettant la diffusion de l information. Un point sur le droit numérique

CA CA T T AL AL O O GUE GUE CATALO FORMATIONS t n s c o p. f r / / / / / / c o n t a c t n s c o p. f r / / / / / # t r o c n u m

Dans l idéal, ceci devrait être fait en amont pour chaque image envoyée sur l espace de stockage de votre site internet.

L alternative, c est malin 1. Comment faire plein de choses pour pas cher sur MacIntosh

MICROINFORMATIQUE NOTE D APPLICATION 1 (REV. 2011) ARITHMETIQUE EN ASSEMBLEUR ET EN C

Opérations de base sur ImageJ

KM2 W1 EVC1 M3~ Manuel AUTOMSIM API 24V. BP Dcy 1MINI 1MAXI.

1. Structure d un programme C. 2. Commentaire: /*..texte */ On utilise aussi le commentaire du C++ qui est valable pour C: 3.

Master IMA - UMPC Paris 6 RDMM - Année Fiche de TP

MATLAB : COMMANDES DE BASE. Note : lorsqu applicable, l équivalent en langage C est indiqué entre les délimiteurs /* */.

GUIDE D UTILISATION DU TABLEAU BLANC INTERACTIF EBEAM EDGE

EVALUATIONS MI-PARCOURS CM2


RACCOURCIS CLAVIERS. DEFINITION : Une «combinaison de touches» est un appui simultané sur plusieurs touches.

Sommaire. Images Actives Logiciel libre développé par le CRDP de l académie de Versailles 2 Rue Pierre Bourdan Marly le Roi

Fonctions homographiques

Excel. Identification. Informations sur vos besoins et objectifs. Notions fondamentales. Fiche de validation des besoins en formation Bureautique

LES TYPES DE DONNÉES DU LANGAGE PASCAL

FICHE 1 : ENTRER DANS LE LOGICIEL POWERPOINT

Transcription:

MODULE INF112 TD 2 2012 2013 2012-2013 INF112 - TD2 1

Plan 1. Algorithme vs Programme 2. Introduction à l algorithmique 3. Exercices 2012-2013 INF112 - TD2 2

1. Algorithme vs programme Motivations (rappel) Pourquoi programmer? Pour faire des actions répétitives L ordinateur va plus vite l homme s ennuie et fait des erreurs Pourquoi en BIO/SVT/CHBI? Création de figures avec des répétitions Traitement et analyse de données Traitement et analyse des images Extraits du livre de Paul Arnaud 2012-2013 INF112 - TD2 3

1. Algorithme vs programme Objectifs de INF112 Il faut apprendre à résoudre les problèmes Soit «a» un problème à résoudre Décomposer «a» en une suite d actions Il faut apprendre à «parler» dans un langage que l ordinateur comprend Ecrire un programme format texte Dans un langage (VBA = Visual Basic Application) Utiliser un outil qui transforme le programme texte en une suite d octets compréhensible par l ordinateur (inclus dans Word, Excel et PowerPoint) 2012-2013 INF112 - TD2 4

1. Algorithme vs programme Démarche Problème complexe Analyse et décomposition en suite d opérations élémentaires ALGORITHME : méthode de résolution d un problème suivant un enchaînement déterminé de règles Action «descriptif_action» ou encore Algo «nom_action» Début Action 1 Action 2. Action n Fin PROGRAMME : traduction dans un langage de programmation 2012-2013 INF112 - TD2 5

1. Algorithme vs programme Plan de travail (semaines 2-6) Apprendre les principes algorithmiques Itérations, paramétrages Application pour des dessins (TP 2-3) PowerPoint Permet de visualiser le résultat Auto-évaluation Application pour des valeurs numériques (4-..) Excel Traiter d autres types de problèmes 2012-2013 INF112 - TD2 6

1. Algorithme vs programme La fenêtre graphique PowerPoint (0,0) (X,Y) (720,0) X Diapositive PowerPoint Espace dans lequel on dessine (X,Y) (0,540) Y 2012-2013 INF112 - TD2 7

1. Algorithme vs programme Repérer un objet (0,0) (X,Y) L X (720,0) H Y (0,540) 2012-2013 INF112 - TD2 8

1. Algorithme vs programme Repérer un objet (0,0) (X,Y) L X (720,0) H Y (0,540) 2012-2013 INF112 - TD2 9

1. Algorithme vs programme Dessiner un Objet en Algo Algo UnOvale {algorithme réalisant le tracé d un ovale} Début Ovale(150, 192, 168, 126) Fin X,Y L, H Algo UnRectangle {algorithme réalisant le tracé d un rectangle} Début Rectangle(150, 192, 168, 126) Fin (X,Y) 2012-2013 INF112 - TD2 10 L H

1. Algorithme vs programme Dessiner un Objet en VBA Sub UnOvale() ActiveWindow.Selection.SlideRange.Shapes.AddShape(msoShapeOval, 150#, 192#, 168#, 126#).Select End Sub Sub UnRectangle() ActiveWindow.Selection.SlideRange.Shapes.AddShape(msoShapeRectangle, 150#, 192#, 168#, 126#).Select End Sub 2012-2013 INF112 - TD2 11

1. Algorithme vs programme Dessiner un objet en Algo (PositionX, PositionY) Cercle (PositionX, PositionY, Côté) Exemple : Cercle(252, 216, 174) CôtéX = CôtéY (PositionX, PositionY) Carré (PositionX, PositionY, côté) Exemple : Carré(252, 216, 174). CôtéX = CôtéY 2012-2013 INF112 - TD2 12

1. Algorithme vs programme Dessiner un Objet en VBA Sub UnCercle() ActiveWindow.Selection.SlideRange.Shapes.AddShape(msoShapeOval, 252#, 216#, 174#, 174#).Select End Sub Sub UnCarré() ActiveWindow.Selection.SlideRange.Shapes.AddShape(msoShapeRectangle, 252#, 216#, 174#, 174#).Select End Sub 2012-2013 INF112 - TD2 13

1. Algorithme vs programme Notion de programme Un programme est constitué d une suite d actions Algorithmique Algo «nom_action» Début {commentaire} Action 1 Action 2. Action n Fin Programmation VBA Sub nom_action commentaire : description de l action Action 1 Action 2.. Action n End Sub 2012-2013 INF112 - TD2 14

1. Algorithme vs programme Notion de programme Algo OvaleRouge Début Ovale(276, 120, 132, 312) Couleur(rouge) Fin Sub OvaleRouge() ActiveWindow.Selection.SlideRange.Shapes.AddShape (msoshapeoval, 276#, 120#, 132#, 312#).Select With ActiveWindow.Selection.ShapeRange.Fill.Visible = msotrue.fill.forecolor.rgb = RGB(255, 0, 0) End With End Sub 2012-2013 INF112 - TD2 15

1. Algorithme vs programme Notion de programme (OpenOffice) sub UnRond Dim Doc As Object Dim Page As Object Dim Circle As Object Dim Point As New com.sun.star.awt.point Dim Size As New com.sun.star.awt.size Algo OvaleRouge Début Ovale(276, 120, 132, 312) Couleur(rouge) Fin Doc = ThisComponent Page = Doc.DrawPages(0) Size.Width = 1320 Size.Height = 3120 Point.x = 2760 Point.Y = 1200 Circle = Doc.createInstance("com.sun.star.drawing.EllipseShape") Circle.Size = Size Circle.Position = Point Circle.FillColor = RGB(255,0,0) Page.add(Circle) end sub 2012-2013 INF112 - TD2 16

Plan 1. Algorithme vs Programme 2. Introduction à l algorithmique 3. Exercices 2012-2013 INF112 - TD2 17

2. Introduction à l algorithmique «Créer une chaîne» Problème : dessiner une chaîne de cercles de même taille (X,Y) 2012-2013 INF112 - TD2 18

2. Introduction à l algorithmique «Créer une chaîne» Action créer une chaîne Début Cercle (x, y, c) Cercle (x+c, y, c) Cercle (x+2*c, y, c) Cercle (x+3*c, y, c) Cercle (x+4*c, y, c). Et ainsi de suite jusqu au 9 ième cercle Fin 2012-2013 INF112 - TD2 19

2. Introduction à l algorithmique «Créer une chaîne» Action créer une chaîne Début Peut-on éviter d écrire 9 fois Cercle (x, y, c) l instruction «cercle»? Cercle (x+c, y, c) Cercle (x+2*c, y, c) Cercle (x+3*c, y, c) Cercle (x+4*c, y, c). Et ainsi de suite jusqu au 9 ième cercle Fin 2012-2013 INF112 - TD2 20

2. Introduction à l algorithmique Notion de répétition Action créer une chaîne Début Cercle (x, y, c) Cercle (x+c, y, c) Cercle (x+2*c, y, c) Cercle (x+3*c, y, c) Cercle (x+4*c, y, c). Fin Action créer une chaîne Début Fin Répéter 9 fois : Cercle (, y, c) 2012-2013 INF112 - TD2 21

2. Introduction à l algorithmique Notion de répétition Action créer une chaîne Début Cercle (x, y, c) Cercle (x+c, y, c) Cercle (x+2*c, y, c) Cercle (x+3*c, y, c) Cercle (x+4*c, y, c). Fin Introduction d une variable Pour «compter» Action créer une chaîne Début t 0 Répéter 9 fois : Cercle (x+t*c, y, c) t t+1 Fin répéter Fin 2012-2013 INF112 - TD2 22

2. Introduction à l algorithmique Notion de répétition Il existe deux façons de répéter une action : Tant qu une condition est vraie, faire Pour i=val_initiale jusqu à val_finale, faire 2012-2013 INF112 - TD2 23

2. Introduction à l algorithmique Exemple de la vie courante Soit une pile de vaisselle à laver Tant que la pile est «non vide» Prendre l assiette au dessus de la pile Laver l assiette, la rincer, la poser ailleurs Il y a 8 assiettes sur l égouttoir Pour i=1 jusqu à 8 Prendre l assiette au dessus de la pile Laver l assiette, la rincer, la poser ailleurs 2012-2013 INF112 - TD2 24

2. Introduction à l algorithmique Chaîne avec un «tant que» Algo «chainetantque» Début x, c, t : entier {Déclaration} c 50 x 100 t 0 tant que t<9 faire Cercle(x + t*c, 200, c) t t+1 Fin tant que Fin 2012-2013 INF112 - TD2 25

2. Introduction à l algorithmique Chaîne avec un «pour» Algo «chainepour» Début x, c, t : entier {Déclaration} c 50 x 100 Pour t=0 jusqu à 8 faire Cercle(x + t*c, 200, c) Fin Pour Fin 2012-2013 INF112 - TD2 26

2. Introduction à l algorithmique Vocabulaire : variable Algo «chainetantque» Début x, c, t : entier {Déclaration} c 50 x 100 t 0 tant que t<9 faire Cercle(x + t*c, 200, c) t t+1 Fin tant que Fin Variable : Nom générique d une donnée Type : Manière dont est codée l information contenue dans la variable (entier, réel, caractères ) Valeur : Contenu de la variable 2012-2013 INF112 - TD2 27

2. Introduction à l algorithmique Notion de variable Une variable dans un programme, c est un endroit pour y ranger des données Analogie de la vie courante : boîte à lettres Déclarer une variable, c est donner : un nom (pour pouvoir manipuler les données) une dimension (parce que la mémoire n est pas infinie) Déclarer une variable, c est réserver de la place dans la mémoire de l ordinateur 2012-2013 INF112 - TD2 28

2. Introduction à l algorithmique Déclaration de variable en VBA Algorithmique Algo «nom_action» Début t : entier {Déclaration d un entier} x : réel {Déclaration d un réel} ch :chaine {Déclaration d une chaîne de caractères} Action1 Action 2 Fin Programmation VBA Sub nom_action Dim t As Integer Déclaration d un entier Dim x As real Déclaration d un réel Dim ch As string Déclaration d une chaîne de caractères Action 1 Action 2.. End Sub 2012-2013 INF112 - TD2 29

2. Introduction à l algorithmique Affectation de variable u 0 {u prend pour valeur zéro} R 3.14 ch bonjour t u à gauche : Le nom de la variable (contenant à remplir) à droite : le nouveau contenu valeur, variable ou expression 2012-2013 INF112 - TD2 30

2. Introduction à l algorithmique Affectation de variable Initialisation : première affectation d'une variable t 0 t 12 u 50 u 20 t u+4 ch "bonjour" ch " au revoir" Incrémentation : augmentation de la valeur d'une variable t t+1 2012-2013 INF112 - TD2 31

2. Introduction à l algorithmique Retour sur les itérations 2012-2013 INF112 - TD2 32

2. Introduction à l algorithmique Retour sur les itérations 2012-2013 INF112 - TD2 33

2. Introduction à l algorithmique Retour sur les variables Algo «chainetantque» Début x, c, t : entier {Déclaration} c 50 x 100 Algo «chainepour» Début x, c, t : entier {Déclaration} c 50 x 100 t 0 {initialisation} Tant Que t <9 faire Fin Cercle(x, 200, c) x x + c t t + 1 {Incrémentation} Fin Tant Que Pour t=0 jusqu à 8 faire Cercle(x, 200, c) x x + c Fin Pour Fin 2012-2013 INF112 - TD2 34

Plan 1. Algorithme vs Programme 2. Introduction à l algorithmique 3. Exercices 2012-2013 INF112 - TD2 35

Exercice 1 : Chaîne de 25 cercles de 20 pixels de diamètre Utiliser une boucle «Pour» (dans la chaîne précédente le diamètres des cercles était de 50 pixels) 2012-2013 INF112 - TD2 36

Exercice 2 : Même chose avec la boucle «TantQue» 2012-2013 INF112 - TD2 37

Exercice 3 : Frise de 12 carrés de 30 pixels de côté espacés de 30 pixels 2012-2013 INF112 - TD2 38

Exercice 4 : Carrés emboîtés La taille du plus petit carré correspond à l espacement entre les carrés. La valeur prise pour le dessin est de 30 pixels, mais cette valeur doit être facilement modifiable. Si l on veut que le plus grand carré ne cache pas tous les autres, il faut tracer les carrés du plus grand au plus petit. 2012-2013 INF112 - TD2 39

Exercice 5 : Escalier de 6 carrés de 40 pixels de côté. 2012-2013 INF112 - TD2 40

Exercice 6 : Rosace Chaque élément fait 10 pixels dans sa plus petite dimension. 2012-2013 INF112 - TD2 41

Corrigé des exercices Ne pas imprimer sur le polycopié étudiant. 2012-2013 INF112 - TD2 42

Exercice 1 : Algo chaine25 Début x, y : entier {position de la chaîne} c : entier {diamètre d'un cercle} n : entier {nombre de cercles} t : entier {compteur d'itérations} x 100 y 200 c 20 n 25 Pour t=0 jusqu à n-1 faire Cercle(x + t * c, y, c) Fin Pour Fin 2012-2013 INF112 - TD2 43

Exercice 2 : Algo chaine25 Début x, y : entier {position de la chaîne} c : entier {diamètre d'un cercle} n : entier {nombre de cercles} t : entier {compteur d'itérations} x 100 y 200 c 20 n 25 t 0 Tant que t< n faire Cercle(x + t * c, y, c) t t + 1 Fin Tant Que Fin 2012-2013 INF112 - TD2 44

Exercice 3 : Algo Frise12Carres Début x, y : entier {position de la chaîne} c : entier {côté d'un carré} n : entier {nombre de carrés} t : entier {compteur d'itérations} x 10 y 300 c 30 n 12 Pour t=0 jusqu à n-1 faire Carré(x + 2 * t * c, y, c) Fin Pour Fin 2012-2013 INF112 - TD2 45

Exercice 4 : Algo CarresEmboites Début x, y, n, e, c : entier t : entier {compteur d'itérations} x 50 y 50 n 8 e 30 c e * n {position des carrés} {nombre de carrés} {Espace entre les carrés} {Côté du grand carré} Fin Pour t=0 jusqu à n-1 faire Carré(x, y, c) c = c - e Fin Pour 2012-2013 INF112 - TD2 46

Exercice 5 : Algo CarresEscalier Début x, y, n, e, c : entier t : entier {compteur d'itérations} x 50 {position des carrés} y 50 n 6 {nombre de carrés } c 30 {côté des carrés} Fin Pour t=0 jusqu à n-1 faire Carré(x, y, c) x = x + c y = y + c Fin Pour 2012-2013 INF112 - TD2 47

Exercice 6 : Algo Rosace Début x, y, c, n, a : entier t : entier {compteur d'itérations} x 100 y 100 {position des ovales } n 6 {nombre d ovales} c 10 {petit diamètre de l'ovale} a 180 / n {Angle de rotation des ovales} Fin Pour t= 1 jusqu à n faire Ovale(x, y, c, 10*c) Couleur (transparente) Rotation (a * t) Fin Pour 2012-2013 INF112 - TD2 48