Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Alle Kombinationen ausgeben (https://www.delphipraxis.net/206014-alle-kombinationen-ausgeben.html)

Kegasetu 10. Nov 2020 14:37

AW: Alle Kombinationen ausgeben
 
Zitat:

Zitat von Andreas13 (Beitrag 1477048)
Geht es immer noch um das Projekt mit den linearen Gleichungssystemen?

ja, aber das habe ich in den Griff bekommen. Zumindest mit der von mir gewählten Vorgehensweise.

Andreas13 10. Nov 2020 14:42

AW: Alle Kombinationen ausgeben
 
Zitat:

Zitat von Kegasetu (Beitrag 1476997)
Über ein Integer soll eingegeben werden, wie viel Stellen sich auf einen Bereich verteilen.
z.B. i :=5;
b :=20;
dann will ich alle Kombinationen bekommen, welche daraus entstehen.
Z.B. :- 1, 2, 3, 4, 5, x, x, x, x, x, x, x, x, x, x, x, x, x, ...
- 1, 2, 3, 4, x, 5, x, x, x, x, x, x, x, x, x, x, x, x, ...
- x, x, x, x, 1, 2, 3, 4, x, x, x, x, x, 5, x, x, x, x, ...

Auch kann es vorkommen, dass gezielt Stellen im Bereich nicht besetzt werden dürfen
Ich denke das Prinzip ist klar, wichtig ist, dass die 1 nicht hinter der 2 steht usw.

Sorry, aber ich habe nicht ganz verstanden, was Du genau vorhast.

TiGü 10. Nov 2020 14:57

AW: Alle Kombinationen ausgeben
 
Zitat:

Zitat von Andreas13 (Beitrag 1477038)
mit den Grundlagen von Delphi beschäftigen: Die neuste Version von Delphi-Starter findest Du im Forum Delphi-Treff https://www.delphi-treff.de/downloads/e-book/. Das ist eine gute und kostenfreie Einführung in die Delphi-Basics.

Bei mir ist der Link schon seit Monaten tot, da kommt keine PDF mehr.

Michael II 10. Nov 2020 15:06

AW: Alle Kombinationen ausgeben
 
Zitat:

Zitat von Kegasetu (Beitrag 1477031)
Hättest du vielleicht ein Beispiel mit 5 Halterungen und 20 Plätzen? Und als Ausgabe dann eine simple showMessage mit den Werten

Das Beispiel (siehe Link von oben) arbeitet mit 4 Halterungen und 10 Plätzen. Du kannst das leicht anpassen. Spiel's doch mal mit den 4 aus 10 durch. Du musst vorher nur noch in der Bewertungsfunktion meingebewertungsfunktion festlegen welche Kombination gut für dich ist und welche nicht. Danach lässt du das Programm laufen und eine beste Lösung wird berechnet.

Andreas13 10. Nov 2020 15:08

AW: Alle Kombinationen ausgeben
 
Zitat:

Zitat von TiGü (Beitrag 1477052)
Zitat:

Zitat von Andreas13 (Beitrag 1477038)
mit den Grundlagen von Delphi beschäftigen: Die neuste Version von Delphi-Starter findest Du im Forum Delphi-Treff https://www.delphi-treff.de/downloads/e-book/. Das ist eine gute und kostenfreie Einführung in die Delphi-Basics.

Bei mir ist der Link schon seit Monaten tot, da kommt keine PDF mehr.

Komisch... Aber ich habe den Delphi-Starter im Webarchiv gefunden:
http://web-old.archive.org/web/20120...nloads/e-book/
Gruß, Andreas

Kegasetu 10. Nov 2020 18:38

AW: Alle Kombinationen ausgeben
 
Zitat:

Zitat von Michael II (Beitrag 1477053)
Zitat:

Zitat von Kegasetu (Beitrag 1477031)
Hättest du vielleicht ein Beispiel mit 5 Halterungen und 20 Plätzen? Und als Ausgabe dann eine simple showMessage mit den Werten

Das Beispiel (siehe Link von oben) arbeitet mit 4 Halterungen und 10 Plätzen. Du kannst das leicht anpassen. Spiel's doch mal mit den 4 aus 10 durch. Du musst vorher nur noch in der Bewertungsfunktion meingebewertungsfunktion festlegen welche Kombination gut für dich ist und welche nicht. Danach lässt du das Programm laufen und eine beste Lösung wird berechnet.

Okay, ich probiere es morgen mal durch.

Eine Frage noch, wie wird das ganze getartet? Ich benutzte normalerweise nur eine Button.

Kegasetu 11. Nov 2020 06:35

AW: Alle Kombinationen ausgeben
 
Zitat:

Zitat von Kegasetu (Beitrag 1477071)

Eine Frage noch, wie wird das ganze getartet? Ich benutzte normalerweise nur eine Button.

Mein Fehler, weiter unten steht es.

Kegasetu 11. Nov 2020 07:14

AW: Alle Kombinationen ausgeben
 
Zitat:

Zitat von Michael II (Beitrag 1477053)
Zitat:

Zitat von Kegasetu (Beitrag 1477031)
Hättest du vielleicht ein Beispiel mit 5 Halterungen und 20 Plätzen? Und als Ausgabe dann eine simple showMessage mit den Werten

Das Beispiel (siehe Link von oben) arbeitet mit 4 Halterungen und 10 Plätzen. Du kannst das leicht anpassen. Spiel's doch mal mit den 4 aus 10 durch. Du musst vorher nur noch in der Bewertungsfunktion meingebewertungsfunktion festlegen welche Kombination gut für dich ist und welche nicht. Danach lässt du das Programm laufen und eine beste Lösung wird berechnet.

Der Code funktioniert so weit. Nun bekomme ich aber das Problem, wenn ich mehr als 13 Stellen am Brett habe bekomme ich den Fehler: stack overflow

Es sollte schon möglich sein so um die 200 Stellen besetzten zu können.

Kegasetu 11. Nov 2020 08:48

AW: Alle Kombinationen ausgeben
 
Zitat:

Zitat von Kegasetu (Beitrag 1477088)
Zitat:

Zitat von Michael II (Beitrag 1477053)
Zitat:

Zitat von Kegasetu (Beitrag 1477031)
Hättest du vielleicht ein Beispiel mit 5 Halterungen und 20 Plätzen? Und als Ausgabe dann eine simple showMessage mit den Werten

Das Beispiel (siehe Link von oben) arbeitet mit 4 Halterungen und 10 Plätzen. Du kannst das leicht anpassen. Spiel's doch mal mit den 4 aus 10 durch. Du musst vorher nur noch in der Bewertungsfunktion meingebewertungsfunktion festlegen welche Kombination gut für dich ist und welche nicht. Danach lässt du das Programm laufen und eine beste Lösung wird berechnet.

Der Code funktioniert so weit. Nun bekomme ich aber das Problem, wenn ich mehr als 13 Stellen am Brett habe bekomme ich den Fehler: stack overflow

Es sollte schon möglich sein so um die 200 Stellen besetzten zu können.

Das Problem hat sich auch geklärt. Ich werde mich jetzt mal ransetzten alles zusammen zuwürfeln.

Michael II 11. Nov 2020 13:50

AW: Alle Kombinationen ausgeben
 
Zitat:

Zitat von Kegasetu (Beitrag 1477088)
Der Code funktioniert so weit. Nun bekomme ich aber das Problem, wenn ich mehr als 13 Stellen am Brett habe bekomme ich den Fehler: stack overflow

Es sollte schon möglich sein so um die 200 Stellen besetzten zu können.


Wie du später gemerkt hast, gibt's keinen Stack Overflow.

Wenn du aber echt mit 200 Stellen rechnen lassen willst, dann musst du dir bewusst sein, dass das Aufzählen aller möglichen Kombinationen länger dauern kann als wir alle warten können. Beispiel n=200 Stellen und an k=100 Stellen was reinhängen: 9.054851465610329e+58 mögliche Kombinationen.
(Alle Zahlenkombinationen aus Lotto k=6 aus n=49 :13983816)

Kurz: Für grosse n musst du andere Wege gehen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:26 Uhr.
Seite 2 von 3     12 3      

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz