| Autor | Beitrag | 
| Fiete 
          Beiträge: 617
 Erhaltene Danke: 364
 
 W7
 Delphi 6 pro
 
 | 
Verfasst: Mi 17.01.18 17:30 
 
Moin,
 dies Programm löst die Aufgabe 3 aus dem BWInf 12, 1993.
 Für ein Hotel sollen neue Schlüssel hergestellt werden.
 Ein Schlüssel besteht aus einer Karte mit Löchern, die von einem Lichtstrahl im Türschloß
 abgetastet werden. Das Schloß wird passend eingestellt.
Rohling :
 O#O#O#O
 #O#O#O#
 O#O#O#O
 #O#O#O#
 O#O#O#O
 #O#O#O#
 O#O#O#O
 #O#O#O#
 O#O#O#O
   Die Schlüssel müssen folgende Regeln erfüllen:
 Von den 32 möglichen Positionen sind wenigstens 5 mit einem Loch zu versehen. 
 Es darf keine der Spalten, Zeilen oder Diagonalen vollständig gelocht sein
 Keine zwei Schlüssel dürfen identisch oder zueinander symmetrisch sein.
 Nach dem Start wird die Anzahl der zu generierenden Schlüssel festgelegt, maximal 9999.
 Identische oder symmetrische werden nicht gespeichert.
 Die Schlüssel werden durch eine 32-Bit Zahl dargestellt.
 Anschließend können aus einem festgelegten Bereich die Schlüssel angezeigt werden.
 Viel Spaß beim Testen.
 Gruß Fiete
Einloggen, um Attachments anzusehen!
 
_________________ Fietes Gesetz: use your brain (THINK)
 
 Zuletzt bearbeitet von Fiete am Mi 17.01.18 22:23, insgesamt 1-mal bearbeitet
 Für diesen Beitrag haben gedankt: Narses
 | 
|  | 
| Blawen 
          Beiträge: 616
 Erhaltene Danke: 33
 
 Win XP, Vista, 7
 Delphi 5 Prof., BDS 2006 Prof. RAD Studio XE
 
 | 
Verfasst: Mi 17.01.18 22:06 
 
Hallo Fiete
 Bei Deinem Eintrag scheinen zwei Fehler vorhanden zu sein (siehe Bild im Anhang).
 - Zum einen erscheint unter dem (ersten) Schlüsselbild, ein weiteres mit dem Hinweis "Bild nicht gefunden..."
 - und zum anderen scheint das Downloadfile auch nicht zu existieren, bzw. es wird nicht gefunden.
 
 Edit:
 
 @EE-Team:
 Interessanterweise wird der Downloadzähler aber um eins hochgezählt
 
 Gruss
 Blawen
 
Einloggen, um Attachments anzusehen!
 
_________________ Es kompilert, wir können ausliefern.
 Und es kompiliert wieder - das Update ist fertig - bitte 100 Euro    | 
|  | 
| Fiete  
          Beiträge: 617
 Erhaltene Danke: 364
 
 W7
 Delphi 6 pro
 
 | 
Verfasst: Mi 17.01.18 22:30 
 
Moin Blawen,
Fehler behoben.
 Gruß Fiete
 _________________ Fietes Gesetz: use your brain (THINK)
 | 
|  | 
| Blawen 
          Beiträge: 616
 Erhaltene Danke: 33
 
 Win XP, Vista, 7
 Delphi 5 Prof., BDS 2006 Prof. RAD Studio XE
 
 | 
Verfasst: Mi 17.01.18 23:06 
 
	  |  Fiete hat folgendes geschrieben  : |  	  | Moin Blawen, Fehler behoben.
 Gruß Fiete
 | 
 Das Bild wird nun angezeigt, die Datei wird aber nach wie vor nicht gefunden._________________ Es kompilert, wir können ausliefern.
 Und es kompiliert wieder - das Update ist fertig - bitte 100 Euro    | 
|  | 
| Fiete  
          Beiträge: 617
 Erhaltene Danke: 364
 
 W7
 Delphi 6 pro
 
 | 
Verfasst: Do 18.01.18 08:55 
 
Moin Blawen,
war gestern Abend wohl zu müde.
 Das Programm und Quelltext sind neu hochgeladen, hoffe es klappt.
 Gruß Fiete
 _________________ Fietes Gesetz: use your brain (THINK)
 | 
|  | 
| Horst_H 
          Beiträge: 1654
 Erhaltene Danke: 244
 
 WIN10,PuppyLinux
 FreePascal,Lazarus
 
 | 
Verfasst: Fr 19.01.18 10:06 
 
Hallo,
 immer wieder erstaunlich, wie schnell die Ausgabe mit Delphi ist.Mit Lazarus kompiliert wird es relativ dazu sehr langsam.
 "Heute" würde man sicher mit vorproduzierten Bitmustern arbeiten, um die Gültigkeit einer Karte zu prüfen, zumal ja die Karten als 32-Bitfeld gespeichert werden.
 Wäre es ein Vorteil, die produzierten Karten sortiert zu halten, dann könnte man mit binärer Suche Kollisionen entdecken.
 Egal, Rechnergeschwindigkeit ersetzt alles.Bei KartenMax auf 99999 erhöht sind es nur 10000-Kollisionen gewesen und die Hand noch nicht an der Kaffeetasse.
 Schön umgesetzt.
 
 Gruß Horst
 P.S
 Wenn nur 16 Karten erstellt, will das Programm nochmals Karten anzeigen und das sind dann nur leere Felder
 | 
|  | 
| Fiete  
          Beiträge: 617
 Erhaltene Danke: 364
 
 W7
 Delphi 6 pro
 
 | 
Verfasst: Fr 19.01.18 14:08 
 
Moin,
 	  | Zitat: |  	  | Wenn nur 16 Karten erstellt, will das Programm nochmals Karten anzeigen und das sind dann nur leere Felder. | 
 Wenn Du in Zeile 286
 		                       Delphi-Quelltext 
 									| 1:
 | if K=AN then Abbruch:=True;					 |  einfügst ist der Fehler behoben.
 Hab ich zu spät bemerkt.    Gruß Fiete_________________ Fietes Gesetz: use your brain (THINK)
 | 
|  | 
| Delphi-Laie 
          Beiträge: 1600
 Erhaltene Danke: 232
 
 
 Delphi 2 - RAD-Studio 10.1 Berlin
 
 | 
Verfasst: Fr 19.01.18 16:36 
 
_________________ Ordnung ist das halbe Leben - und sie zu schaffen die andere Hälfte.
 | 
|  | 
| Fiete  
          Beiträge: 617
 Erhaltene Danke: 364
 
 W7
 Delphi 6 pro
 
 | 
Verfasst: Fr 19.01.18 17:26 
 
Moin,
ja stimmt, hab ich schon mal benutzt.
 Es gibt nichts was nicht verbessert werden könnte.
 Gruß Fiete
 _________________ Fietes Gesetz: use your brain (THINK)
 | 
|  | 
| haentschman 
          Beiträge: 285
 Erhaltene Danke: 33
 
 
 DX10 Berlin Professional
 
 | 
Verfasst: So 21.01.18 15:17 
 
		                       Delphi-Quelltext 
 ...wird nicht compilieren wenn K und AN Integer (oder so) sind.
 		                       Delphi-Quelltext 
 ...das schon eher. 
 PS: Bitte beachtet wenigstens für die QT Beispiele den Delphi Styleguide. | 
|  | 
| Symbroson 
          Beiträge: 382
 Erhaltene Danke: 67
 
 Raspbian, Ubuntu, Win10
 C, C++, Python, JavaScript, Lazarus, Delphi7, Casio Basic
 
 | 
Verfasst: So 21.01.18 18:07 
 
Warum sollte es nicht kompilieren wenn man die Klammern weglässt? Du weist ja auf die Boolean Variable trotzdem sozusagen den Vergleich zu, der einen Bool-Wert zurückgibt. Die Klammer ändert da meines Wissens nach nichts. Oder ist das eine weitere Delphi-Macke? ^^ _________________ most good programmers do programming not because they expect to get paid or get adulation by the public, but because it's fun to program. (Linus Torvalds)
 | 
|  | 
| Fiete  
          Beiträge: 617
 Erhaltene Danke: 364
 
 W7
 Delphi 6 pro
 
 | 
Verfasst: So 21.01.18 21:55 
 
Der Compiler verarbeitet die Anweisung korrekt!
Die Klammer ist überflüssig.
 Ich arbeite mit D6 pro
 Gruß Fiete
 _________________ Fietes Gesetz: use your brain (THINK)
 | 
|  | 
| Symbroson 
          Beiträge: 382
 Erhaltene Danke: 67
 
 Raspbian, Ubuntu, Win10
 C, C++, Python, JavaScript, Lazarus, Delphi7, Casio Basic
 
 | 
Verfasst: So 21.01.18 21:59 
 
Hätte mich auch gewundert, wenn nicht. Danke für die Bestätigung!
In D7 geht es ebenfalls
 _________________ most good programmers do programming not because they expect to get paid or get adulation by the public, but because it's fun to program. (Linus Torvalds)
 | 
|  |