Alle möglichen Kombinationen berechnen

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
Delle
Beiträge: 1130
Registriert: 10.05.2005 22:48

Alle möglichen Kombinationen berechnen

Beitrag von Delle »

Hallo,

angenommen ich generiere aus den Zahlen 0-9 und den Buchstaben a-z (nur klein) einen zufälligen 6-stelligen String...

Wieviele Kombinationen sind da eigentlich möglich?

34 verschiedene Zeichen sind es ja jedenfalls...
PB 6.21 | Win 11
Benutzeravatar
Captn. Jinguji
Beiträge: 397
Registriert: 07.06.2005 19:47
Computerausstattung: PB 4.73x64, i7, WIN 10x64, ATI NVidia RTX 2070
Wohnort: Witten

Beitrag von Captn. Jinguji »

Anz=(34*33*32*31*30*29)/(1*2*3*4*5*6)
wenn keine Wiederholung zulässig ist, also alle 6 Zeichen des Strings voneinander verschieden sind. Dann stehen für die Auswahl des 1. Zeichens 34, des zweiten nur noch 33 Möglichkeiten und so weiter.. zur Verfügung

Auch als Binomialkoeffizient berüchtigt.
Ist das Kunst hier, oder kann das weg ?
Benutzeravatar
gnasen
Beiträge: 578
Registriert: 01.08.2007 14:28
Computerausstattung: PB 4.60

Beitrag von gnasen »

hier eine Tabelle für die gängigsten Kombinationsberechnungen:

http://de.wikipedia.org/wiki/Kombinator ... menfassung
pb 4.51
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

> Auch als Binomialkoeffizient berüchtigt.

und im "Volksmund" als "n über k" bekannt.

Bild

der letzte Bruch ist das, was Jinguji als (34*33*32*31*30*29)/(1*2*3*4*5*6) hingeschrieben hat.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
STARGÅTE
Kommando SG1
Beiträge: 7031
Registriert: 01.11.2005 13:34
Wohnort: Glienicke
Kontaktdaten:

Beitrag von STARGÅTE »

also gerademal 1,3 Mio ^^

Code: Alles auswählen

 ; Berechnet die Fakultät einer Zahl
 Procedure.d Factorial(Value)
  Protected n, Factorial.d = 1
  For n = 2 To Value
   Factorial * n
  Next n
  ProcedureReturn Factorial
 EndProcedure
 
 Debug Factorial(34)/(Factorial(6)*Factorial(28))
PB 6.01 ― Win 10, 21H2 ― Ryzen 9 3900X, 32 GB ― NVIDIA GeForce RTX 3080 ― Vivaldi 6.0 ― www.unionbytes.de
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

achso...

n über k ist die Anzahl Kombinationen "ohne Zurücklegen", also jedes
Zeichen darf nur einmal vorkommen, wie bei den Lottozahlen (49 über 6)

mit Zurücklegen, also wenn jedes Zeichen beliebig oft vorkommen kann,
ist das einfach n hoch k, also hier 34^6, das ist 1.544.804.416
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
Captn. Jinguji
Beiträge: 397
Registriert: 07.06.2005 19:47
Computerausstattung: PB 4.73x64, i7, WIN 10x64, ATI NVidia RTX 2070
Wohnort: Witten

Beitrag von Captn. Jinguji »

Kaeru Gaman hat geschrieben:> Auch als Binomialkoeffizient berüchtigt.

und im "Volksmund" als "n über k" bekannt.
aber nach "n über k" kann man schlechter suchen ;))
Kaeru Gaman hat geschrieben:der letzte Bruch ist das, was Jinguji als (34*33*32*31*30*29)/(1*2*3*4*5*6) hingeschrieben hat.

Ähem.... "Captn. Jinguji" bitte, soviel Zeit muss sein!
Ist das Kunst hier, oder kann das weg ?
Benutzeravatar
Captn. Jinguji
Beiträge: 397
Registriert: 07.06.2005 19:47
Computerausstattung: PB 4.73x64, i7, WIN 10x64, ATI NVidia RTX 2070
Wohnort: Witten

Beitrag von Captn. Jinguji »

gnasen hat geschrieben:hier eine Tabelle für die gängigsten Kombinationsberechnungen:

http://de.wikipedia.org/wiki/Kombinator ... menfassung
Ahhh nette Zusammenstellung! Danke! (Kann man immer brauchen)
Ist das Kunst hier, oder kann das weg ?
Benutzeravatar
Delle
Beiträge: 1130
Registriert: 10.05.2005 22:48

Beitrag von Delle »

Hallo,

ich kann man das überhaupt ausrechnen? Hab hier auf dem Taschenrechner leider keine Hochfunktion, ebenso im Windows-Calc nicht :-(

34 verschiedene Zeichen...

6-stellig: ? Kombinationen
7-stellig: ? Kombinationen
8-stellig: ? Kombinationen
PB 6.21 | Win 11
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

> ebenso im Windows-Calc nicht

natürlich hat der eine!

stell mal im Menu "Ansicht" auf "Wissenschaftlich" um.

> 34 verschiedene Zeichen...
n = 34

> 6-stellig
k = 6

> 7-stellig
k = 7

> 8-stellig
k = 8

> ? Kombinationen
n hoch k
Taste [x^y] aufm Calc,
in PB:

Code: Alles auswählen

n = 34
k = 7
Debug Pow( n, k )


> Ähem.... "Captn. Jinguji" bitte, soviel Zeit muss sein!

ok, sorry!
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Antworten