Jump to content
  • 0

The Curse of Recursion.... AAAARRRGGGHHHH!!!!!!


RubenLaan

Question

Hallo allemaal,

 

Ik heb erg genoten van de Fmsummit in Utrecht en vreselijk veel geleerd, ik wist al het een en ander, maar een aantal sessies heb ik echt heel erg van genoten. Voor eenieder die heeft mee helpen organiseren/presenteren, bedankt!

 

Nadat ik bij de Fmsummit ben geweest en o.a. de Curse of Recursion heb bijgewoond kom ik er zelf nog steeds niet uit… Boehoe… Het is echt een :evil: CURSE :twisted: ! Sorry Joris, ik ben echt niet slim genoeg… Je presentatie overigens heb ik heel veel plezier in gehad, jij hebt fantastische didactische vaardigheden! Maar mijn doperwtje in mijn hoofd kan het schijnbaar niet aan…

 

Nu, het volgende probleem worstel ik mee:

 

Ik wil graag van een reeks woorden in een regel een portaal filter maken. Ik heb tot maximaal 15 woorden.

 

bijvoorbeeld:

 

een - twee - drie - vier - vijf - zes

 

Daarvan kan je de volgende reeksen maken:

 

een

een - twee

een - twee - drie

een - twee - drie - vier

een - twee - drie - vier - vijf

een - twee - drie - vier - vijf - zes

twee

twee - drie

twee - drie - vier

twee - drie - vier - vijf

twee - drie - vier - vijf - zes

drie

drie - vier

drie - vier - vijf

drie - vier - vijf - zes

vier

vier - vijf

vier - vijf - zes

vijf

vijf - zes

zes

een - drie

een - drie - vier

een - drie - vier - vijf

een - drie - vier - vijf - zes

een - twee - vier

een - twee - vier - vijf

een - twee - vier - vijf - zes

een - twee - drie - vijf

een - twee - drie - vijf - zes

een - twee - drie - vier - zes

 

Als ik de numerieke volgorde kan aanhouden beperk ik in elk geval de reeks flink, anders kon je ook nog de boel verder husselen… Dat sorteren van die reeksen in de numerieke voilgorde heb ik prima voor elkaar (ik sorteer e.e.a. op alfabet). Dus ik denk dat ik alle combi's heb zoals boven omschreven.

 

Ik kom een heel end, ik kan met de volgende custom formule:

 

TextBits (Text; NumberOfWords)

-------------------------------------------------------------------------

//Number of Words begint altijd met 1

 

Case (

Length ( text ) = 0;"";

numberOfWords ≤ WordCount ( text ) ;

MiddleWords ( text ; 1 ; numberOfWords ) & "¶" & TextBits( text; numberOfWords + 1 )

;TextBits( RightWords (text; WordCount ( text )- 1 );1 )

)

 

-------------------------------------------------------------------------

 

 

Dit gedeelte maken:

 

een

een - twee

een - twee - drie

een - twee - drie - vier

een - twee - drie - vier - vijf

een - twee - drie - vier - vijf - zes

twee

twee - drie

twee - drie - vier

twee - drie - vier - vijf

twee - drie - vier - vijf - zes

drie

drie - vier

drie - vier - vijf

drie - vier - vijf - zes

vier

vier - vijf

vier - vijf - zes

vijf

vijf - zes

zes

 

De rest gaat kompleet de mist in… :evil: !@#$%^&*%@ :twisted: of recursion…

 

Ik kom er niet uit. Wie kan mij helpen?

 

Groeten,

 

Ruben

Hogeschool Leiden

Link to comment

3 answers to this question

Recommended Posts

  • 0

Dag Ruben,

 

Sorry voor het late antwoord :oops:

Fijn dat je genoten hebt van de Summit! En bedankt voor het compliment. Ik ben ook niet zo slim maar ik kan het goed uitleggen :wink:

 

Ik begrijp niet helemaal het probleem waarvoor je een oplossing zoekt. Want portalen filteren via complexe multikeys, lijkt me in dit script-trigger (FM10)/dynamic portal filtering (FM11) tijdperk een beetje achterhaald. Kan je je het leven niet leuker/makkelijker maken via scripting?

 

De logica in de reeks woorden zelf begrijp ik niet helemaal: waarom wel één - twee - vier - vijf en niet twee - vier- vijf ? Waar zit de beperking?

Wat je probeert te doen, heeft veel weg van het bepalen van permutaties van reeksen en daar zijn wel wat voorbeelden van te vinden: http://www.briandunning.com zoek op permutation. Het is in elk geval niet zo eenvoudig en het aantal mogelijkheden loopt zeer snel op. Dus als dat een troost mag zijn... 8)

 

Groetjes,

Joris

Link to comment
  • 0

Hi Joris,

 

IWP is mijn blok aan het been... Ik moet de oplossing vooralsnog laten draaien onder IWP en dan werken scripttriggers niet (tenminste, bij mij niet). Binnen FM 11 met triggers, virtual lists e.d. was het snel op te lossen, maar voor IWP blijft het hommeles...

 

Het woord permutatie/permutation was denk ik wat ik zocht, er staan idd wat voorbeelden bij Dunning op de website en ik denk dat ik daarmee wel wegkom. Ik zat te zoeken op recursive enzo en dan wordt het lastiger...

 

Bedankt!

 

Ruben

Link to comment
  • 0

Ruben,

 

Ik weet niet of het je helpt, maar ter info: in IWP werken script triggers inderdaad niet op basis van gebruikersinteractie. Wat wel werkt, is dat script triggers kunnen afgevuurd worden door acties die door scripts worden uitgevoerd. Heb je bv. een script gekoppeld aan een knop in een IWP scherm, die de script step 'Commit Record' uitvoert, dan zal de OnRecordCommit script trigger worden afgevuurd.

 

Jeroen

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...