Introduction à Java et à l'algorithmique
L1 MASS - 2012 / 2013
Chez moi ?
L'installation de Processing chez vous
Année passée
site web 11/12
Questions ?
Contactez moi
News
Les dernières news (par ordre chronologique) :
- 25/05/13: Les notes de projet sont disponible sur jalon.
- 25/05/13: Correction disponible du contrôle terminal
- 22/05/13: Pas de TP informatique le vendredi 24 mai
- 21/05/13: Certains projets de la promotion sont disponibles
- 07/05/13: Oral projet: déposez votre présentation au format pdf dans la boite de dépot jalon avant le 16 mai 23h55.
- 07/05/13: Contrôle terminal vendredi 24 mai de 11h30 à 13h en amphi M.
- 07/05/13: TP pour tous les étudiants le Vendredi 17 mai de 8h à 9h en PV.213.
- 03/04/13: L'énoncé complet du projet est disponible.
- 25/03/13: De nouvelles réalisations sont disponibles dont les effets sont garantis...
- 14/03/13: Séance de révision organisée par le BDE MASS mardi 19 à partir de 17h (salle voir affiche amphi M).
- 07/03/13: Le TP du groupe B avec R. Lecat en PV213 de vendredi 8 mars de 9h45 à 11h15 est reporté au lundi 11 mars en PV213 de 16h45 à 18h15.
- 03/03/13: Rappel : Parcours ESD, devoir surveillé le mercredi 6 mars 2013 entre 11h30 et 12h en amphi M.
- 22/02/13: La correction du TP 03 est disponible.
- 15/02/13: La correction du TP 02 est disponible.
- 14/02/13: Première réalisation de la promotion.
- 13/02/13: Corrections, cours, fiche TP sont disponibles.
- 24/01/13: Premier CM vendredi 01/02/13 de 11h30 à 13h, Amphi M.
- 24/01/13: Premiers TP vendred 08/02/13 de 8h à 11h15, cf horaire.
- 24/01/13: Welcome : site est ouvert !
Descriptif
Ce cours expose les bases de l'algorithmique à l'aide du langage de programmation java. Il permet de commencer à se familiariser avec un langage de programmation objet. L'approfondissement de l'étude de ce langage se poursuivra en Licence 3. Nous utiliserons l'environnement processing qui simplifie la synthaxe JAVA et permet facilement de donner une dimension multimédia au programme.
hautEquipe enseignante
- Rosa Lecat
- Francis Avenin
- Sébastien Verel (Resp.)
Vous pouvez nous contacter pour tout ce qui concerne cet enseignement et votre orientation. haut
Evaluation
Les modalités d'évaluation sont :
- Parcours SEMS (4 ECTS) :
- Un devoir surveillé (30%) : vendredi 22 mars 2013, entre 11h30 et 13h,
- Un projet (25%) : commencant le 22 mars et finissant le vendredi 3 mai 2013 (extension jusqu'au dimanche 5 mai), soutenance le 17 mai 2013,
- Un controle terminal (40%) : vendredi 24 mai de 11h30 à 13h en amphi M,
- Présences et participation (5%) : présences obligatoires et participation aux synthèses et réalisations.
- Parcours ESD (2 ECTS) :
- Un devoir surveillé (30%) : le mercredi 6 mars 2013, entre 11h30 et 12h, amphi M (aucun support de cours ou de TP n'est autorisé pendant l'épreuve),
- Un controle terminal (65%) : vendredi 22 mars 2013, entre 11h30 et 13h,
- Présences et participation (5%) : présences obligatoires et participation aux synthèses et réalisations.
Enoncé et correction : code pdf du devoir surveillé du parcours ESD et SEMS.
Enoncé et correction : code pdf du contrôle terminal du parcours SEMS.
Retrouver les devoirs de l'année 2012.
haut
PROJET
Sujet
Les informations concernant le projet sont dans ce document.Quelques projets de la promotion :
Et voilà après de longs efforts, les projets sont enfin réalités :- SIMPSONS the 'wannabe' game par Dragos COJOCARU et Julien RAINOIRD
Rendre le projet
Le projet était à rendre le dimanche 5 mai avant 23h55 par la plateforme jalon.Oral
Les présentations en personne ont lieu le :- Vendredi 17 mai de 9h30 à 13h00 (cf. ordre de passage) salle PV.302.
A FAIRE: vous devez déposer votre présentation au format pdf dans la boite de dépot jalon avant le 16 mai 23h55.
Vous êtes nombreux, il n'est pas possible de prendre du retard. Le temps est décompté de la manière suivante :
- 2 minutes pour le changement et l'installation
- 7 minutes de présentation et démonstration
- 1 minute de question
Pour votre présentation qui devra se faire sous forme de présentation de type "powerpoint", les logiciels OpenOffice et acrobatReader (format pdf) sont à disposition. La définition de l'écran est de 800x600px. Vous devrez avoir votre présentation sur une clé usb (de préférence au format pdf) ou sur votre propre ordinateur.
Vous trouverez de nombreux conseils trés utiles sur le web pour réussir cette épreuve. La grille d'évaluation est disponible ici pour vous guider.
haut
Objectifs
Liste des objectifs de l'enseignement sur lequel repose les évaluations :
- Connaitre des algorithmes historiques
- Connaitre une définition d'algorithme
- Connaitre l'environnement Processing
- Editer et commenter un code java avec processing
- Savoir afficher un texte
- Savoir afficher des formes graphiques simples
- Ecrire un algorithme avec des affectations
- Ecrire un algorithme qui echange la valeur de deux variables
- Savoir utilisés les entrées de la souris avec Processing
- Ecrire un algorithme avec des tests simples
- Ecrire un algorithme avec un test multiple
- Ecrire des programmes java avec des tests simples ou multiples
- Ecrire un algorithme avec une itération de type "pour"
- Ecrire un algorithme avec des itérations imbriquées de type "pour"
- Ecrire un algorithme avec des l'itérations de type "tant que"
- Contrôler les événements clavier avec Processing
- Ecrire un algorithme correct d'au moins 8 lignes
- Connaître le principe de séparation de code
- Ecrire correctement une méthode java
- Comprendre et calculer le résultat d'un algorithme donné
- Modifier un algorithme donné
- Utiliser une partie d'algorithme donné
- Corriger un algorithme donné
- Lire et enregistrer une valeur dans un tableau
- Recherche des valeurs extrémales d'un tableau
- Utilisation d'un accumulateur pour réaliser un calcul dans un tableau
- Savoir concevoir un jeu de tests pour un algorithme
- Savoir inspecter les valeurs de certaines données d'un algorithme
- Faire la différence entre aléatoire et pseudo-aléatoire
- Simuler un nombre pseudo-aléatoire entier ou flottant entre 2 bornes données
- Ecrire un algorithme utilisant un générateur pseudo-aléatoire
- Ecrire un algorithme qui génére des séries temporelles du type u(t+1) = a u_t + b + e et u(t+1) = (a + e) u(t) + b
- Connaitre une définition d'objet et classe
- Savoir déclarer un objet d'une classe donnée
- Savoir utiliser les champs et les méthodes
- Savoir utiliser la documentation de l'API de Java,
- Connaitre les classes String, Point et Random
- Savoir définir une méthode toSTring
- Connaitre la notion de références d'objet
- Savoir déclarer une classe (champs, contructeurs, et méthodes)
- Recherche itérative d'un élément dans un tableau
- Recherche dichotomique d'un élément dans un tableau
- Dénombrement d'un élément dans un tableau
- Dénombrement d'un élément dans deux tableaux en parallèle
- Savoir utiliser "this" en Processing
- Savoir utiliser la classe ArrayList
- Savoir utiliser un héritage simple entre classes en Processing
- Ecrire un algorithme récursif avec un seul test
- Etablir le lien entre définition par récurrence et algorithme récursif
- Recherche dichotomique d'un élément dans un tableau
Installation de processing
Téléchargez le logiciel à l'adresse http://www.processing.org (Download) et installez-le. Voici un guide de configuration.
Voici un extrait gratuit du livre de Reas & Fry et une traduction de l'Ecole d'Art d'Aix-en-Provence.
Un très bon manuel d'utilisation est d'installation en français ici.
Une courte page wikipedia sur processing.
Enfin un cours s'adressant aux étudiants de Licence 1 math/informatique de Jean-Paul Roy.
Supports de Cours et de TP
Voici l'ensemble des supports de cours (avec le code source des exemples), des émoncés des TP, et le code source des corrections.
Séance | Titre | cours | Ex. | TP | cor. |
---|---|---|---|---|---|
01 | Introduction à l'algorithmique et à JAVA | cours | tp | cor | |
02 | Algorithmes conditionnels | cours | ex | tp | cor |
03 | Algorithmes itératifs | cours | ex | tp | cor |
04 | Séparation de code et fonctions | cours | tp | cor | |
05 | Structures de données indexées | cours | ex | tp | cor |
06 | Simuler l'aléatoire | cours | ex | tp | cor |
07 | Séparation de code, classes et objets | cours part1 part2 | tp | cor | |
08 | Créer ses propres classes et objets | cours | ex | tp | cor |
09 | Compléments sur les objets | cours part1 part2 | ex | tp | cor |
10 | Recherche et dénombrement dans les tableaux | cours | ex | tp exo1 | cor |
11 | Algorithmes récursifs | cours | tp | cor | |
12 | Modélisation et Simulation | cours | tp | cor |
Vos réalisations
Voici quelques réalisations de la promotion :
- Auteur : Arnaud Cadas
Petit commentaire de l'auteur : "Voici un petit exemple que j'ai fait avec processing, c'est un monstre comme on devait faire dans le TD 1 mais on peut aussi le déplacer avec la souris (je me suis inspiré de votre exemple avec le point que vous déplaciez avec la souris dans le cours n°2)."
Le Monstre à télécharger - Auteur : Thomas Tridon
Un autre monstre à surgir un peu plus tard
Le Monstre à télécharger - Auteur : Mariama Barry
Une mystérieuse colonie de bêtes rouges se déplace en coeur sur le sable
Animation à télécharger - Auteur : Anaïs Dos Santos
Une pluie d'étoiles du plus bel effet !
télécharger - Auteur : Celine Maniscalco
Petit commentaire de l'auteur : "un programme que j'ai crée qui consiste à afficher sur l'écran soit un cercle soit un rectangle dont les positions, les tailles et les couleurs sont des nombres pris au hasard."
J'ajouterai que l'effet "ambiance boite de nuit" n'est pas loin...
télécharger - Auteur : Myriam Fakir
Une nouvelle espèce de fleurs pivotantes
télécharger - Auteur : Rémi Kaeffer
Un tapis de petits cercles multicolores glissants vers l'infini
télécharger - A venir...
Emploi du temps
- Parcours SEMS (4 ECTS) : 12 CM et 12 TP
- Parcours ESD (2 ECTS) : 6 CM et 6 TP
- cours : vendredi de 11h30 à 13h, Amphi M
- tp (gr A) : vendredi de 8h à 9h30, PV 213 et 212
- tp (gr B) : vendredi de 9h45 à 11h15, PV 213 et 212
dernière modification : 5 mars 2013