Français
Forum

sous-Proc erkennt globale Variablen pas?

 
XPSE peux im 1. Proc global échelle Variablen erkennen. appelez qui Proc mais une autre Proc sur, folgt qui avertissement "Varibale undeklariert". un d'autre Produkt avec X vorne motzt ici pas. Mach je quoi faux?
 
20.01.2012  
 



ah bon oui: ici cela Ding cela avec XPSE pas veux. je serait es oui später mais gern avec nProcs beschleunigen, mais wenn's so déjà pas klappt?
KompilierenMarqueSéparation
WindowTitle "Lexikographisch aufsteigende Permutationen eingegebener Wortstrings"
Font 2:randomize:cls rnd(8^8)
print " Trenner = Leerzeichen oder |, Durch negative Zahlen"
print " (zB. -9) werden Indexfolgen 0|1|2|3|4|5|6|7|8 permutiert."
print
' Interpreter: 9 Elemente 362880 mal permutiert in 148.81 Sek (ohne Ausgeben)
' XPIA:                       - '' -            in  28.55 Sek
' ProfComp                                      in  27.33 Sek
' $MAKE CLE
 {$cleq}
Declare t$,z&,tt$[],n&,tm&,ts$
var ausgeben%=0
Restart:
print " Zu permutieren (Leer oder | als Trenner):\n\n ";
input t$
t$=trim$(t$)
t$=translate$(t$,"  "," ")
case instr("|",t$):q$="|"
t$=translate$(t$," ","|")

if val(t$)<0

    setSize tt$[],-1*val(t$)
    tt$[]=str$(&Index)

else

    tt$[]=explode(t$,"|")

Endif

n&=SizeOf(tt$[])

if n&<2

    z&=0
    Goto "Skip"

endif

cls rnd(8^8)
print " Permutation läuft..."
tm&=&gettickcount
z&=PERM()' PERM ruft DOSOMETHINGWITHRESULTS auf!
' und verwendet dann NEXTPERM
tm&=&gettickcount-tm&
cls
print
ts$=" In "+str$(tm&)+" ms"
Skip:
ts$=ts$+" "+str$(z&)+" Permutationen erzeugt."
ClearClip
PutClip ts$
Print ts$
Print " Benchwerte in Zwischenablage verfügbar."
beep
WaitInput
CLS rnd(8^8)
Goto "Restart"
End

Proc DOSOMETHINGWITHRESULTS

    ' Hier: Ausgeben
    casenot ausgeben%:return
    case %csrlin>21: locate 1,1

    WhileLoop n&

        print tt$[&Loop-1];
        case &Loop=n&:continue
        print q$;

    EndWhile

    print

EndProc

PROC PERM

    Declare k&,j&,u&,v&,e%,z&,q$
    e%=1
    z&=0
    q$="|"

    While e%

        inc z&
        DOSOMETHINGWITHRESULTS
        NEXTPERM

    EndWhile

    return z&

ENDPROC

proc NEXTPERM

    'erzeugt die jeweils nächste lexikalische Permutation
    k&=n&-2

    While tt$[k&]>=tt$[k&+1]

        Dec k&
        case k&<0:break

    EndWhile

    if k&<0

        e%=0

    else

        j&=n&-1

        While tt$[j&]<=tt$[k&]

            dec j&

        EndWhile

        t$=tt$[k&]
        tt$[k&]=tt$[j&]
        tt$[j&]=t$
        u&=k&+1
        v&=n&-1

        While u&<v&

            t$=tt$[u&]
            tt$[u&]=tt$[v&]
            tt$[v&]=t$
            inc u&
            dec v&

        EndWhile

    href='./../../function-references/XProfan/endif/'>endif

endProc

 
20.01.2012  
 



XPSE peux quelque chose cela XProfan selbst pas pouvoir: Lexikalische Variablen Sichtbarkeit (  [...]  )

So ist après folgendes potentiell faux:
KompilierenMarqueSéparation
cependant richtig:
KompilierenMarqueSéparation
Sowieso, nProcs sommes là sogar encore un Stückchen strenger là là überhaupt aucun Variablensichtbarkeitsvererbung existiert aussi avec cela nProcs toujours Fil-sûrement sommes. So gibts dans nProcs exprès seulement qui y deklarierten et comme paramètre et per Global deklarierten Variablen mais aucun aus anderen nProcs ou bien Procs.

PS: Codes s'il te plaît dans Code-Tags mettons.
 
20.01.2012  
 




Nico
Madysa
j'étais so libre, es qui Leserlichkeit trop liebe trop Travailler.
 
20.01.2012  
 



répondre


Topictitle, max. 100 marque.
 

Systemprofile:

ne...aucune Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

s'il te plaît s'inscrire um une Beitrag trop verfassen.
 

Options du sujet

3.058 Views

Untitledvor 0 min.
Pk24.02.2017
Joerg22.04.2016
Erasmus.Herold03.04.2016
Ernst30.04.2014
plus...

Themeninformationen

cet Thema hat 3 participant:

unbekannt (2x)
Nico Madysa (1x)
iF (1x)


Admins  |  AGB  |  Applications  |  Auteurs  |  Chat  |  protection des données  |  Télécharger  |  Entrance  |  Aider  |  Merchantportal  |  Empreinte  |  Mart  |  Interfaces  |  SDK  |  Services  |  Jeux  |  cherche  |  Support

un projet aller XProfaner, qui il y a!


Mon XProfan
Privé Nouvelles
Eigenes Ablageforum
Sujets-La liste de voeux
Eigene Posts
Eigene Sujets
Zwischenablage
Annuler
 Deutsch English Français Español Italia
Traductions

protection des données


Wir verwenden Cookies seulement comme Session-Cookies à cause de qui technischen Notwendigkeit et chez uns gibt es aucun Cookies de Drittanbietern.

si du ici sur unsere Webseite klickst ou bien navigierst, stimmst du unserer Erfassung de Informationen dans unseren Cookies sur XProfan.Net trop.

Weitere Informationen trop unseren Cookies et en supplément, comment du qui Kontrolle par-dessus behältst, findest du dans unserer nachfolgenden Datenschutzerklärung.


d'accordDatenschutzerklärung
je voudrais keinen Cookie