Curriculum and Labs for Engineering Education

cancel
Showing results for 
Search instead for 
Did you mean: 

Challenge mathématiques #8 : Fractions égyptiennes, comment diviser sans poser une division

Comment diviser 853 par 15 sans poser de division ? Comment se partager 3 croissants quand on est 4 ?

Les égyptiens savaient le faire et vous pouvez également grâce à LabVIEW 

Voici comment ils procédaient :

Ils utilisaient une visualisation directe du nombre de fois que le dénominateur est présent dans le numérateur par des puissances de 2.
Et ensuite utilisaient une représentation du résultat en fraction sous la forme d'une somme de fractions à numérateurs unitaires.

Essayons avec un exemple : 853/15

15

1

853

On cherche combien il y a de fois 15

30

2

-480

Au moins visuellement 32*15

60

4

373

On retire la valeur correspondante

120

8

-240

Au moins visuellement 16*15

240

16

133

On retire la valeur correspondante

480

32

-120

Au moins visuellement 8 * 15

960

64

13

On arrête car 13<15

1920

128




3840

256











853 =

13 + (32*15)+(16*15)+(8*15)








853/15 =

13/15 + 56

Cela donne 56 + 13/15, ce dernier est ensuite exprimé sous la forme d'une somme de fractions à numérateur unitaire qui comporte le moins de termes.
(Sauf si cela donne 2/3 ou 3/4). Il faut aussi que les dénominateurs soient différents. Ca veut dire quoi ?

Par exemple : 3/4 = 1/2 + 1/4 mais aussi 1/4 + 1/4 + 1/4 et cette dernière n'est pas égyptienne.

Donc 3 croissants pour 4 personnes cela nous donne 1/2 croissant à chacun et ensuite le dernier coupé en 4.

Revenons à l'exemple 13/15. Pour le décomposer en fractions unitaires on peut utiliser un algorithme glouton :

1) On inverse la fraction de départ soit : 15/13

2) On cherche l'entier juste supérieur ici  = 2 (car 13*2 = 26 donc > à 15) et 2 devient le premier dénominateur de la fraction unitaire soit +1/2

3) On le retire de 13/15 soit 13/15 - 1/2 = (26-15)/30 = 11/30 et ainsi de suite...

4) 30/11 juste supérieur donne le chiffre 3 donc +1/3

5) 11/30-1/3 = 3/90 et au final 90/3 = 30 soit +1/30


En résumé on a : 853/15 = 56 + 1/2 + 1/3 + 1/30


CHALLENGE :

Le challenge du mois d'octobre est de réaliser cet algorithme sous sa forme ancestrale afin d'afficher dans

une chaine de caractères le résultat sous forme de fractions égyptiennes unitaires.

Par exemple : "853/15 = 56 + 1/2 + 1/3 + 1/30" avec des espaces entre les + et autour du =

- Utilisation de la fonction division interdite dans le programme

- Les valeurs des numérateurs et dénominateurs de validation seront des chiffres entiers positifs non nuls et inférieurs à 100000

- Les fractions 2/3 et 3/4 en résultats ne sont pas à décomposer mais à laisser

- Tout en un seul VI, pas de sous-VI

- Le VI de la face-avant est fourni

- Pas besoin de boucle While, l’exécution se fera avec la flèche.

- Pour départager les résultats des codes dans un second temps, le gagnant final sera celui qui à le programme le plus optimisé en taille du diagramme (Propriété du VI>> Utilisation de la mémoire>>Objets du diagramme). Il remportera une certification de son choix bien méritée.

- Envoyez moi vos programmes à : emmanuel.roset@ni.com

- Fin du challenge le 31 octobre

Je vous souhaite un bon défi

Emmanuel ROSET

Précisions 5/10/2013

Si l'agorithme choisi donne directement 2/3 ou 3/4 on ne les décomposent pas en fraction unitaires. Mais est accepté l'écriture 2/3 = 1/2 + 1/6 sans avoir à les recomposer en 2/3

Précisions 11/10/2013

- On utilise pas de formula node, DLLs ou fenêtre MathScript mais les fonctions natives de LabVIEW

- Pas de 0+ dans la chaîne du résultat

Précisions 13/10/2013

Ajout en pièces jointes du programme de validation (avec valeurs) et un VI de taille du diagramme précis

Vous pouvez utiliser les valeurs intégrées au programme ou utiliser le fichier texte pour faire des essais

La propriété : Taille des objets du diagramme est plus précise et servira de référence

Info pour que tous soient à égalité et passent pas trop de temps.  Les valeurs de dénominateur des résultats ne dépasseront pas les limites des variables de LabVIEW sans avoir besoin d'utiliser d'algorithmes sur les grands nombres (donc 5/121 n'est pas demandé). On se limite donc à l'agorithme Glouton de Fibonacci, pour se polariser sur l'optimisation des fonctions LabVIEW.

Un seul programme est demandé intégrant les possibilités numérateurs/dénominateurs plus grand ou plus petit.

Précisions 22/10/2013

Les temps de calculs sont valides si inférieurs à 5 secondes

Optionnellement, pourriez vous suivant votre temps, m'envoyer une version un peu commentée pour la mise en ligne des résultats, ce serai super

Résulats après ce Weekend d'halloween :

Cisco à réalisé un code qui passe les valeurs de tests et qui respecte la règle de non utilisation de la division. Donc il remporte ce challenge !

Il a gagné la possibilité de passer une certification de son choix gratuitement.

Cependant, SebastienM bénéficiera également (j'ai eu l'autorisation exceptionnellement) du même prix pour sa participation très remarquée et les nombreux emails d'amélioration de son code envoyés.

Bravo à tous les deux !

Merci aussi aux autres participants toujours fidèles à ces petis défis.

NomTailleTest passé ?Règles respectées ?Commentaires
Cisco37516OUIOUI
SebastienM39932OUIOUI
Bleses40340OUIOUI
adcpc41545OUIOUI
JeremyM52898OUIOUI
ThierryS69273OUIOUI
Giuliano Franchetto12240NONNONPB de 0+ et formula node

Vous trouverez tous les codes et le VI de validation dans le fichier Zip joint en version 2013 et 2010.

(Le VI de validation automatique proposé des valeurs tient compte du non chargement de la face-avant en mémoire, je rappelle qu'il n'est qu'une aide et le challenge est valide si le test est effectué manuellement)

Emmanuel

Comments
smi38
Member
Member
on

Bonjour,

La fonction Modulo est-elle autorisée ?

Marie_Remondière
NI Employee (retired)
on

Hello SébastienM,

Non cette fonction n'est pas autorisée. Courage !

Marie_Remondière
NI Employee (retired)
on

JeremyM 2 oct. 2013 04:02

Bonjour,

Pour info, je suis en dessous des 40K.

Mais je vais continuer à chercher...

Jeremy

Marie_Remondière
NI Employee (retired)
on

Cisco 3 oct. 2013 02:59

Bonjour,

Petite question: à combien devons limiter le dénominateur lors de la décomposition en fractions unitaires? Cela peut parfois monter très haut. Et pour être sûr d'avoir compris, quand vous écrivez "Les fractions 2/3 et 3/4 en résultats ne sont pas à décomposer mais à laisser", je comprends plutôt qu'elles sont à recomposer car l'algo glouton renverra 1/3 + 1/6 et 1/2 + 1/4 au lieu de 2/3 et 3/4. Ce qui ajoute un cas particulier à gérer, et donc une difficulté. Est-ce exact?

Je suis encore loin des 40k...

emmanuel-fr
Member
Member
on

Le dénominateur ne sera jamais au delà de 100000. Pour les fractions donnant 2/3 ou 3/4 dès le premier niveau (par exemple 110/165). Normalement on laisse 2/3 sans le décomposer par un algorithme glouton

smi38
Member
Member
on

Rebonjour,

2 petites questions/remarques :

-si on part sur un diagramme le plus léger possible, il en résultera vraisemblablement une plus grande sollicitation du processeur et/ou de la mémoire du pc. D'où des exécutions possiblement longue et/ou prenant beaucoup de mémoire machine

-concernant les 2/3 et les 3/4, on ne traite donc que les fractions de premier niveau ?

Exemples :

1) ci-dessus : 110/165 = 2/3 point barre, au lieu de 1/2 + 1/6

2) Mais 7/10 = 1/2 + 1/5 au lieu de 2/3 + 1/30 car 7/10 ne donne pas 2/3 au premier niveau

Est-ce bien cela ?

Merci

emmanuel-fr
Member
Member
on

Bonsoir SebastienM,

Merci de réfléchir au problème, ca peut devenir très complexe si on décompose les variantes des fractions (infinies). Par exemple j'avais pensé respecter le Papyrus de Rhind et faire en sorte que tous les dénominateurs soient de préférence pairs (si, si c'est possible avec 1/n = 1/(n+1) + 1/(n(n+1)). Mais bref, je pense que c'est déjà pas mal complexe de réduire la taille du diagramme en choisissant le moins de fonctions LV possible, alors on se limite en effet à dire "si l'algorithme choisi par vos soins donne directement la fraction 2/3 ou 3/4 on arrête tout et on affiche.

Mais si l'algorithme me donne directement 1/2 + 1/6, alors c'est accepté !!

Donc:

7/10 = 1/2 + 1/5 et on arrête (pas de recomposition) est accepté

7/10 = 1/2 + 1/6 + 1/30 est accepté

7/10 = 2/3 + 1/30 est encore accepté

C'est au choix de votre algorithme

Avez vous testé 5/121 ? pas besoin de démoninateur élevé...

emmanuel-fr
Member
Member
on

En réponse à Cisco pour les dénominateurs.

Désolé je n'avais pas saisi la question sur la limitation des dénominateurs du résultat des opérations. En effet, certaines valeurs/algo. peuvent déboucher sur les fractions avec des entiers dénominateurs à la puissance 24 ! (pas tout le temps heureusement). Normalement certains algorithmes limitent le dénominateur pour éviter de trop calculer. Mais on a un LabVIEW ! Aussi, Il n'y a pas de limitation sauf celle de la machine, je propose d'utiliser donc des variables de type adapté. Si le grand entier passe, alors c'est bon. Ou alors on peut l'optimiser pour que 5/121 = 1/363+1/121+1/33 mais c'est pas obligatoire. Si je vois qu'il y a des difficultés, alors je proposerai une table de valeurs de test de validation et résultats attendus. (avec des valeurs pas difficiles)

GiulianoFranchetto
Member
Member
on

Bonjour à tous.

Concernant le 5/121 (qui a la facheuse tendance de tout faire planter!), doit-on résoudre ce problème?

Sinon, 41K sur la V1

EDIT: V2 envoyée, et solution pour 5/121 = 0 + 1/25 + 1/757 + 1/763309 + 1/1073741824. C'est precis!

Giuliano Franchetto
Student at the l'Ecole Nationale Supérieure des Mines de Saint-Etienne, cycle ISMIN (FRANCE)
adcpc
Member
Member
on

Pour l'instant le 5/121 ne passe pas avec mon algorithme.

GiulianoFranchetto: J'obtiens également 1/25 + 1/757 + 1/763309 mais pas le dernier dénominateur. D'ailleurs en vérifiant manuellement votre solution je n'obtiens pas la bonne valeur.

5/121                                                                    = 0.041322314049586778

1/25 + 1/757 + 1/763309 + 1/1073741824   = 0.041322314979765136

J'ai utilisé LabVIEW et uniquement des DBL. Est-ce que je fais qqch de faux ?

Cisco
Active Participant
Active Participant
on

Doit on, dans le cas où la partie entière est nulle, afficher "0 + "??

Je gère ce cas, ce qui allourdit le code...

Je suis d'accord avec adcpc, je serais plutôt à "1/25 + 1/757 + 1/763309 + 1/8739601809013 + 1/1527612795642093418846225"... et encore je ne suis pas sur que ce soit exact.

Francis M
JeremyM
Member
Member
on

Bonjour,

J'ai mis en place l'algo qui calcul les gros dénominateurs mais c'est très très long (plusieurs heures de calcul pour 5/121).

Je pense que l'affichage du résultat est important. Càd pas de "0 + "quand on a que des fractions et pas de fractions parasites quand on a une division avec un résultat entier seulement.

Est-ce que l'objectif du concours a changé? Doit-on optimiser le code pour calculer des dénominateurs jusqu'à 100000 maximum ou doit-on l'optimiser pour qu'il calcul des dénominateurs très grand en un minimum de temps et de ressource?

smi38
Member
Member
on

Bonjour,

Je suis d'accord avec adcpc, Cisco et JeremyM.

-     5/121 n'est pas égal à 1/25 + 1/757 + 1/763309 + 1/1073741824

-     pas de "0+"

-     "Si je vois qu'il y a des difficultés, alors je proposerai une table de valeurs de test de validation et résultats attendus" : je suis pour, çà permettra de se concentrer sur les contraintes initiales, à savoir faire un code qui aboutit et qui est le plus léger possible.

Emmanuel, qu'envisagez-vous ?

JeremyM
Member
Member
on

Bonjour,

De mon côté j'ai développé 2 versions.

La première est dédiée aux calculs avec dénominateurs de "petites" tailles. Il fait moins de 20ko en occupation mémoire pour le diagramme.

La deuxième est dédiée aux calculs avec dénominateurs de "grandes"tailles. Il fait de l'ordre de 45ko. Celui-ci, par exemple, calcul les fractions de 5/121 en 1ms (et pas 20 heures comme ma version précédente). Je peux donc vous dire que la division 5/121 donne : 5/121 =  1/25 + 1/757 + 1/763309 + 1/873960180913 + 1/1025410058030422033

adcpc
Member
Member
on

Bonjour,

J'obtiens les mêmes fractions que JeremyM sauf pour la dernière fraction. Pourtant si je vérifie les résultats, les deux sont valides (dans la limite de précision permise par un float sur 64 bits) :

Résultat.png

Si je fais la même vérification mais en utilisant des valeurs de type "Extended" et non "Double", mon résultat est toujours correct mais pas celui de JeremyM.

Jusqu'à quel point faut-il aller ?

smi38
Member
Member
on

Bin ouai, mais à 45k ok c'est rapide, mais c'est plus que tes 20k...

adcpc
Member
Member
on

Mais comment est-ce que les codes vont être comparés s'il faut 20 heures d'exécution pour vérifier que le résultat est exact ?

Cisco
Active Participant
Active Participant
on

Je pense qu'il serait bon que emmanuel-fr recadre un peu nos travaux... je suis aussi sur un algo très long pour le 5/121, avec moins de 45Ko de code. devons nous, ou pouvons nous garder un algo basique quitte à ce que le temps soit long, ou devons nous chercher à obtenir un résultat optimisé de notre division egytienne. moins compliqué que 5/121, 19/20 peut aussi fournir des résultats différents selon le nuveau d'optimisation.

Francis M
smi38
Member
Member
on

Et que pensez-vous de 5/121 = 1/26 + 1/350 + 1/275275 ?

En fouillant le net on se rend compte que les réflexions mathématiques et les variantes d'algo et de résultats sont très nombreuses.

Autre point : si le numérateur est plus grand le dénominateur (comme dans l'énoncé), il faut en tenir compte. Est-ce que vos codes incluent bien cette contrainte ?

Je pense que Emmanuel doit "recadrer" un plus précisément l'objectif, mais on dirait qu'il n'est pas disponible.

A plus,

Sébastien

smi38
Member
Member
on

Bon bin je vois qu'on est tous d'accord au même moment

Marie_Remondière
NI Employee (retired)
on

Alors Emmanuel est sur le salon ENOVA jusqu'à ce soir, donc je pense que vous n'aurez pas de réponse d'ici là. Si je le vois demain, je lui dis de venir voir vos questions !

emmanuel-fr
Member
Member
on

Bonjour a tous, me revoilà du salon !

Je suis content que vous soyez impliqué dans ces fractions spéciales. J'ai moi même passé pas mal de temps à remplir des feuilles manuellement avec ces divisions et c'est assez prenant.

Bon, une remarque. J'ai reçu 2 codes avec des boites de calcul quasi du C.... c'est un peu loin du pur codage labVIEW quand même . Comme j'ai vu que les codes n'étaient pas si grand que cela, ca vaut le coup de vous demander de les repasser en icones (c'était un peu prévisible), ok c'est de ma faute sur les règles, j'ai oublié, alors je propose d'envoyer un goodies personellement à Jeremy et Giuliano. Le but est d'optimiser du code LabVIEW pur.

- Pour le 0+ il faut l'enlever, en effet tous les algorithmes classiques ne proposent pas cet affichage inestétique et inutile pour l'opérateur. Cela signifie que si le numérateur est plus petit, il faut le gérer.

- Pour les divisions qui aboutissent à des chiffres énormes comme 5/121, les egyptiens donnait un affichage spécial pour dire qu'ils baissaient les bras. Cependant, en 2013 et nos outils de calcul faramineux, ce serai dommage de donner forfait et afficher un symbole "je ne peux pas" .il y a d'ailleurs la possibilité de l'afficher sous d'autres format plus optimisés et moins grands.

- Pour le problème de temps de calcul, ce n'est pas une contrainte du challenge, mais le résulat doit apparaitre avant la fin du mois !! Pour être plus concrêt il existe des algorithmes qui donnent le résulat en quelques secondes, donc c'est faisable.

Je vais donner une liste de chiffre avec des affichages attendus ce week end. (il y aura 5/121) mais il faudra le calculer, pas mettre le résultat en constante (je prend mes précautions)

Cisco
Active Participant
Active Participant
on

Merci pour ces éclaircissements! encore une petite question: la fonction "inverser" est elle autorisée?

Francis M
Cisco
Active Participant
Active Participant
on

question bete, bien sur que non...

Francis M
adcpc
Member
Member
on

Merci pour les remarques supplémentaires.

Donc les "formula nodes" ne sont pas autorisés ? Dommage, j'obtiens 25ko avec cette solution et toutes les fractions résolues en quelques millisecondes.

Par rapport au problème du 5/121, quelle précision faut-il obtenir ? Dans un post précédant, je compare la solution de JeremyM avec la mienne. La dernière fraction est différente mais LabVIEW indique que le résultat est bon dans les deux cas sauf si j'utilise des valeurs de type "Extended".

Il serait peut-être bien de fournir un code qui vérifie si les résultats sont bons :

Check.png

smi38
Member
Member
on

adcpc,

Ce lien (2ème paragraphe):

http://www.had2know.com/academics/egyptian-fraction-calculator.html

indique directement que tu es le plus proche de la bonne réponse, mais qu'il te manque des chiffres

smi38
Member
Member
on

Emmanuel,

Quand vous dites "Je vais donner une liste de chiffre avec des affichages attendus ce week end."

Cela implique que l'on utilise le bon algo (et il y en a plein, autre que l'algo glouton (qui a ses défauts)), pour avoir le bon affichage.

Est-ce qu'il y a aura plusieurs algo à mettre en oeuvre ?

Est-ce que la contrainte de la taille du diagramme sera toujours d'actualité ?

Ou est-ce que il y aura un seul algo à trouver (pour coller aux résultats attendus), mettre en oeuvre et optimiser ?

emmanuel-fr
Member
Member
on

Oui, je vais fournir un code qui prendra la liste des fractions de validation et des réponses obtenues possibles sous forme de chaine de caractères. Pour les répones qui diffèrent je serai obligé de vérifier manuellement je pense.

Pour les cas particuliers type 5/121, je vais regarder la solution la plus juste et moins fastidieuse à mettre en place. (Il faut évaluer la faisabilité et la difficulté pour que l'on ne passe pas trop de temps dessus quand même).

Le formula node et les fenêtres MathScript ne sont pas à utiliser, désolé. Travailler sur les fonctions natives et les structures standard sont plus profitables à la communauté LabVIEW cette fois que de réutiliser des codes textuels.

emmanuel-fr
Member
Member
on

A sébastienM

Il n'y a pas obligation d'utiliser l'aglorithme glouton plus qu'un autre, ce n'était qu'une aide et proposition pour comprendre le processus de décomposition. Je reprécise seulement qu'il ne faut pas utiliser la fonction division (ou inverse) ou modulo. Le but est l'affichage des valeurs sous forme de chaîne de caractères avec l'entier + les fractions unitaires (sans le 0+ si inférieur), et que le résultat soit juste même avec des variations sur les fractions. Tout algo est permis. Normalement 1 seul algo suffit du moment que c'est le bon.

Je vous transmet la liste des valeurs de test rapidement...

emmanuel-fr
Member
Member
on

Bonjour,

J'ai ajouté des précisions avec un code de validation basé sur l'algorithme goulton qui a le défaut de produire des grands dénominateurs. Comme LabVIEW utilise des variables au mieux de 64 bits (environ 2e19) je n'ai pas produit de valeurs qui vont le dépasser. En effet, sinon cela implique soit d'utiliser un autre algorithme d'optimisation, soit d'utiliser un algortihme pour travailler sur les grand nombres. Ce serai trop fastidieux pour notre tranquille challenge (et je sais que vous êtes occupés comme moi). Enfin cela permet au plus grand nombre de travailler sur une éventuelle optimisation des fonctions (sans la division...) dans les 15 jours qui reste.

Bon weekend

JeremyM
Member
Member
on

Bonjour,

Ca fait pas mal de changement tout ça...

Je suis donc reparti d'une version précédente sans Formula node et en faisant attention à la mise en forme de la chaine de résultat, au traitement des résultats avec dénominateurs relativement long en gardant une vitesse de traitement raisonnable, cela fait beaucoup plus que 18.8kO.

Mais bon, c'est le jeu!

Cisco
Active Participant
Active Participant
on

Bonjour,

Dans mon vi j'utilise la fonction "Premier appel". Ce qui implique que quand je le lance à la main, ça marche, mais depuis un autre vi, seulement la première fois...

Est-ce que le vi doit marcher à la main ET par appel depuis le vi de validation ou cela est-il suffisant que le résultat soit bon avec des données d'entrées renseignées à la main?

Francis M
emmanuel-fr
Member
Member
on

Bonjour, le VI de validation est juste pour moi afin de gagner du temps. Mais ce qui compte c'est que les résultats soient justes. Donc c'est bon.

smi38
Member
Member
on

Bonjour,

Une petite précision qui peut avoir son importance : les commentaires dans le diagramme font augmenter la taille de "Objets du diagramme"...

smi38
Member
Member
on

Bonjour,

J'ai remarqué deux choses :

- la taille de "Objets du diagramme" est dépendante du "cache" (ctr Z). Pour avoir la vraie valeur, il faut enregistrer le VI, puis le recharger, par exemple en le mettant en étoile en faisant une fausse modif, puis en faisant immédiatement derrière un "Revert".

- même avec le tableau de résultats fourni par Emmanuel, il faut quand même s'arranger pour que le résultat aboutisse dans un temps court (notamment pour 12345/54321).

smi38
Member
Member
on

Je continue mon monologue :

Emmanuel, ne faudrait-il pas imposer un temps d'execution maximum ?

En effet, si l'algo que l'on propose met plusieures heures, et même plusieures minutes à s'executer, çà sera :

-pénible pour nous de tester et valider notre propre code

-pénible pour vous de faire le dépouillement

-pénible pour nous d'admirer et d'essayer le travail des autres

En plus c'est faisable en quelques millisecondes pour la totalité des divisions

Enfin je dis çà je dis rien...

emmanuel-fr
Member
Member
on

Désolé pour le petit monologue . Je suis d'accord pour le temps d'exécution qui peut être un peu trop long. Effectivement, les codes que j'ai reçu jusqu'à présent sont tous instantanés donc je me suis pas posé trop la question. Cependant ceux qui étaient sous forme textuelle en boite de calcul pouvaient mettre des heures.

- Je propose, étant donné que c'est faisable de ne pas dépasser 5 secondes par calcul.

- Pour les commentaires dans le diagramme, effectivement il n'y en a pas, mais j'ai pu remarquer que c'est quand même assez compréhensible. (Ou alors c'est l'habitude de recevoir des codes non commentés...).

Si vous avez le temps. je suis intéressé de recevoir une version avec quelques commentaires qui ne serai pas comptée dans les résulats bien sur. Tout le monde pourrait profiter des réflexions développées dans chaque code. Mais bon, c'est optionnel. A votre bon coeur...

JeremyM
Member
Member
on

Bonjour,

En effet, mon code calcul tout en instantanné et même 5/121. Cependant, cela a un cout au niveau de la taille.

De plus, j'ai rajouté des conversions de type qui ne sont pas nécessaires et qui allourdissent donc l'occupation mémoire pour éviter des "coercion dot" et avoir un code conforme aux règles de l'art...

Est-ce que cela rentrera dans le barême du jury..?

Cisco
Active Participant
Active Participant
on

Bonjour,

Perso je plaide pour que ceci ne soit pas pris en compte. L'objectif annoncé depuis le début est le calcul de la division égyptienne et la mise en forme de la chaine de résultats, avec un diagramme dont la taille soit la plus petite possible. Un code "conforme aux règle de l'art" intégre conversions, commentaires, etc qui sont incompatibles avec l'objectif de l'exercice.

Francis M
emmanuel-fr
Member
Member
on

Dans ce challenge précis, les règles de l'art ne sont que pour une version séparée qui peut être commentée aussi etc.. Ce n'est pas grave si cela prend plus de mémoire ou qu'il y a des coercitions du moment que cela fonctionne. Seul sera pris en compte les règles de l'énoncé. Principalement que le code passe les valeurs de validation (au format identique), et pour départager les réponses que la taille du code (diagramme) soit le plus petit possible. Enfin que le calcul soit dans une durée exploitable < 5s.

Bon courage, au fait je trouve que vos codes sont déjà très bien et astucieux

smi38
Member
Member
on

Bonjour Emmanuel,

Je vous ai envoyé ma version.

La dernière fois il y avait eu des soucis avec ma boite mail, donc si vous pouviez confirmer la bonne réception ce serait super.

Merci,

emmanuel-fr
Member
Member
on

je l'ai bien reçu, merci

emmanuel-fr
Member
Member
on

Pour info, à ce jour 6 challengers m'ont fait parvenir des codes qui tournent.

OK, pas encore tous fonctionnels avec les valeurs indiquées, ni parfois dans les règles... mais la plupart OUI.

Au final on pourra toujours les utiliser à Noël pour découper 3 buches pour 10 personnes !

smi38
Member
Member
on

Bon bin en fait je viens de vous envoyer une nouvelle tronçonneuse par mail, bien reçue ?

Elle est accompagnée d'une interrogation sur la mesure de la taille du diagramme.

emmanuel-fr
Member
Member
on

Oui je l'ai bien recue. j'ai compilé nos échanges pour mesurer la taille du diagramme au plus juste et en évitant de prendre en compte ce qui n'est pas du pur code LabVIEW. je vais partager le tableau des résulats et les codes

smi38
Member
Member
on

Tant mieux si çà vous a été utile.

Par contre je vois que ce post datait du 23 octobre et je vous ai envoyé ma toute dernière version le 25 octobre

emmanuel-fr
Member
Member
on

Oui en effet, les résulats finaux sont sur votre dernière version. Et tient compte des échanges depuis le 23 sur les interrogations de mesure de taille.

smi38
Member
Member
on

Je n'avais pas vu que les résultats étaient là...

Merci beaucoup Emmanuel, c'est super gentil !

Et félicitations à Cisco !

Contributors