Fonction qui renvoie un tableau ou un vecteur

Résolu
CrisseTof Messages postés 57 Date d'inscription jeudi 5 août 2004 Statut Membre Dernière intervention 2 juillet 2005 - 18 août 2004 à 20:05
CrisseTof Messages postés 57 Date d'inscription jeudi 5 août 2004 Statut Membre Dernière intervention 2 juillet 2005 - 18 août 2004 à 22:35
Bonjour,

J'aimerais créer une fonction qui renvoie un tableau (ou un vecteur) et non pas un seul nombre :

J'ai une fonction qui s'appelle f, qui dépend de Jour et de Durée ; j'aimerais :

f(Jour, Durée) me renvoie
f(1)=Jour, f(2)=Jour-1... f(Durée)=Jour-Durée+1
En lancant la fonction f qu'une seule fois.

Merci pour votre aide.

7 réponses

cs_CanisLupus Messages postés 3757 Date d'inscription mardi 23 septembre 2003 Statut Membre Dernière intervention 13 mars 2006 18
18 août 2004 à 21:35
Salut, je ne sais pas si g bien compris mais voilà un exemple de function qui retourne un tableau, colle ce code dans une form et vois si ça te convient :

Bien sûr, c juste la base, c à adapter.

Private Type Tableau
  t() As String
End Type

Private Function test() As Tableau
Dim truc(5) As String
truc(0) = "0"
truc(1) = "1"
truc(2) = "2"
truc(3) = "3"
truc(4) = "4"
truc(5) = "5"

test.t = truc

End Function

Sub Form_Load()
Dim i As Integer
For i = 0 To 5
MsgBox test.t(i)
Next
End Sub

Cordialement, CanisLupus

Tous les glands ne deviennent pas des chênes mais tous les chênes ont été des glands
3
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 129
18 août 2004 à 20:53
Hein ? J'ai pas trop compris le problème là... Si tu spécifie deux arguments à ta fonction, il faut que tu l'appelle avec deux paramètres, sinon, il faut que le dernier paramètre soit optionnel. Mais je ne pense pas que ton problème se situe à ce niveau... si ?

DarK Sidious

[Responsable API/VB du site www.ProgOtoP.com]
Téléchargez ProgOtoP API Viewer
0
CrisseTof Messages postés 57 Date d'inscription jeudi 5 août 2004 Statut Membre Dernière intervention 2 juillet 2005 1
18 août 2004 à 21:00
nan scuz, je crois que j'ai pas été clair,

ce que je voudrais c'est en lançant une fonction 'g' qui dépend du paramètre X obtenir un vecteur de hauteur X :

g(X) -> (nb(1), nb(2), ... nb(X))
0
CrisseTof Messages postés 57 Date d'inscription jeudi 5 août 2004 Statut Membre Dernière intervention 2 juillet 2005 1
18 août 2004 à 22:02
OK, jte remercie pour ton aide,
juste une dernière petite question : qu'est-ce que veux dire le :

test.t() = truc.

pour moi c'est équivalent à un

for i = 0 to 5
test.t(i) = truc(i)
next i

qui ne marche pas quand je le remplace dans le programme

j'me trompe ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_CanisLupus Messages postés 3757 Date d'inscription mardi 23 septembre 2003 Statut Membre Dernière intervention 13 mars 2006 18
18 août 2004 à 22:26
test.t=truc renvoie le tableau truc en entier.
si ta function est du type string, est-ce que tu fais test=TaString ou est-ce que tu fais
for i=1 to len(tastring)
test=mid(tastring,i,1)
next

???

Cordialement, CanisLupus

Tous les glands ne deviennent pas des chênes mais tous les chênes ont été des glands
0
cs_CanisLupus Messages postés 3757 Date d'inscription mardi 23 septembre 2003 Statut Membre Dernière intervention 13 mars 2006 18
18 août 2004 à 22:31
Tableau est un type défini par l'utilisateur comme on dit. Et utilisable de la même façon que les types prédéfinis (comme string et autres)
Maintenant, si ton tableau ne doit contenir que des valeurs integer, tu le déclares comme ça :

Private Type Tableau
t() As Integer
End Type

si c du double :

Private Type Tableau
t() As Double
End Type

etc....

Cordialement, CanisLupus

Tous les glands ne deviennent pas des chênes mais tous les chênes ont été des glands
0
CrisseTof Messages postés 57 Date d'inscription jeudi 5 août 2004 Statut Membre Dernière intervention 2 juillet 2005 1
18 août 2004 à 22:35
OK, je ne connaissais pas l'instruction type.

Jte remercie pour ton aide.

CrisseTof
0
Rejoignez-nous