IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Caml Discussion :

Jeu des vaisseaux


Sujet :

Caml

  1. #1
    Candidat au Club
    Inscrit en
    Novembre 2010
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Novembre 2010
    Messages : 6
    Points : 3
    Points
    3
    Par défaut Jeu des vaisseaux
    Bonjour tout le monde,

    je suis en 2e année d'une Licence Informatique, j'ai peu de connaissances en ce domaine pour le moment, et j'ai deux gros projets à rendre d'ici deux mois.
    Je souhaite solliciter votre aide sur l'un des deux, je visite souvent votre site pour ces tutoriels (plus complet que mes cours), pour ça déjà je vous remercie car sans ceux-ci mon projet n'aurait pas autant avancé.

    Le but en gros est de deplacer un vaisseau bleu et de detruire des vaisseaux rouges. Quand ils sont tous détruits, on en régénère le double.

    J'ai réussi grossièrement en recopiant ma fonction "lancer2" ci-dessous avec plusieurs autre variables, mais je sait que mon deuxième argument devrait être une liste de vaisseau, et je n'arrive pas à l'implanter...
    Si quelqu'un peut m'apporter une solution, même une idée serait génial.

    Voici le code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    221
    222
    223
    224
    225
    226
    227
    228
    229
    230
    231
    232
    233
    234
    235
    236
    237
    238
    239
    240
    241
    242
    243
    244
    245
    246
    247
    248
    249
    250
    251
    252
    253
    254
    255
    256
    257
    258
    259
    260
    261
    262
    263
    264
    265
    266
    267
    268
    269
    270
    271
    272
    273
    274
    275
    276
    277
    278
    279
    280
    281
    282
    283
    284
    285
    286
    287
    288
    289
    290
    291
    292
    293
    294
    295
    296
    297
    298
    299
    300
    301
    302
    303
    304
    305
    306
    307
    308
    309
    310
    311
    312
    313
    314
    315
    316
    317
    318
    319
    320
    321
    322
    323
    324
    325
    326
    327
    328
    329
    330
    331
    332
    333
    334
    335
    336
    337
    338
    339
    340
    341
    342
    343
    344
    345
    346
    347
    348
    349
    350
    351
    352
    353
    354
    355
    356
    357
    358
    359
    360
    361
    362
    363
    364
    365
    366
    367
    368
    369
    370
    371
     
    (*----------------------------------------------------------------------------)
    (-----------------------------------------------------------------------------)
    (----------------------                                  ---------------------)
    (---------------------- PROJET OCAML - JEU DES VAISSEAUX ---------------------)
    (----------------------                                  ---------------------)
    (-----------------------------------------------------------------------------)
    (-----------------------------------------------------------------------------)
    (---BUT DU JEU = A bord du vaisseau Delta-85, votre mission sera de detruire--)
    (---l'invasion ennemi, commandé par le Général Kam-L , au sein de la Galaxie--)
    (---Andromède. Pour cela, il faudra attendre leurs périodes de chargement:----)
    (---ils seront alors de couleur verte et leurs moteurs seront éteints. -------)
    (---C'est-à-dire qu'ils seront vulnérables pendant ce temps-là, profitez-en!--)
    (-----------------------------------------------------------------------------)
    (-----------------------------------------------------------------------------)
    (--------------------------------Bonne Chance!--------------------------------)
    (-----------------------------------------------------------------------------)
    (-----------------------------------------------------------------------------)
    (---COMMANDES = Pour se déplacer, utiliser les touches 'z','q','s' et 'd' ----)
    (------------------------comme touches directionnelles------------------------)
    (----------------------------------------------------------------------------*)
     
     
    #load "graphics.cma";;
     
    open Graphics;; 
    open Random;; 
    open List;;
     
    open_graph " 610x610 ";;
     
    set_window_title "JEU DES VAISSEAU " ;;
     
     
    type coordonnees   = { abscisse : int ; ordonnee : int } ;;
     
     
    type vaisseau      = { centre : coordonnees ; rayon : int ; 
                           direction : coordonnees ; couleur : color } ;;
     
     
    type plus_vaisseau = { prem: vaisseau; deux: vaisseau } ;;
     
     
    type change_coul   = { coul: color ; entier: int } ;;
     
     
     
    (*--------MON VAISSEAU------------------------------------------------------*)
     
     
    let deplacement v d=  
      match d with
        'z' -> {centre    = { abscisse = v.centre.abscisse ;
    	                  ordonnee =
                                 if (v.centre.ordonnee < 600) then
    			       (v.centre.ordonnee + 20)
    		             else
    			       0 } ;
                rayon     = v.rayon ;
                direction = v.direction ;
    	    couleur   = v.couleur }
     
       |'s' -> {centre    = { abscisse = v.centre.abscisse ;
                              ordonnee =
    	                    if (v.centre.ordonnee > 0) then
    		              (v.centre.ordonnee - 20)
    		            else
    			      600 } ;
                rayon     = v.rayon ;
                direction = v.direction ;
                couleur   = v.couleur }
     
       |'q' -> {centre    = { abscisse = 
    	                    if (v.centre.abscisse > 0) then
    			      (v.centre.abscisse - 20)
    			    else
    			      600 ;
    	                  ordonnee = v.centre.ordonnee} ;
                rayon     = v.rayon ;
                direction = v.direction ;
    	    couleur   = v.couleur } 
     
       |'d' -> {centre    = { abscisse =
    	                    if  v.centre.abscisse < 600 then
    			      (v.centre.abscisse + 20)
    			    else
    			      0 ;
    	                   ordonnee =  v.centre.ordonnee } ;
                rayon     = v.rayon ;
                direction = v.direction ;
    	    couleur   = v.couleur }
     
       |_   -> {centre    = { abscisse = v.centre.abscisse ;
    			  ordonnee = v.centre.ordonnee } ;
                rayon     = v.rayon ;
    	    direction = v.direction ;
    	    couleur   = v.couleur } ;;
     
     
    let notre_vaisseau () = { centre    = { abscisse = 300;
    				        ordonnee = 300 } ;
    			  rayon     = 25 ;
    			  direction = { abscisse = 1;
    					ordonnee = 1 } ;
    			  couleur   = blue } ;;
     
     
     
    (*---------------------------VAISSEAU ENNEMI---------------------------------*)
     
    let centre_ennemi () = 
      let a = (int 4)
      in match a with
        0 -> {  abscisse = (int 150)       ; ordonnee = (int 600)       }
       |1 -> {  abscisse = (int 600)       ; ordonnee = (int 150) + 450 }  
       |2 -> {  abscisse = (int 150) + 450 ; ordonnee = (int 600)       }
       |_ -> {  abscisse = (int 600)       ; ordonnee = (int 150)       }
     
     
     
    let vaisseau_ennemi () =  { centre    = centre_ennemi (); 
    			    rayon     = 15;
    			    direction = {abscisse = 1; ordonnee = 1} ;
    			    couleur = red } ;;
     
     
    let vaisseau_charge v =  {  centre    = v.centre ;
    			    rayon     = v.rayon ;
    			    direction = v.direction ;
    			    couleur   = green } ;;
     
     
    (*beaucoup trop lourd -> optimisé*)
    let nouvelle_position v=
      let x= (v.centre.abscisse)
      and y= (v.centre.ordonnee) in
        match (x,y) with
          (xx,yy) when (((xx - (v.rayon)) = 0) && ((yy + (v.rayon)) = 600)) -> 
    	{ centre    = { abscisse = (xx+1); ordonnee = (yy-1)} ;
    	  rayon     = v.rayon ;
    	  direction = { abscisse = (int 3) ; ordonnee = -(int 3) } ;
    	  couleur   = v.couleur }
         |(xx,yy) when (((xx - (v.rayon)) = 0) && ((yy + (v.rayon)) = 0)) -> 
    	{ centre    = { abscisse = (xx+1); ordonnee = (yy+1)} ;
    	  rayon     = v.rayon ;
    	  direction = { abscisse = (int 3) ; ordonnee = (int 3) } ;
    	  couleur   = v.couleur }
         |(xx,yy) when (((xx - (v.rayon)) = 600) && ((yy + (v.rayon)) = 600)) -> 
    	{ centre    = { abscisse = (xx-1); ordonnee = (yy-1)} ;
    	  rayon     = v.rayon ;
    	  direction = { abscisse = -(int 3) ; ordonnee = -(int 3) } ;
    	  couleur   = v.couleur }
         |(xx,yy) when (((xx - (v.rayon)) = 600) && ((yy + (v.rayon)) = 0)) -> 
    	{ centre    = { abscisse = (xx-1); ordonnee = (yy+1)} ;
    	  rayon     = v.rayon ;
    	  direction = { abscisse = -(int 3) ; ordonnee = (int 3) } ;
    	  couleur   = v.couleur }
         |(xx,yy) when ((yy + (v.rayon)) = 600) ->
            (let dx = (v.direction.abscisse)
    	 and dy = (v.direction.ordonnee) in
    	   match (dx,dy) with
    	     (-1,1) -> { centre    = { abscisse = (xx-1) ;
    				       ordonnee = (yy-1) };
    			 rayon     = v.rayon ;
    			 direction = { abscisse = -1 ;
    				       ordonnee = -1 } ;
    			 couleur   = v.couleur }
                |(1,1)  -> { centre    = { abscisse = (xx+1) ;
    				       ordonnee = (yy-1) };
    			 rayon     = v.rayon ;
    			 direction = { abscisse = 1 ;
    				       ordonnee = -1 } ;
    			 couleur   = v.couleur })
         |(xx,yy) when ((xx - (v.rayon)) = 0) ->
            (let dx = (v.direction.abscisse)
    	 and dy = (v.direction.ordonnee) in
    	   match (dx,dy) with
    	     (-1,-1)-> { centre    = { abscisse = (xx+1) ;
    				       ordonnee = (yy-1) };
    			 rayon     = v.rayon ;
    			 direction = { abscisse = 1 ;
    				       ordonnee = -1 } ;
    			 couleur   = v.couleur }
                |(-1,1) -> { centre    = { abscisse = (xx+1) ;
    				       ordonnee = (yy+1) };
    			 rayon     = v.rayon ;
    			 direction = { abscisse = 1 ;
    				       ordonnee = 1 } ;
    			 couleur   = v.couleur })
         |(xx,yy) when ((yy - (v.rayon)) = 0) ->
            (let dx = (v.direction.abscisse)
    	 and dy = (v.direction.ordonnee) in
    	   match (dx,dy) with
    	     (1,-1) -> { centre    = { abscisse = (xx+1) ;
    				       ordonnee = (yy+1) };
    			 rayon     = v.rayon ;
    			 direction = { abscisse = 1 ;
    				       ordonnee = 1 } ;
    			 couleur   = v.couleur }
                |(-1,-1)-> { centre    = { abscisse = (xx-1) ;
    				       ordonnee = (yy+1) };
    			 rayon     = v.rayon ;
    			 direction = { abscisse = -1 ;
    				       ordonnee = 1 } ;
    			 couleur   = v.couleur })
         |(xx,yy) when ((xx + (v.rayon)) = 600) ->
            (let dx = (v.direction.abscisse)
    	 and dy = (v.direction.ordonnee) in
    	   match (dx,dy) with
    	     (1,-1) -> { centre    = { abscisse = (xx-1) ;
    				       ordonnee = (yy-1) };
    			 rayon     = v.rayon ;
    			 direction = { abscisse = -1 ;
    				       ordonnee = -1 } ;
    			 couleur   = v.couleur }
                |(1,1)  -> { centre    = { abscisse = (xx-1) ;
    				       ordonnee = (yy+1) };
    			 rayon     = v.rayon ;
    			 direction = { abscisse = -1 ;
    				       ordonnee = 1 } ;
    			 couleur   = v.couleur })
         |_ -> {centre    = {abscisse = (x+v.direction.abscisse) ;
    		         ordonnee = (y+v.direction.ordonnee) };
    	    rayon     = v.rayon ;
    	    direction = {abscisse = (v.direction.abscisse) ;
    			 ordonnee = (v.direction.ordonnee) };
    	    couleur   = v.couleur } ;; 
     
     
    (*----------------------------Temps d'attente--------------------------------*)
     
     
    let rec recharge = function
       0      -> ()
      |_ as n -> (recharge (n-1)) ;;
     
     
    (*---------------------------FORME DES VAISSEAUX-----------------------------*)
     
     
    let dessiner_vaisseau v = 
      let a = (set_color v.couleur) in     
        ( fill_circle (v.centre.abscisse) (v.centre.ordonnee) (v.rayon) );;
     
    let effacer_vaisseau v = 
      let a = (set_color black) in 
        ( fill_circle (v.centre.abscisse) (v.centre.ordonnee) (v.rayon) );;
     
     
    (*-------------------------EXPLOSION DES VAISSEAUX---------------------------*)
     
     
    let explosion v1 v2 =
      ((v1.centre.abscisse -  v2.centre.abscisse) <= 17) 
       && ((v1.centre.abscisse - v2.centre.abscisse) >= -17) ;; (*Optimisé?*)
     
     
    (*----------------------------CORPS DU PROGRAMME-----------------------------*)
     
     
    let rec lancer2 v1 v2 t = (*J'ai rajouter un vaisseau v3, v4 mais il faudrait 
    			       que ce soit une liste*)
      if (t>0) then
        begin
          if (key_pressed ()) then
    	begin
              dessiner_vaisseau v1;
              dessiner_vaisseau v2;
    	  recharge 150000;
              effacer_vaisseau v1;
    	  effacer_vaisseau v2;
              lancer2 (deplacement v1 (read_key ())) (nouvelle_position v2) (t-1) 
    	end
          else
    	begin	  
              dessiner_vaisseau v1;
              dessiner_vaisseau v2;
    	  recharge 150000;
              effacer_vaisseau v1;
    	  effacer_vaisseau v2;
              lancer2 v1 (nouvelle_position v2) (t-1)
    	end
        end
      else
        begin
          let rec lancer v3 v4 t2 =
    	if not(explosion v3 v4) then
    	  begin
    	    if (t2 > 0) then
    	      begin 
    		if (key_pressed ()) then 
    		  begin
    		    dessiner_vaisseau v3;
    		    dessiner_vaisseau v4;
    		    recharge 150000;
    		    effacer_vaisseau v3;
    		    lancer (deplacement v3 (read_key ())) v4 (t2 - 1)
    		  end
    		else
    		  begin
    		    dessiner_vaisseau v3;
    		    dessiner_vaisseau v4;
    		    lancer v3 v4 (t2 - 1)
    		  end
    	      end
    	    else
    	      begin
    		effacer_vaisseau (vaisseau_charge v4);
    		effacer_vaisseau v3;
    		lancer2 v3 v4 (int 5000)
    	      end 
    	  end
    	else
    	  () 
          in lancer v1 (vaisseau_charge v2) 200000
        end
    ;;
     
     
    let liste_vaisseau v = [v;v] ;;
     
     
    (* texte de debut *)
    let rec entree c =
      if c='q' then
        clear_graph ()
      else
      if key_pressed () then
        ((moveto 210 270);
        (draw_string "NIVEAU 1 - Pour commencer appuyer sur 'Q' ");
        (entree (read_key ())))
      else
        ((moveto 210 270);
        (draw_string "NIVEAU 1 - Pour commencer appuyer sur 'Q' ");
        (entree 'a'));;
     
     
    (*fond d'écran*)
    let fond_decran v = 
      let a = (set_color v) in 
        (fill_rect 0 0 610 610) ;;
     
     
    (*let ciel_etoile = 
        plots (array of (50,50)) -> black *)
     
    (*ciel_etoile ;;*)
     
     
    (* texte de fin*)
    let rec sortie c =
      if c='q' then
        clear_graph ()
      else
      if key_pressed () then
        ((moveto 300 300);
        (draw_string "C'EST GAGNE!! - Appuyer sur 'Q' ");
        (sortie (read_key ())))
      else
        ((moveto 300 300);
        (draw_string "C'EST GAGNE!! - Appuyer sur 'Q' ");
        (sortie 'z'));;
     
     
    entree 'z' ;;
    fond_decran black;;
    lancer2 (notre_vaisseau ()) (vaisseau_ennemi ()) (int 5000) ;;
    clear_graph () ;;
    sortie 'z';;
    close_graph () ;;

    PS: Je ne peux pas beaucoup aidé en retour car mes connaissances sont assez limités, je programme en Pascal et en Caml pour le moment, mais dans les mois à venir j'en serait déjà un peu plus et je m'amuserait peut-etre à trouver des solutions à des petits jeux comme celui-ci

    Merci d'avance.

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    309
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 309
    Points : 928
    Points
    928
    Par défaut
    Citation Envoyé par Leonidas_ Voir le message
    je suis en 2e année d'une Licence Informatique, j'ai peu de connaissances en ce domaine pour le moment, et j'ai deux gros projets à rendre d'ici deux mois.


    J'ai réussi grossièrement en recopiant ma fonction "lancer2" ci-dessous avec plusieurs autre variables, mais je sait que mon deuxième argument devrait être une liste de vaisseau, et je n'arrive pas à l'implanter...
    Si quelqu'un peut m'apporter une solution, même une idée serait génial.

    Voici le code:
    [12 pages de truc]


    PS: Je ne peux pas beaucoup aidé en retour
    Merci d'avance.
    Euh, c'est une blague ? Comme tu le dis, tu es en licence, et tu as un projet à rendre. Si à la fin tu as un diplôme, ce serait bien que tu saches faire quelque chose, tu ne penses pas ?
    Que tu viennes chercher de l'aide sur un point précis, ok, pourquoi pas. Mais là, tu veux clairement qu'on fasse le boulot pour toi.
    Je me permets de te signaler que même si la France a le culte du diplôme, si tu n'as pas les connaissances attendues derrière, ça va finir par se voir, et tu n'auras pas de boulot.
    Bref, si tu as une vraie question, pose la. Sinon, bah euh... bosse :-\

  3. #3
    Candidat au Club
    Inscrit en
    Novembre 2010
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Novembre 2010
    Messages : 6
    Points : 3
    Points
    3
    Par défaut
    Pas besoin d'être aussi sarcastique, si tu n'as pas envie d'aider (et si personne n'a envie d'ailleurs) et bien t'ignore le message.

    Je n'ai jamais demandé de me macher le travail, je viens de rentrer dans cette filière donc c'est normal que j'ai du mal (avant j'était en Maths), et mon projet je l'ai finit seul, et oui il est fini je peux le rendre tel quel, il fonctionne et répond aux besoins demander par le prof.

    Le problème c'est justement pour plus tard il faut que mes programmes soit concis et précis, pour le reste je m'en charge, j'ai juste besoin de comprendre comment passé une liste de vaisseau en variable de ma fonction au lieu de simplement recopier cette variable plusieurs fois, parce que je n'ai pas vu ce cas la auparavant.

  4. #4
    Membre éprouvé
    Avatar de Cacophrene
    Homme Profil pro
    Biologiste
    Inscrit en
    Janvier 2009
    Messages
    535
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Biologiste

    Informations forums :
    Inscription : Janvier 2009
    Messages : 535
    Points : 1 125
    Points
    1 125
    Par défaut
    Bonsoir,

    Utilise les balises code pour ton code OCaml, là il n'est pas indenté, c'est difficile à lire... je comprends la réaction de TropMDR, ton message donne une impression assez particulière...

    En partant du principe que c'est juste de la maladresse, recopie ton code, détaille-nous un peu ses grandes lignes, et on pourra t'aider plus efficacement.

    Cordialement,
    Cacophrène

  5. #5
    Candidat au Club
    Inscrit en
    Novembre 2010
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Novembre 2010
    Messages : 6
    Points : 3
    Points
    3
    Par défaut
    Oui c'est vrai que c'est pas indenté, désolé..
    Avec code sa marche mieux du coup ^^

    Donc voila mon code qui me permet de lancer mon vaisseau bleu (v1) et un seul vaisseau rouge (v2) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
     
    let rec lancer2 v1 v2 t = (*J'ai rajouter un vaisseau v3, v4 mais il faudrait 
    			       que ce soit une liste*)
      if (t>0) then
        begin
          if (explosion v1 v2) then
    	clear_graph ()
          else
            begin
              if (key_pressed ()) then
    	    begin
                  dessiner_vaisseau v1;
                  dessiner_vaisseau v2;
    	      recharge 100000;
                  effacer_vaisseau v1;
    	      effacer_vaisseau v2;
                  lancer2 (deplacement v1 (read_key ())) (nouvelle_position v2) (t-1) 
    	    end
    	  else
    	    begin	  
                  dessiner_vaisseau v1;
                  dessiner_vaisseau v2;
    	      recharge 100000;
                  effacer_vaisseau v1;
    	      effacer_vaisseau v2;
                  lancer2 v1 (nouvelle_position v2) (t-1)
    	    end
    	end
        end
      else
        begin
          let rec lancer v3 v4 t2 =
    	if not(explosion v3 v4) then
    	  begin
    	    if (t2 > 0) then
    	      begin 
    		if (key_pressed ()) then 
    		  begin
    		    dessiner_vaisseau v3;
    		    dessiner_vaisseau v4;
    		    recharge 100000;
    		    effacer_vaisseau v3;
    		    lancer (deplacement v3 (read_key ())) v4 (t2 - 1)
    		  end
    		else
    		  begin
    		    dessiner_vaisseau v3;
    		    dessiner_vaisseau v4;
    		    lancer v3 v4 (t2 - 1)
    		  end
    	      end
    	    else
    	      begin
    		effacer_vaisseau (vaisseau_charge v4);
    		effacer_vaisseau v3;
    		lancer2 v3 v4 (int 5000)
    	      end 
    	  end
    	else
    	  () 
          in lancer v1 (vaisseau_charge v2) 50000
        end
    ;;
    Et j'aimerai mettre mon deuxième argument sous forme d'une liste (comme ceci je pense...):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    let rec liste l = function
      0 -> []
      |_ as n -> (vaisseau_ennemi ())::(liste (tl l) (n-1)) ;;
    Je vous envoie mon programme complet en piece jointe au cas ou.

    Merci de m'avoir prêter attention =)
    Fichiers attachés Fichiers attachés

  6. #6
    Candidat au Club
    Inscrit en
    Novembre 2010
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Novembre 2010
    Messages : 6
    Points : 3
    Points
    3
    Par défaut
    C'est bon j'ai resolu mon probleme en surfant sur le net j'ai pris connaissance de la fonction 'map' qui applique une fonction a tout element de ma liste. C'est ce qui me fallait.
    Merci quand meme.

Discussions similaires

  1. Réponses: 7
    Dernier message: 12/10/2006, 01h23
  2. [DVP] Jeu des 24 familles
    Par pcaboche dans le forum La taverne du Club : Humour et divers
    Réponses: 254
    Dernier message: 09/08/2006, 15h21
  3. [JeudeForum] Jeu des smileys
    Par sourivore dans le forum Web
    Réponses: 26
    Dernier message: 05/07/2006, 16h13
  4. [algo et C] Jeu des dés en C
    Par bosz28 dans le forum C
    Réponses: 10
    Dernier message: 12/10/2005, 11h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo