NIDays vient de s’achever ! C’est avec plaisir que j’ai pu rencontrer certains d’entre vous et discuter entre autres des challenges. Maintenant c’est l’heure pour décembre de reprendre nos petits défis LabVIEW !
Voici donc une histoire d’ancienne Égypte. Dans l’antiquité les immeubles en forme de pyramides étaient courants (c’est bien connu). Les numéros d’étages commençaient par le haut de la pyramide et les appartements étaient numérotés comme ci-dessous :
1
2 3 4
5 6 7 8 9
…
Cette notation problématique a été abandonnée (heureusement) car comment retrouver le numéro de l’appartement juste au dessus du votre en cas de soirée un peu bruyante de son voisin ?
Dans une telle situation, avec l’aide de LabVIEW, je vous propose de retrouver le bon numéro d’appartement qui est juste au dessus de n’importe lequel. Il est évident que certains appartements n’ont que le ciel (ces chanceux n’auront pas de tapages au dessus d’eux).
Par exemple pour le n° 8 c’est le n°4 qui est sur le 2e étage. Mais qu’en est-il pour le n° 2017 ?
Vous relevez le défi ?
Pour participer vous devez me renvoyer un code LabVIEW avec en entrée une commande numérique du numéro d’appartement actuel et en sortie un indicateur numérique avec le numéro d’appartement du dessus et un tableau d’indicateurs numérique avec tous les numéros d’appartements agencés en pyramide, ceci pour une confirmation par les étages.
Indications :
- Tous les ciels sont notés 0 et les étages dans le tableau commencent à l’indice 1.
- Le nombre d'appartements maximal ne dépasse pas le Million (ils étaient nombreux à l'époque)
Voici un exemple de face-avant LabVIEW (et en pièce jointe en version LabVIEW 2012+) qui peut servir de base pour votre code :
Il y a des tonnes de moyens de résoudre ce problème (mathématiquement et avec un peu d’observation) et de simplifier le code. Je vous laisse gérer les optimisations… et votre créativité.
Envoyez votre code nommé Ch46_pyramide_votre pseudo.vi (s'il y a des sous-VI faire un ZIP) à emmanuel.roset@ni.com avant le 8 Janvier. Et postez s’il vous plait sur la communauté un message « code envoyé » ou équivalent pour vérifier la boite Email en cas de non réception ou de congés…
Le gagnant sera tiré au sort (avec un jeu de hasard officiel) parmi les bonnes réponses avec un code fonctionnel. Ce mois de décembre il recevra un Goodies surprise (c’est Noël).
Les codes seront publiés et surtout partagés à la fin du mois
Bonnes fêtes de fin d’année
[Mise à jour 10 janvier] : Publication des codes résultats
Code envoyé
Merci cristov222, code fonctionnel
Code envoyé 😉
Bonjour, Je crois qu'il y a une petite incohérence entre le texte et la face-avant proposée dans l'énoncé. Dans la formulation actuelle du texte, le numéro de l'étage du dessus doit être une entrée du VI. Or dans le VI envoyé en pièce jointe le numéro de l'étage du dessus est un indicateur (donc une sortie du VI). Quelle information faut-il prendre en considération? Le texte ou le VI fourni? Merci d'avance pour les éclaircissements. Bonne journée.
Je pense qu'il faut lire:
"Pour participer vous devez me renvoyer un code LabVIEW avec en entrée une commande numérique du numéro d’appartement actuel et en sortie un indicateur numérique avec le numéro d’appartement du dessus ainsi que le numéro de l’étage du dessus et un tableau d’indicateurs numérique avec tous les numéros d’appartements agencés en pyramide, ceci pour une confirmation par les étages."
Si je ne me trompe pas 😉
Ah ben oui en effet, il y a eu un dérapage sur un bout de phrase en trop lors de la préparation. C'est corrigé dans l'énoncé. Juste une seule commande est nécessaire bien sur ! Le numéro de l'appartement qui entend tous les bruits de pas au dessus de chez lui
Merci pour le retour !
Merci Julien_V pour l'ajout de la pyramide en couleur avec la palette Picture, c'est encore plus clair
Code envoyé
Merci pour les derniers codes. En les analysant je constate que tout le monde utilise des méthodes différentes, c'est vraiment bien pour le partage au final car cela implique l'utilisation de toutes sortes de VI.
Bonjour,
code envoyé
Voici en gros les méthodes utilisées depuis le lancement du défi. Ça peux aider ceux qui veulent se lancer.
- Utilisation des fonctions mathématiques natives et presque sans tableaux
- Utilisation majeure des tableaux dès le départ et fonctions de recherche
- Nœuds d'expression mathématiques
- Tout en registres à décalage imbriqués
- Optimisation mathématique pur avant l'implémentation
Bonjour, code envoyé!
Bonne fêtes de fin d'année à tous.
Bonjour,
Étant encore novice de LabVIEW, je m'entraine en faisant certains challenges et en comparant avec les VI de réponses, puis j'ai vu celui ci en cours, je me suis dit pourquoi pas!
Par conséquent : code envoyé!
Bonne fêtes à tous!
Eh bien c'est exactement ce qu'il faut faire
Code bien reçu est très efficace.
Je rappelle que de toute façon on ne juge pas les codes ici et que ce qui compte c'est participer. Je dis ça pour les autres qui n'ont pas encore participé !
Bonjour,
Code envoyé.
Jérôme
Bonjour,
Code envoyé.
Ludovic
Bonjour à tous, il est temps de finaliser les résultats. Tous les codes ont été mis en pièce jointe dans l'énoncé. En version 2012 et toutes versions reçues brutes.
Voici la liste des participants :
1 | Ch46_pyramide_cristov222 | OK | |
2 | Ch46_pyramide_PhilB58.vi | OK | |
3 | Ch46_pyramide_Julien_V.vi | OK | |
4 | Ch46_pyramide_vdparter.vi | OK | |
5 | Ch46_pyramide_Olivier_L.vi | OK | |
6 | Ch46_pyramide_LucG | OK | |
7 | Ch46_pyramide_beno72 | OK | |
8 | Ch46_pyramide_Loone | OK | |
9 | Ch46_pyramide_Loysse.vi | OK | |
10 | Ch46_pyramide_HuntSeeker | OK | |
11 | 12 - Ch46_pyramide_jg30340 | OK | |
12 | Ch46_pyramide_lulu44 | OK | |
X | Ch46_pyramide_yopYyop.vi | Manque tableau de pyramide |
Comme vous êtes 12, ci-dessous la répartition des attributions des boules du Loto par pseudo afin de gagner des Goodies. Prochain tirage ce soir mercredi 10 janvier sur fdj.fr. On regardera la première boule qui tombe et le gagnant sera désigné parmi les attribution de chiffres ! (cette fois 4 chacun)
Bonne chance !
Nombre de participants : 12
Ch46_pyramide_cristov222 => 1,2,3,4,
Ch46_pyramide_PhilB58.vi => 5,6,7,8,
Ch46_pyramide_Julien_V.vi => 9,10,11,12,
Ch46_pyramide_vdparter.vi => 13,14,15,16,
Ch46_pyramide_Olivier_L.vi => 17,18,19,20,
Ch46_pyramide_LucG => 21,22,23,24,
Ch46_pyramide_beno72 => 25,26,27,28,
Ch46_pyramide_Loone => 29,30,31,32,
Ch46_pyramide_Loysse.vi => 33,34,35,36,
Ch46_pyramide_HuntSeeker => 37,38,39,40,
12 - Ch46_pyramide_jg30340 => 41,42,43,44,
Ch46_pyramide_lulu44 => 45,46,47,48,
Merci a tous de votre participation. J'ai reçu un récapitulatif récemment du nombre de connectés et de vues qui se comptent par milliers. Donc n'hésitez pas à participer aussi aux prochains défis et à poster vos commentaires il n'y a pas de codes mal fait !
Bonjour,
Résultats du tirage de Mercredi 10 Janvier dans l'ordre de sortie :
7 | 49 | 18 | 9 | 16 |
Donc le gagnant des Goodies ce mois-ci est : PhilB58 !
Merci à tous pour les codes qui sont à présent publiés sur la communauté et pourront donner des nouvelles idées et méthodes !
Yes, merci le tirage du Loto
et merci Emmanuel pour m'avoir donné le bon numéro
Ça me donne envie d'essayer une grille à l'Euromillion, serais-je dans une période de chance??!!??