14 septembre 2012 : IMPORTANT : Lors de la compilation de votre programme, si vous obtenez un message d'erreur du type "An internal error occurred during: "xyz".
org/eclipse/jdt/debug/core/JDIDebugModel", veuillez taper dans le terminal
sudo apt-get --reinstall install tzdata-java
Il s'agit d'un problème qui survient lors de la mise à jour du système.
Il est fortement suggéré d'utiliser le navigateur Firefox pour réaliser cette activité.
Utilisez les liens :
- TUTORIELS
- EXERCICES
START ONLINE EDITOR
Cette application permet d'utiliser les éléments de programmation suivants :
Les structures de boucles de répétitions : while et for
les structures conditionnelles : if else et switch
les méthodes et variables
les évènements
la récursivité
les applets
etc.
Vous aurez à compléter 11 séries d'exercices. 3 points seront accordés pour chacun des exercices.
Au total, 39 exercices vous sont proposés.
Si vous désirez utiliser le logiciel GEANY (non suggéré pour les débutants) (sudo apt-get install geany) , cliquez ICI
Crééz un répertoire nommé votrenom_tg
Placez le fichier aplu5.jar dans ce répertoire
Utilisez geany afin d'écrire en enregistrer votre programme serie1no1.java
Compilez votre programme (création du fichier .class) en utilisant cette commande dans le terminal :
javac -classpath .:/home/cb/votrenom_tg/aplu5.jar /home/cb/votrenom_tg/serie1no1.java
Lancez votre programme en utilisant cette commande dans le terminal cd /home/cb/votrenom_tg && java serie1no1
Créez un fichier dans le répertoire /home/cb/votrenom_tg/ nommé manifest.txt
contenant Main-Class: s1no1
Class-Path: /home/cb/votrenom_tg/aplu5.jar
Créez ensuite votre fichier .jar
en tapant dans le terminal
cd /home/cb/votrenom_tg && jar -cvf0m serie1no1.jar manifest.txt serie1no1.class
Lancez votre fichier .jar en utilisant cette commande dans le terminal cd /home/cb/votrenom_tg && java -jar -cp /home/cb/votrenom_tg serie1no1.jar
Consultez au besoin la documentation disponible ICI
Liste des défis à réaliser
À partir du fichier en exemple présenté pour chacune des séries, réalisez un exercice au choix pour chacune des séries présentées sauf les exercices no 1 qui vous seront présentés par l'enseignant
Autre exemple Piste pour l'exercice 3 : utiliser une variable contenant une valeur aléatoire pour déterminer la longueur du trait et une autre variable aléatoire pour déterminer la couleur du trait
Piste pour l'exercice 4 : la couleur change si l'endroit où est situé la tortue est à une certaine distance du point milieu (0,0).
Utilisez la méthode distance(x,y) qui retourne la distance séparant la position de la tortue du centre du canevas.
Aucun fichier en exemple
Écrivez votre programme afin de réaliser le défi proposé en vous servant des exemples afin de réaliser chacun des exercices. Attention, utilisez la convention de nommage suivantes (en respectant les majuscules/minuscules):
Pour l'exercice SÉRIE 1 exercice no 1, nommez votre classe "Serie1no1"
Pour l'exercice SÉRIE 1 exercice no 2, nommez votre classe "Serie1no2"
Voici, pour vous aider, la solution à l'exercice Série 1 no 1 :
// Serie1no1.java
import ch.aplu.turtle.*;
class Serie1no1
{
Turtle pierre = new Turtle();
Serie1no1()
{
pierre.forward(100);
pierre.right(120);
pierre.forward(100);
pierre.right(120);
pierre.forward(100);
}
public static void main(String[] args)
{
new Serie1no1();
}
}
Voici une explication en exemple de code :
import ch.aplu.turtle.*;
// importation de la librairie turtle
class Serie1no1
// création de la classe Serie1no1
{
Turtle pierre = new Turtle();
// génération d'un nouvel objet nommé pierre à partir de la classe Turtle
Color(Color.red); // règle la couleur à rouge
Serie1no1()
// Serie1no1() est un constructeur de la classe serie1no1. Le constructeur a TOUJOURS le même nom que le nom de la classe.
{
}
pierre.forward(100);
// l'objet "Turtle" nommé pierre avance de 100 unités
pierre.right(120);
//l'objet "Turtle" nommé pierre tourne à droite de 120 degrés
...
public static void main(String[] args)
//Chaque application Java a besoin d'une méthode "main()" qui est toujours définie avec cette structure.
// La méthode main() est la première à être exécuter dans un programme. // Elle indique le début du programme.
new Serie1no1();
// Génération d'un nouvel objet de la classe "Serie1no1".
// Toutes les propriétés et méthodes définies à partir de son constructeur sont exécutés automatiquement.
ATTENTION - IMPORTANT :
Renommez votre classe en utilisant notre convention de nommage et modifiez dans votre programme toutes les références à cette classe., exemple :
Validez le fonctionnement de votre programme en utilisant le lien "Run Serie1no1" + Ouvrir avec - Sun Java 6 Web Start (javaws) + Executer
Au besoin, utilisez l'emplacement de Sun Java 6 Web Start : /usr/lib/jvm/java-1.7.0-openjdk-i386/bin/javaws
Téléchargez le fichier .jar
Téléchargez le fichier .jar dans votre espace de téléchargement
Méthode 2 : utilisation de l'éditeur Eclipse
Pour télécharger et installer Eclipse à la maison, consultez le site
http://www.eclipse.org/downloads/ et sélectionnez "Eclipse IDE for Java Developers, 149 MB" : 32 bit ou 64 bit selon votre ordinateur
Lancez le logiciel Eclipse
Sélectionnez le menu FILE + New Class et nommez votre programme selon notre convention de nommage
Écrivez votre programme afin de réaliser le défi proposé en vous servant des exemples afin de réaliser chacun des exercices. Attention, utilisez la convention de nommage suivantes (en respectant les majuscules/minuscules):
Pour l'exercice SÉRIE 1 exercice no 1, nommez votre classe "Serie1no1"
Pour l'exercice SÉRIE 1 exercice no 2, nommez votre classe "Serie1no2"
Voici, pour vous aider, la solution à l'exercice Série 1 no 1 :
// Serie1no1.java
import ch.aplu.turtle.*;
class Serie1no1
{
Turtle pierre = new Turtle();
Serie1no1()
{
pierre.forward(100);
pierre.right(120);
pierre.forward(100);
pierre.right(120);
pierre.forward(100);
}
public static void main(String[] args)
{
new Serie1no1();
}
}
Voici une explication en exemple de code :
import ch.aplu.turtle.*;
// importation de la librairie turtle
class Serie1no1
// création de la classe Serie1no1
{
Turtle pierre = new Turtle();
// génération d'un nouvel objet nommé pierre à partir de la classe Turtle
Color(Color.red); // règle la couleur à rouge
Serie1no1()
// Serie1no1() est un constructeur de la classe serie1no1. Le constructeur a TOUJOURS le même nom que le nom de la classe.
{
}
pierre.forward(100);
// l'objet "Turtle" nommé pierre avance de 100 unités
pierre.right(120);
//l'objet "Turtle" nommé pierre tourne à droite de 120 degrés
...
public static void main(String[] args)
//Chaque application Java a besoin d'une méthode "main()" qui est toujours définie avec cette structure.
// La méthode main() est la première à être exécuter dans un programme. // Elle indique le début du programme.
new Serie1no1();
// Génération d'un nouvel objet de la classe "Serie1no1".
// Toutes les propriétés et méthodes définies à partir de son constructeur sont exécutés automatiquement.
ATTENTION - IMPORTANT :
Renommez votre classe en utilisant notre convention de nommage et modifiez dans votre programme toutes les références à cette classe., exemple :
Compilez et validez votre programme en utilisant le menu RUN + RUN ou la touche de raccourci CTRL + F11
Créez votre fichier .jar en utilisant le menu le menu FILE + EXPORT + JAVA + RUNNABLE JAR FILE + ...
Lancez votre programme .jar (pour validation) en tapant dans le terminal : java -jar Serie1no1.jar
Téléchargez le fichier .jar dans votre espace de téléchargement
Étape finale : production de votre page à envoyer à l'enseignant
Ajoutez une page à votre portfolio en affichant l'assistant HTML ainsi que la directive 84962
Voir
Inscrivez dans le champ titre : Turtle Graphic Série 1 no 1
Sélectionnez la section : MODULE ROBOTIQUE
Sélectionnez la matière : informatique
Inscrivez dans le champ no de la directive : 84962
Inscrivez dans votre page le titre de niveau 1 : Turtle Graphic
Indiquez le titre de l'exercice :
Exemple : Série 1 no 1
Copiez et collez le code de votre programme entre les balises
et
Commentez chacune des lignes (nouvelles) de votre programme en plaçant // devant chacun de vos commentaires (voir au bas de cette page pour les explications de chacune des commandes java).
Ajoutez un LIEN (Jaune) vers le fichier .jar
Ajoutez un LIEN vers le site des exercices : utilisez cet URL
Visualisez votre page et apportez des modifications au besoin.
Résumé des principales commandes java spécifiquement liées à la librairie Turtle
.forward(100); // avance de 100 unités
.back(100); // recule de 100 unités
.right(90) ; //1 tourner à droite de 90 degrés
.left(90) ; // tourner à gauche de 90 degrés
Turtle luka = new Turtle(); // création de la tortue nommée luka dans sa propre fenêtre
Turtle luka = new Turtle(joe); // création de la tortue nommée luka dans la fenêtre de la tortue joe
.speed(10); // régler la vitesse de déplacement de la tortue à 10
.setPos(0, 160); // régler la position de la tortue
.setColor(Color.red); // régler la couleur de la tortue
.setPenColor(Color.red); // régler la couleur du trait
.penErase(); // efface
.setFillColor(Color.red);règle la couleur de remplissage
.fill(1,1);verser la couleur de remplissage au point 1,1
.getPos(); // obtenir la position de la tortue
.distance(x, y) ; // obtenir la distance entre le poitn x,y et la tortue
.label(text) ; // écrire un texte
.setFont(Font font); // régler la poilice de caractère
.setFontSize(size); // régler la taille de la police
.penUp(); // soulever le crayon
.penDown(); // déposer le crayon
hideTurtle(); //masquer la tortue
showTurtle(); //afficher la tortue
Résumé des principales commandes communes au langage java
int i = 0; // création de la variable i et assignation de la valeur 0 à cette variable
i++; // incrémentation de la variable i de 1
for (int i = 0; i < 4; i++) //répéter avec la variable i valant 0 jusqu'à ce que la variable i soit plus petite que 4 en utilisant une incrémentation de 1
while (i < 4) // répéter pendant que la variable i soit plus petite que 4
switch(k)
{
case 0:
...
break;
case 1:
...
break;
case 2:
...
break;
default:
...
}
//L'instruction switch équivaut à une série d'instructions if . En de nombreuses occasions, vous aurez besoin de comparer la même variable (ou expression) avec un grand nombre de valeurs différentes, et d'exécuter différentes parties de code suivant la valeur à laquelle elle est égale. C'est exactement à cela que sert l'instruction switch .
void square(){...} // création de la méthode nommée square
double a = 100; //création de la variable de type double nommée a et assignation de la valeur 100 à cette variable
private // visible seulement dans sa propre classe
public //visible partout
protected //visible dans le même paquet et dans la sous-classe
import ch.aplu.turtle.*; // importation de la librairie turtle
class Serie1no1 // création de la classe Serie1no1
Serie1no1() // Serie1no1() est un constructeur de la classe serie1no1. Le
constructeur a TOUJOURS le même nom que le nom de la classe. {
}
public static void main(String[] args)
//Chaque application Java a besoin d'une méthode "main()" qui est toujours définie avec cette structure.
// La méthode main() est la première à être exécuter dans un programme.
// Elle indique le début du programme.
new Serie1no1();
// Génération d'un nouvel objet de la classe "Serie1no1".
// Toutes les propriétés et méthodes définies à partir de son constructeur sont exécutés automatiquement.
Les types de variables
int //entiers entre -231 et 231-1
long //entiers entre -263 et 263-1
double //nombre décimaux
boolean //valeur Vrai (true) ou Faux (false)
char //chaîne de caractères (texte)