Fonction rechercher dans un tableau 1D

Bonjour, actuellement je fais un snake et je désire donc pour mes colisions Utiliser la fonction rechercher dans un tableau 1D. Le souci c'est que elle ne balais que de l'indice 0 à 59 or moi j'en ai 400 minimum.
Voyez vous une solution?
Résolu !
Accéder à la solution.
Pièces jointes :
Snake.zip ‏43 KB

Bonjour,
Je ne peux pas ouvrir ton code car je n'ai pas LV 2011.
Je ne comprends pas bien d'où vient ta limitation de 59, es-tu sûr que ton tableau contient bien 400 elements?
Je viens de faire un test avec 500 elements et il n'y a pas de limitation particulière avec cette fonction.
En revanche, peut-être que tu cherches une donnée qui existe déjà à l'indice 59, du coup il te sort cette valeur car c'est le 1er indice pour lequel l'élément cherché a été trouvé.
De plus, tu peux utiliser l'indice de départ pour décaler ta recherche, ainsi, si dans ta première recherche tu as trouvé l'indice 59, tu peux rappeler la fonction avec l'indice de départ à 60 et ainsi recommencer la recherche dans la suite du tableau.
Cordialement,
Olivier L. | Certified LabVIEW Developer

Similar Messages

  • Recherche dans un fichier PDF

    Bonjour
    Nous avons des fichiers éditeurs qui nous ont été communiqués début 2000. Le problème est le suivant, il est impossible d'utiliser la fonction recherche dans ces documents. Il ne reconnait aucun caractère sur PC/Windows, mais sur Mac, avec Aperçu nous pouvons faire ces recherches. Comment pourrions-nous faire pour que ces fichiers deviennent utilisables?
    il semble avoir été fait avec Distiller 4.05.
    Je vous remercie d'avance pour toutes réponses.
    Cordialement
    Valérie

    Oui je peux sélectionner le texte et faire un copier-coller. Mais quand on colle le texte, voici ce qu'on obtient :

  • Rechercher uninterval​le de valeur dans un tableau

    Bonjour,
    je voudrai savoir comment rechercher un intervalle de valeur dans un tableau par exemple je recherche les valeurs comprises entre 1.90 et  2.10 et je veux que labview me sorte le numéro de la ligne ou se trouve la première valeur comprise entre 1.90 et 2.10
    merci ,
    Rémi

    Re -
    Je ne comprends pas votre phrase concernant l'auto indexation.
    Vous trouverez ci joint un vi effectuant l'opération demandé avec la description que j'ai faites précédemment, ainsi qu'une seconde méthode, en câblant directement le tableau sur le vi "dans la gamme" puis une recherche du premier indice 'vrai'
    Cdlt,
    Pièces jointes :
    Sans titre 1.vi ‏9 KB

  • Recherche dans un fichier d'une valeur décimale avec espace avant

    Bonjour à tous,
    après avoir écrit dans un fichier les périodes d'un signal sinusoïdale et cosinus et leurs différentes valeurs j'essaie de rechercher les valeurs des périodes (sinus et cosinus).
    Pour ceci j'essaie de voir où est l'espace puis le décimal.
    J'utilise la fonction rechercher une expression et Balayer une chaïne de caractères.
    Je pense cependant que la méthode avec laquelle j'utilise ces fonstions est mauvaise (erreur de compréhension) et ceci même avec l'aide contextuelle et la recherche d'exemples.
    L'erreur est : "La chaîne en entrée ne contient de données dans le format attendu."
    Merci de votre aide
    A. Mollica
    Résolu !
    Accéder à la solution.
    Pièces jointes :
    relecture du fichier.vi ‏11 KB

    Ci-joint un exemple.
    Bon courage
    Philippe B.
    Certified Associate Developer / Dépt Moyens d'essais
    www.ingenia-system.com
    Pièces jointes :
    Recherche_Périodes.vi ‏7 KB

  • Cacher une colonne dans un tableau

    Bonjour, je doit créer un programme d'acquisition pour un oscilloscope. Je recueille les résultats des signaux transmi par l'oscilloscope comme la fréquence, la valeur max etc..
    J'ai donc creer un tableau on je recupère les valeurs que j'écris dans un tableur ensuite, mais j'aimerais pouvoir sélectionner les valeurs que j'envoie dans le tableau ( et donc dans le tableur) ou pas.
    Cela est-il possible? ou simplement cacher les colonnes non selectionner
    Je travail sous LabView 2012, ci joint mon VI et j'utilise un Lecroy WaveRunner 640zi  comme oscilloscope
    Merci d'avance.
    Attachments:
    VI Valeur P.vi ‏27 KB
    vi.jpg ‏174 KB

    Petit conseil, comme tu utilises la dernière version de LabVIEW, tu devrais enregistrer tes VIs à une version plus ancienne pour maximiser tes chances que les membres avec une ancienne version puissent les ouvrir... Ou simplement les partager en image .PNG
    Ton problème semble assez élémentaire. Tu peux utiliser la fonction "Delete from array" dans une boucle for avec un shift register, où tu enlèves les colonnes qui ne t'intéressent pas, ou utiliser la fonction "Index array" pour sélectionner une par une les colonnes qui t'intéressent et les ajouter dans ton shift register, et ensuite convertir ce qui reste dans ton fichier tableur.
    Je te laisse le soin de découvrir les fonctions array

  • Redirection dans un tableau interactif

    Bonjour
    J'ai fait un script php qui extrait des données d'une base mysql et les met dans un tableau. l s'agit des fiches de membres d'une association.
    Certains ont un site web et je veux que sur la fiche du membre il soit possible de cliquer sur l'adresse du site et de s'y rendre.
    Tout fonctionne parfaitement si ce n'est que lorsque je clique sur l'adresse du site la fonction inscrit l'adresse de mon site suivie de l'adresse du site cible.
    Je ne parviens pas à supprimer l'affichage de mon site.
    Voici le code du tableau :
    <table border="1" align="center">
      <tr>
         <th>Nom</th>
        <td strong><?php echo $row_DetailRS1['noms']; ?> </td>
      </tr>
      <tr>
        <th>Prénom</th>
        <td><?php echo $row_DetailRS1['prenom']; ?> </td>
      </tr>
      <tr>
        <th>cp</th>
        <td><?php echo $row_DetailRS1['cp']; ?> </td>
      </tr>
      <tr>
        <th>Ville</th>
        <td><?php echo $row_DetailRS1['ville']; ?> </td>
      </tr>
      <tr>
        <th>email</th>
         <td><a href="mailto:<?php echo $row_DetailRS1['email']; ?>"><?php echo $row_DetailRS1['email']; ?></a></td>
      </tr>
    Voici la ligne qui pose problème :
      <tr>
        <th>Site</th>
         <td><a href="<?php echo $row_DetailRS1['site']; ?>"><?php echo $row_DetailRS1['site']; ?></a>
               </td>
      </tr>
    </table>
    Quelqu'un peut il me trouver la solution qui me rend chèvre ?
    Par avance merci.

    Pour cette question, je vous renverrai plutôt vers des sources plus techniques, sur php et mysql, voir une simple question sur StackOverflow…

  • Stockage de données numériques dans un tableau pour pouvoir les traiter

    Bonjour,
    Je suis actuellement en stage, et mon sujet est : "Automatisation d'un banc de mesure du bruit émis". Je travaille essentiellement avec LabVIEW, et j'ai une question au niveau des tableaux. Alors en faite, j'utilise un analyseur de spectre et je souhaite récuperer le bruit. La fonction pour récuperer le bruit se trouve dans une boucle while et ressort seulement une donnée numérique par boucle, ce que je souhaite c'est donc de pouvoir la stocker à chaque boucle dans un tableau, puis de faire la moyenne de tableau, cependant je n'arrive pas à effectuer cela, j'ai essayé de créer un tableau mais je ne peux pas lui mettre en entrée une valeur à chaque fois, donc si vous savez comment je pourrais procéder je suis preneur !
    Je vous remercie d'avance,
    Cdt,
    Florian
    Solved!
    Go to Solution.

    Bonjour Flod29,
    Une solution serait de créer un registre à décalage sur un tunnel de sortie de votre boucle afin de récupérer les valeurs des boucles précédentes et de calculer à partir de ces valeurs une moyenne (cf Capture1).
    Une deuxième option serait de changer le mode du tunnel de sortie de votre boucle en Indexation afin de récupérer toute les valeurs dans un tableau en sortie de boucle (cf Capture 2).
    Je vous souhaite une bonne journée,
    Cordialement,
    Sabri JATLAOUI - Certified LabVIEW Developer
    Attachments:
    Capture 1.PNG ‏5 KB
    Capture 2.PNG ‏9 KB

  • Modification de valeur dans un tableau

    Bonjour,
    Contexte :
    Je souhaite pouvoir remplir des données dans un tableau en appuyant sur le bouton suivant (incrémente l'indice)
    Revenir en arrière en appuyant sur le bouton précédent (donc à l'indice précédent) et modifier ses valeurs en appuyant sur le  bouton suivant.
    Problème :
    Dans mon VI cela fonctionne, mais ajoute des données supplémentaires à chaque fois que l'on appuie sur suivant, ce que je ne souhaite pas.
    Cordialement
    Résolu !
    Accéder à la solution.
    Pièces jointes :
    Tableau de cluster.vi ‏28 KB

    Bonjour,
    Voila une version modifié de ton VI qui doit répondre à ton problème.
    L'erreur venait du fait que quand tu cliques sur suivant tu ajoutes toujours un élément au tableau. J'ai donc rajouter une condition qui vérifie si on est au dernier élément du tableau et dans si c'est vrai, on ajoute une valeur, sinon on la remplace.
    Cordialement.
    .mesLeft{float:left} .mesInfo{border-left:solid 1px #989898;font-size:x-small;color:#989898} .mesLogo{float:right;opacity:0.18} .mesLogo:hover{opacity:0.9}
    Maxime R.  
      CLD - Certified LabVIEW Developer / Développeur LabVIEW Certifié  
      CLAD - Certified LabVIEW Associate Developer   
    Pièces jointes :
    Tableau de cluster Modifie.vi ‏29 KB

  • Récupérer la valeur lue par une commande dans un tableau

    Bonjour à tous,
    Je vous explique mon problème : je récupère un tableau de valeurs. J'aimerais envoyer les valeurs de ce tableau dans une commande qui permettra alors de modifier la valeur de la fréquence en fonction de ce tableau de valeurs. 
    Seul soucis : Les fréquences générées sont bel et bien toutes envoyées par la commande (Vérification à l'oscilloscope, tout va bien). Par contre, sous labview je ne peux pas afficher ma fréquence maximale dans le tableau final (il y a apparition du caractère # dans la première case). Comment faire pour récupérer toutes les valeurs envoyées par mes commandes dans le tableau final (avec la fréquence maximale qui apparait dans le tableau au final). J'ai beau cherché je vois pas comment faire...
    Exemple : Frequence min = 30 Frequence max = 300
    Je me retrouve avec un Tableau de 30 40 50 60 70 80 90 100 et 200 mais j'aimerai que 300 apparaisse (en supprimant si possible le caractère # ?)
    J'espère que j'ai pu m'exprimer de manière claire, je vous envoie ci-joint mon programme en intégralité.
    En vous remerciant.
    Cordialement,
    Reborn
    Pièces jointes :
    Detection synchrone.vi ‏44 KB

    Bonjour,
    Merci d'avoir posté sur le forum NI.
    Pourriez vous poster un VI simplifié reproduisant l'erreur que vous rencontrez (sans utiliser les VI de communication ou autre) afin qu'ils soit plus simple pour les membres de cette communauté de pouvoir vous aider?
    Cordialement,
    Nicolas M.
    National Instruments France
    #adMrkt{text-align: center;font-size:11px; font-weight: bold;} #adMrkt a {text-decoration: none;} #adMrkt a:hover{font-size: 9px;} #adMrkt a span{display: none;} #adMrkt a:hover span{display: block;}
    Journées Techniques LabVIEW 2012 : du 27 septembre au 22 novembre
    2 sessions en parallèle : Débuter a...

  • Organiseur Photoshop Element 11. La "fonction recherche avancée" , "lieux" ne liste pas toutes les photos ayant des données GPS

    Avec mon ordinateur SONY VAIO et Windows S7 j'utilise l'Organiseur de Photoshop Element 11. Mon catalogue principal contient 13000 photos, un autre 1500. ... Quand j'emplois la "fonction recherche avancée" et consulte la colonne "Lieux" des photos sont déterminée en donnant le positionnement du lieu ou a été prise la photo en donnant : l'état (exemple "France" ), la ville (exemple "Paris"), la rue (exemple Champs-Elysées) et le numéros dans la rue. Dans mon cas beaucoup de photos ne sont pas toutes répertoriées. Déjà dans le catalogue de 15 000 mais aussi dans celui de 1500. Par exemple aucune n'est indiquée de la Californie, l'Angleterre, ni la Camargue pourtant elles ont des données GPS, et quand je prend le menu "LIEUX" en haut de de l'écran de l'organiseur, les photos apparaissent sur la carte.   .

    Avec mon ordinateur SONY VAIO et Windows S7 j'utilise l'Organiseur de Photoshop Element 11. Mon catalogue principal contient 13000 photos, un autre 1500. ... Quand j'emplois la "fonction recherche avancée" et consulte la colonne "Lieux" des photos sont déterminée en donnant le positionnement du lieu ou a été prise la photo en donnant : l'état (exemple "France" ), la ville (exemple "Paris"), la rue (exemple Champs-Elysées) et le numéros dans la rue. Dans mon cas beaucoup de photos ne sont pas toutes répertoriées. Déjà dans le catalogue de 15 000 mais aussi dans celui de 1500. Par exemple aucune n'est indiquée de la Californie, l'Angleterre, ni la Camargue pourtant elles ont des données GPS, et quand je prend le menu "LIEUX" en haut de de l'écran de l'organiseur, les photos apparaissent sur la carte.   .

  • Connaitre la ligne la plus petite dans un tableau

    Bonjour à vous tous,
    Dans un tableau, je cherche à récuperer l'indexe de la ligne qui représente le plus de nombres de valeurs inférieurs à un seuil.
    Merci d'avance
    Résolu !
    Accéder à la solution.

    Bonjour JB,
    merci beaucoup pour votre aide, désolé j'avais un problème de connexion à cause des travaux du coup j'ai pas réussi a vous répondre,
    pour la solution j'ai réussi à le faire mais un peu différemment, ci-joint mon VI en image.
    Pour répondre à votre première question et expliquer ce que je veux faire exactement :
    Je récupère des mesures mais les paramètres de la fonction théorique ne sont pas indépendant et je veux les connaitre, j'ai essayé avec le curvefit de LEV-MAR mais ça répond pas a mes besoins vu qu'il me donne une seul valeur pour chaque paramètre,
    donc j'ai pensé a faire un calcul théorique qui tient compte de la variation de chaque paramètre et après je compare avec les valeurs mesurées et celle qui rapproche plus je dis que ma mesure à ses paramètres.
    je vous remercier une deuxième fois pour votre aide :-)
    Pièces jointes :
    LABview.png ‏20 KB

  • Chronomètre qui insère les résultats dans un tableau

    Bonjour,
    je suis une étudiante en master et j'ai un projet de fin d 'étude sous thème la supervision d'une chaîne de production avec un PC vu que je suis débutante en labview j'aimerais que vous m'aidiez à faire un programme qui calcule la durée de marche et la durée d'arrêt de cette chaîne en utilisant un chronomètre qui calcule ces durées et qu'il insère ces résultats dans un tableau 
    merci bien d'avance 
    Résolu !
    Accéder à la solution.

    Bonjour,
    Voici un exemple de code qui devrait vous guider dans la manière d'implémenter les fonctions que vous voulez.
    Il se base sur une architecture maître/esclave avec gestion des évènements sur la face avant. Si vos événement sont autres, il faudra le modifié en conséquence.
    Cordialement
    Paolo_P
    National Instruments France
    #adMrkt{text-align: center;font-size:11px; font-weight: bold;} #adMrkt a {text-decoration: none;} #adMrkt a:hover{font-size: 9px;} #adMrkt a span{display: none;} #adMrkt a:hover span{display: block;}
    Travaux Pratiques d'initiation à LabVIEW et à la mesure
    Du 2 au 23 octobre, partout en France
    Pièces jointes :
    new_Prj_V8.zip ‏26 KB

  • Recherche dans une chaine (un petit défi ?)

    Recherche dans une chaine du nombre d'occurences d'un caractère unique ou d'une sous-chaine (plusieurs caractères)
    en pièce jointe, un Benchmark reprenant différentes méthodes. (chaine de départ : 50e6 caractères)
    y est repris ma méthode avec un code en assembleur et l'appel du dit code dans une dll.
    Mon code (ASM_DLL) supporte la recherche d'un caractère unique ou d'une sous-chaine.
    sous-chaine : "abc"
    SpreadSheat - 504ms
    Replace - 428ms
    Count (search 1D array) : ne fonctionne pas si plus de un caractère.
    ASM_DLL - 71ms
    caractère unique : "a"
    SpreadSheet - 639ms
    Repalce - 435ms
    Count (search 1D array) - 102ms
    ASM_DLL - 78ms
    L'outil de mesure est fourni, soit le code benchmark ci-joint.
    Vous pouvez donc prendre les temps "suivant" votre machine, et établir les rapports de comparaison.
    Mis à part la méthode pour générer la chaine de 50e6 caractères, le reste du code est "from altenbach"
    En ce qui me concerne:
    ASM_DLL / Replace = 71ms/428ms = 0,16
    objectif : trouver le nb d'occurences de la sous-chaine "abc" dans une chaine de 50e6 caractères
    (la chaine de départ est générée aléatoirement avant le start du Bench)
    Qui peut trouver un code plus rapide que la méthode "Replace" avec un coefficient inférieur à 0,16 ?
    Quelqu'un pour relever le défi ? .. un petit 0,15 ?

    bon ... et bien j'ai joué tout seul
    aucun passionné d'optimisation et/ou d'assembleur su le forum ?
    Je suis descendu à 0,14 (par rapport à la méthode "replace")
    La métode "replace" (code LV) est la plus rapide pour une sous-chaine comportant plusieurs caractères.
    Pour un caractère unique, la métode la plus rapide est "Count" (et "Count_parallel")
    ("Count" fonctionne uniquement pour la recherche d'un caractère unique)
    Ma dll prend les deux, un caractère unique ou une sous-chaine quelconque. (comme "replace" ou "spreadsheet")
    J'ai peaufiné l'algorithme et le code au maximum, un 0,12 ou même un 0,13 me semble impossible. (sans parallelisme)
    Si vous avez de très longues chaines à scanner, servez-vous de cette dll, ça va vite

  • Fonction "recherche" sous Adobe Acrobat X Standard

    Bonjour,
    Comme indiqué dans le titre, mon problème intervient lors d'une recherche sous Adobe Acrobat X Standard.
    Lorsque j'exécute une recherche en sachant que le mot est dans le texte, j'obtiens le message suivant :
    "Adobe a terminé la recherche dans le document. Aucun résultat."
    Alors que le mot est bel est bien dans le texte.
    Si j'ouvre le même fichier sous Adobe Reader et exécute la même recherche il n'y a pas de problème, le résultat est trouvé.
    Si je fais imprimer et refais un fichier avec PDF Creator alors la fonction recherche fonctionne sur le nouveau document généré (sur Reader et Version pro)
    J'ai déjà essayer d'installer les polices sur Windows, mettre à jours Adobe, copier/coller du texte pour vérifier que ce ne soit pas pris en compte comme une image.
    Le problème intervient sur tous les postes ayant Adobe Acrobat X Standard.
    Je me demande si le problème peut venir lors de la génération du document ?
    Si vous avez besoin de plus d'information c'est avec plaisir que je les transmets, car je ne vois pas du tout comment résoudre ce problème.
    Merci d'avance !

    Il y a effectivement un problème de Balise sous Adobe Acrobat standard X.
    Cependant je n'arrive pas à l'activer.
    je ne possède pas le panneaux de navigation.
    Affichage > Panneaux de navigation.
    Mais j'ai réussi à le trouver des fonctions concernant les balises dans outil >Accessibilté.
    La vérification rapide ne marche pas, malgré que j'ai tenté de changer tous les paramètres de lecture.
    La fonction "Ajouter des balises au document" ne fait rien.
    Assistant de configuration va jusqu'au bout mais toujours rien..
    J'ai alors essayer d'aller ajouter manuellement dans propriété du document, j'obtiens le message : "Chaine non terminée".
    Donc ma question est-il possible de baliser facilement le pdf depuis adobe Acrobat X standard ?

  • Probleme insertion valeurs dans un tableau

    Bonjour,
    Je rencontre un petit probleme sous Labview 7.1.
    J'obtient des valeurs RMS d'un signal. J'aimerai faire une moyenne de 20 valeurs prisent toute les 1/4 ou 1/2 secondes. Le probleme est que je n'arrive pas a inserer ces valeurs dans mon tableau, la valeur precedente est remise a zero.
    De plus, quand j'initialise mon tableau en dehors de ma boucle, je ne peut pas raccorder mon initialized array car le format n'est pas le meme.
    merci.
    Attachments:
    test_file_record_4.vi ‏682 KB

    Pour ne pas perdre la dernière valeur entrée dans le tableau, il faut utiliser un registre à décalage.
    Le pb de connection est du à l'autoindexation  (clic droit sur le point d'entrée...). Par défaut les boucles For autoindexent les entrées de type tableau. C'est l'inverse avec les boucles while.
    J'ai corrigé et fait un peu de ménage dans votre vi.
    Ceci dit, je ne pense pas que vous arriviez ainsi à calculer votre moyenne... il faudra probablement revoir votre algorithme .
    Chilly Charly    (aka CC)
             E-List Master - Kudos glutton - Press the yellow button on the left...        
    Attachments:
    test_file_record_4[1].vi ‏703 KB

Maybe you are looking for

  • How to get back the deleted request.

    Hi BW gurus,                    I was having a problem in ZFIGL_01 cube. 1 request was showing some error so i deleted that request without changing its status from green to red. i then loaded the data again and now its not allowing me to activate th

  • Error when exporting a pdf in SAP

    She sends me the error when exporting a pdf from the SAP system, this is the message: X Object reference not set to an instance of an object. I hope I can support. Annex image

  • Home entertainment - Audio and video not in s

    I call a Philips LCD 37PFL7403D/0 with [size="">HD Natural Motion technology my own. When I turn on HD Natural Motion feature, audio and video are not in sync anymore. The Philips FAQ recommands to set the audio sync delay to 200 milliseconds (200ms)

  • HT5609 Body Glove 30 Pin Lightning Adaptar for iPhone5s

    Hi I bought a Body Glove 30 Pin Lightning Adaptar for my iPhone5s & for some reason it does not work on my phone, it does how ever work on my friends iPhone5...? I bought it for my car radio as my radio is a media player docking staion & the original

  • How to use INSERT in EXEC SQL ...... ENDEXEC ?

    Hi, The following code; DATA: BEGIN OF str_insert,         a(3) TYPE c,         b(3) TYPE c,       END OF str_insert. EXEC SQL.   SET CONNECTION DEFAULT ENDEXEC. str_insert-a = 'a'. str_insert-b = 'b'. EXEC SQL. INSERT INTO ZSAP  VALUES :str_insert E