Fonction à plusieurs "subdivisions" [Résolu]

Signaler
Messages postés
80
Date d'inscription
dimanche 12 octobre 2003
Statut
Membre
Dernière intervention
25 avril 2011
-
Messages postés
80
Date d'inscription
dimanche 12 octobre 2003
Statut
Membre
Dernière intervention
25 avril 2011
-
Bonsoir^^!
Une idée m'est apparue en fait, et je voulais savoir si elle était réalisable. Je vous explique, bien entendu^^.

Le principe serait un peu comme Do, par exemple, c'est-à-dire qu'on puisse donner d'autres fonctions à la fonction, du genre Do While, Do Until...

J'aimerais juste savoir s'il est possible de faire une telle fonction?

Oui je sais, j'ai l'esprit torturé^^...
Merci pour votre patience^^!

19 réponses

Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
111
Tu viens de découvrir la programmation fonctionnelle... qui veux qu'une fonction est une variable... mais ce n'est pas possible en VB.

Sinon tu as un autre concept très similaire (du moins pour ce que tu cherche à faire) : la programmation objet, et là c'est tout à fait possible à faire en vb...
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
18
salut,

beh ton aide en ligne est là pour ça, non ?
Do ... Loop existe
Do ... Loop Until   existe
Do While ... Loop   existe

@++

<hr size="2" width="100%" />( Nouveau forum : Exclusivement Office & VBA
Messages postés
80
Date d'inscription
dimanche 12 octobre 2003
Statut
Membre
Dernière intervention
25 avril 2011

Non je ne voulais pas utiliser la fonction Do... Peut-être que je me suis mal expliqué, c'est fort possible, faut dire que c'est un peu compliqué^^.


Je voudrais reprendre ce style de principe.


Par exemple (on suppose que c'est possible de faire ce genre de fonction), si on fait une fonction Make qui créé, en fonction d'un paramètre, un répertoire, mais que si on fait Make File, crééra, en fonction du même paramètre (mais différent en valeur), un fichier.


Est-ce que tu vois ce que je veux dire?

§H@®?¦££?®[mailto:$|-|@|2|<!LL?|2 ]
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
18
humm j'ai pas tout compris car je n'ai pas tout les éléments en main, mais je dirai que oui (réponse à ta question), c'est faisable.

Je t'aide :

Public function Make(byval MyParam) As Boolean

End Function

Il va s'en dire, que c'est à toi de créer ta fonction de création de répertoire, selon ton critère

@++

<hr size="2" width="100%" />( Nouveau forum : Exclusivement Office & VBA
Messages postés
80
Date d'inscription
dimanche 12 octobre 2003
Statut
Membre
Dernière intervention
25 avril 2011

Bien joué DarkSidious^^! lol
Oui c'est dans ce but-là, mais je pensais ça faisable^^.
Bon bah merci pour ta réponse^^ lol!


Désolé mortalino, mais il a bien vu, ce n'est pas du genre Make(What as string, optional File as Boolean), bien que ça serait une bonne solution, mais plutôt du genre Make {File} (What as String).

Voilà. Merci à vous deux, surtout toi DarkSidious, qui m'a donné la réponse de façon quelque peu indirecte^^!


Bonne soirée, et bonne continuation!

§H@®?¦££?®[mailto:$|-|@|2|<!LL?|2 ]
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
111
c'est vrai que la programmation fonctionnelle est un concept très fort, bien que ce soit très contraignant nottament à cause de l'interdiction des effets de bords :(
Messages postés
80
Date d'inscription
dimanche 12 octobre 2003
Statut
Membre
Dernière intervention
25 avril 2011

Oui c'est vrai. Enfin pour les bords je ne sais pas, je connais pas, mais j'ai déjà fais ce genre de programmation avec CaML, et c'est vrai que c'est pratique, ainsi que la récurrence.
Merci encore

§H@®?¦££?®[mailto:$|-|@|2|<!LL?|2 ]
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
111
oui tout t'a fait, ce sont principalement les langage ML qui implémentent ce conception, le Lisp aussi ainsi que le haskell.

Pour les effets de bords, cela veut dire qu'une fonction ne peux pas modifier son environnement : elle ne peux que renvoyer une valeur, et non modifier une valeur externe, et doit toujours renvoyer la même valeur pour les paramètres qu'on lui passe (ce qui est un peu chiant à utiliser tout de même, mais ca donne plus de sécurité, et c'est bien plus simple à tester !).

Pour ce qui est de la récurrence : on n'a pas trop le choix vu qu'en théorie les boucles ne sont pas possible à cause justement de cet effet de bord : le compteur de la boucle ne peux pas être modifié par une fonction !
Messages postés
80
Date d'inscription
dimanche 12 octobre 2003
Statut
Membre
Dernière intervention
25 avril 2011

Ah OK, je comprends. Merci pour ces explications!
Bonne journée et bon week-end!

§H@®?¦££?®[mailto:$|-|@|2|<!LL?|2 ]
Messages postés
918
Date d'inscription
vendredi 3 août 2007
Statut
Membre
Dernière intervention
27 octobre 2008
10
Ce qui fait que tu ne peux pas faire une telle fonction en VB, bien que Do le permette c'est que Do n'est pas une "fonction", mais une "instruction" du langage VB ! La différence ? Une fonction est suivie d'une liste de paramètre entre parenthèses alors que l'instruction est suivi d'un ou plusieurs mot-clé et/ou expressions.

Perso, la solution de Mortalino (une fonction, donc !) convient tout à fait !.
Pour la solution codage objet, on arrivera pas au même résultat. Puisque dans ce cas, on aura des notations du genre Obj1.Methode(...), Obj2.Methode(...)
Notons la présence de la liste de params entre parenthèse ! Une méthode de classe VB est donc une fonction !

Comme quoi, en programmation, il faut être très précis sur les termes que l'on emploie. Quand je pense qu'il y en a sur le forum qui parlent le français comme des vaches espagnoles obsédé par le SMS-Style !!
Messages postés
80
Date d'inscription
dimanche 12 octobre 2003
Statut
Membre
Dernière intervention
25 avril 2011

Merci pour la précision^^! C'est vrai qu'au niveau des termes c'est pas toujours évident...
Quand à la méthode de Mortalino, oui je pense aussi qu'elle est correcte (remarque, c'est bien le genre d'usage qu'on peut donner à une fonction), mais je trouvais juste que ça serait sympa et intéressant de cette manière, si elle avait été possible! C'est tout^^!




Quand aux "vaches espagnoles obsédées par le SMS-Style", c'est assez spécial comme terme^^ lol.

§H@®?¦££?®[mailto:$|-|@|2|<!LL?|2 ]
Messages postés
918
Date d'inscription
vendredi 3 août 2007
Statut
Membre
Dernière intervention
27 octobre 2008
10
Ouais ! Mais cela résume bien ce que je pense !
Messages postés
80
Date d'inscription
dimanche 12 octobre 2003
Statut
Membre
Dernière intervention
25 avril 2011

C'était pour dénoncer quoi? Que si les français respectaient aussi bien les syntaxes des langages de programmations que le leur on pourrait les comprendre?^^

§H@®?¦££?®[mailto:$|-|@|2|<!LL?|2 ]
Messages postés
918
Date d'inscription
vendredi 3 août 2007
Statut
Membre
Dernière intervention
27 octobre 2008
10
Surtout le fait que certain sur ce forum, sous prétexte qu'il s'agit d'un forum à caractère technique, ne prennent pas la peine d'écrire un mimnimum correctement en francais.
Je suis le premier à reconnaitre que je fait des fautes en écrivant, mais il y a certains messages sur le forum qui sont rédigé dans un style tel, qu'on ne comprend absolument rien du problème de base.
Messages postés
918
Date d'inscription
vendredi 3 août 2007
Statut
Membre
Dernière intervention
27 octobre 2008
10
Surtout le fait que certain sur ce forum, sous prétexte qu'il s'agit d'un forum à caractère technique, ne prennent pas la peine d'écrire un mimnimum correctement en francais.
Je suis le premier à reconnaitre que je fait des fautes en écrivant, mais il y a certains messages sur le forum qui sont rédigé dans un style tel, qu'on ne comprend absolument rien du problème de base.
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
111
Aucune allusion raciste ou autre :
Il ne faut quand même pas oublier les étrangers qui viennent sur le forum et qui ne s'expriment pas dans un français optimal. La plupart des messages mal rédigés vient de cette catégorie de membres je pense.
Messages postés
918
Date d'inscription
vendredi 3 août 2007
Statut
Membre
Dernière intervention
27 octobre 2008
10
J'ai parfois des doutes ... J'accepte totalement que certains, non francophones à la base est des soucis avec la langue de Molière. J'ai moi-même parfois des soucis avec celle de Shakespear sur d'autres sites anglo-saxon (je ne parle même pas des sites allemands ou japonnais !!)
Mais il y a de nos concitoyens qui préfèrent la langue Joe Starr à celle de Jean-Baptiste Poquelin !! Et las ! Cela me laise fort contrie, ma mie !!
Messages postés
918
Date d'inscription
vendredi 3 août 2007
Statut
Membre
Dernière intervention
27 octobre 2008
10
Tant qu'à faire, je la refait sans fôte dorto graffeux !!

J'ai parfois des doutes ... J'accepte totalement que certains, non francophones à la base, aient des soucis avec la langue de Molière. J'ai moi-même parfois des soucis avec celle de Shakespear sur des sites anglo-saxons (je ne parle même pas des sites allemands ou japonnais !!)
Mais il y a de nos concitoyens qui préfèrent la langue Joe Starr à celle de Jean-Baptiste Poquelin !! Et las ! Cela me laise fort contrie, ma mie !!
Messages postés
80
Date d'inscription
dimanche 12 octobre 2003
Statut
Membre
Dernière intervention
25 avril 2011

Ah ah^^, t'as pas laissé des fautes là?^^
C'est vrai qu'il y a des étrangers sur le forum, mais eux ça se voit qu'ils font quand même des efforts, mais je pense aussi comme Kristof_Koder qu'il y a des français qui n'en font pas... Par contre, les fautes d'inattention c'est autre chose, forcément.

§H@®?¦££?®[mailto:$|-|@|2|<!LL?|2 ]