Problème d'utilisation d'une tortue ( debutant )

Problème d'utilisation d'une tortue ( debutant ) - Java - Programmation

Marsh Posté le 09-02-2008 à 20:38:23    

Bonjour je débute en programmation en java ( je viens de faire 6 mois de ada ... ).
J'ai cherché tout l'après midi et je n'ai pas trouvé la réponse a mon problème.
 
Je dois à l'aide d'une tortue réaliser des dessins récursifs :  
voici le code du premier :  

Code :
  1. public class cemb {
  2.     public void carreemb(double L,int N) {
  3. if (N>0) {
  4.     tortue.av(L);
  5.     tortue.tg(Math.PI/2);
  6.     tortue.av(L);
  7.     tortue.tg(Math.PI/2);
  8.     tortue.av(L);
  9.     tortue.tg(Math.PI/2);
  10.     tortue.av(L/2);
  11.     tortue.tg(Math.PI/4);
  12.     carreemb(L/Math.sqrt(2),N-1);
  13.     tortue.av(L/2);
  14.     tortue.tg(Math.PI/4);
  15. }
  16. else {
  17.  tortue.td(Math.PI/4);
  18. }
  19.     }
  20.    
  21.     public static void main (String[] args) {
  22. WindowTurtleAWT tortue;
  23. tortue= new WindowTurtleAWT (900,700);
  24. tortue.baisser();
  25. double l = 300;
  26. int n = 4;
  27. carreemb(l,n);
  28.     }
  29. }


 
Il ne passe pas a la compilation en fait dans ma fonction récursive il ne connait pas la tortue ...
si je la déclare dans ma fonction récursive cela compile mais cela m'ouvre autant de fenetre d'appels de ma fonction ( normal )
Je vois pas comment faire  
( main est bien celle qui s'execute en 1er? )
faire un type private comme en ada?  
 
merci de m'éclairer
 :hello:  
 
si besoin je peux vous donner la tortue

Reply

Marsh Posté le 09-02-2008 à 20:38:23   

Reply

Marsh Posté le 10-02-2008 à 00:35:04    

Salut, je ne comprends pas trop ce que représente ton objet cemb mais pour que ça fonctionne, tu peux au choix :
_ ajouter un parametre "WindowTurtleAWT tortue" à la methode carreemb
_ ajouter un "private WindowTurtleAWT tortue" à la classe cemb, un constructeur "cemb(WindowTurtleAWT tortue)" et ensuite instancier cette classe dans le main.


---------------
[:arsunik]  Les tournois de badminton
Reply

Marsh Posté le 10-02-2008 à 11:42:28    

D'accord je vais essayer  
en fait cemb me permet de faire un dessin récursif ( la j'ai mis l'algorithme pour faire des carrés emboité sans relever "le crayon" )
 
par contre je viens d'essayer ce que tu as dit et ca ne compile toujours pas. Je suis en train de lire un cours complet de java, je vais voir si je trouve la reponse sinon je demanderais demain a la prof ( qui fait généralement des algo faux d'ailleur )
edit :
dans le premier cas il me dit qu'il y a une erreur dans l'appel récursif
dans le deuxieme le private ne passe pas


Message édité par debeman le 10-02-2008 à 11:45:14
Reply

Marsh Posté le 10-02-2008 à 13:43:31    

Tu reprogrammes le langage Logo en Java ? Cool!


---------------
A religious war is like children fighting over who has the strongest imaginary friend.
Reply

Marsh Posté le 11-02-2008 à 10:41:18    

C'est bon ca marche j'ai compris comment appliquer correctement ta premiere solution ArSunik  
merci  
par contre il y a un truc que je ne comprend pas mais ca doit venir de la tortue : elle ne sait pas tracer un segment en 2 coups les traits sont décales :(

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed