| |
|
|
p.specht
| Ein de Prof. D. Knuth's 'Algorithm X-7' entwickeltes Teil verwendet nun Procedures en lugar de GOTO sowie INC y DEC en lugar de arithmetische Indexberechnung, lo que el Sache langsam auch hinsichtlich Geschwindigkeit brauchbar macht.
Título de la ventana "Kombinationen-Generator para k de N Elementen sin Wiederholung"
'(CL) CopyLeft 2015-09 by P.Pájaro carpintero, Wien; sin jegliche Gewähr!
Ventana de Estilo 24:Font 2
Declarar j%,s%,b%[],n%,dflg%'...Globale Variables
Main:
Cls rgb(170,255,220)
imprimir "\n 0 para aufsteigende, 1 para absteigende Lexikalordnung?: ";:input dflg%
imprimir "\n N = ";:input n%:imprimir " k = ";:input s%
SetSize b%[],s%:WhileLoop s%:b%[&Loop]=&Loop+n%-s%-1:EndWhile :j%=1
COMBN'Aufruf des Generators, el entonces Kombinationen b%[1.sz%] a
'DoSomethingUseful' liefert
imprimir "\n OK. ";:WaitInput
Goto "Main"
PROC COMBN
REPEAT
DoSomethingUseful'with b&[1..sz&]
caso j%>s%:BREAK
b%[j%]=b%[j%]-1:if b%[j%]<j%:inc j%:CONTINUE:endif
:mientras que j%>1:b%[j%-1]=b%[j%]-1:dec j%:endwhile
UNTIL 0
ENDPROC
proc DoSomethingUseful'...hier z.B. Anzeige el individual Elemente:
Whileloop s%,1,-1
if dflg%=0
imprimir int(n%-1-b%[&Loop]),'increasing
más
imprimir b%[&Loop],'decreasing
endif
EndWhile
imprimir " ";
caso %pos>(60-s%):imprimir
if %csrlin>30:imprimir "...":WaitInput:cls:endif
ENDPROC
|
|
|
| XProfan 11Computer: Gerät, daß es in Mikrosekunden erlaubt, 50.000 Fehler zu machen, zB 'daß' statt 'das'... | 19.05.2021 ▲ |
|
|
|