Aide type perso

sanji2103 Messages postés 3 Date d'inscription samedi 28 avril 2012 Statut Membre Dernière intervention 28 avril 2012 - 28 avril 2012 à 10:58
NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 - 28 avril 2012 à 15:30
Bonjour,

je débute (en fait j'ai commencé il y a une heure), du coup je ne sais pas si je suis au bon endroit au niveau du thème !

Je souhaite déclarer un type perso, pour arriver à ça

[(gène 1)(gène2)...] Chromosome 1
[(gène 1)(gène2)...] chromosome 2

L'ensemble des chromosomes formant ma population (c'est pour un algo génétique pour résoudre un problème d'ordonnancement). Un gène contient 5 entiers

j'ai donc créé le code suivant :

Public Structure gene
    Public gene() As Integer
End Structure

Public Structure chromo
    Public chromosome() As gene
End Structure

Module Module1

    Dim population As chromo
    Dim vecteur(5) As Integer
    Dim r As Integer
    Dim t As Integer

    Sub Main()

        population.chromosome(1).gene(1) = 1
        MsgBox(population.chromosome(1).gene(1))

        ' For i = 1 To 5
        'r = 1
        '  For j = 1 To 5
        ' population.chromosome(i).gene(j) = r
        'r = r + 1
        ' Next
        ' Next
        ' MsgBox(population.chromosome(1).gene(3))


J'essaie donc de mettre la valeur 1 dans le premier gène (je me limite à une population de 1 pour tester). Seulement ces lignes bloquent :

population.chromosome(1).gene(1) = 1
MsgBox(population.chromosome(1).gene(1))

Visual studio me demande de mettre un "new" je ne sais trop ou... Je n'y comprend rien =(

5 réponses

ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
28 avril 2012 à 11:14
Bonjour,
Tu es ici dans la section
Visual Basic 6 > Langages dérivés > VBA

Et le bout de code montré ne saurait être du VBA (ni même du VB6) !

________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ
0
sanji2103 Messages postés 3 Date d'inscription samedi 28 avril 2012 Statut Membre Dernière intervention 28 avril 2012
28 avril 2012 à 11:19
Arf' dans quoi je me lance là T.T

J'ai créer un projet sous visual studio : Visual basic => application console

Une idée de ce que c'est, que j'ai au bon endroit ?

Et si je voulais créer la même chose, mais en vba ça donnerait quoi ?
0
NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 159
28 avril 2012 à 14:58
Bonjour,

Ce n'est pas du VBA, mais du .NET (type définit par le mot clé Structure).
Je déplace donc le message.

Sinon, peux-tu représenter plus graphiquement le lien entre les gènes et les chromosomes ?

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualVasic (onglet Références dans les propriétés du projet).
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list
---
Mon site
0
sanji2103 Messages postés 3 Date d'inscription samedi 28 avril 2012 Statut Membre Dernière intervention 28 avril 2012
28 avril 2012 à 15:13
Merci =)

En fait un chromosome contient 5 gènes, qui contient lui même 5 entiers.

on a donc un chromosome qui correspond à un tableau contenant 5 gènes.

un tableau de 5 tableau.

[(1 2 3 4 5)(1 2 3 4 5)(1 2 3 4 5)(1 2 3 4 5)(1 2 3 4 5)] correspond à un chromosomes qui comporte 5 gènes identiques : (1 2 3 4 5).

J'ai réussi à le coder en VBA avec excel. Mais je pense que mon prof n'aime pas trop excel je crois...
0

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

Posez votre question
NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 159
28 avril 2012 à 15:30
Bonjour,

"Seulement ces lignes bloquent"
Dans ce cas toujours préciser le message d'erreur, il donne souvent énormément d'info.
Dans ton cas, je pense que tu ne définit pas la taille des tableaux, d'où l'erreur.

Regardes pour dimensionner les tableaus, voir l'instruction Redim ou encore utiliser List(Of T).

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualVasic (onglet Références dans les propriétés du projet).
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list
---
Mon site
0
Rejoignez-nous