Einzelnen Beitrag anzeigen

Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#7

Re: Abfrage von Zahlen in einem SET

  Alt 12. Jan 2005, 03:43
Moin Rüdiger,

Zitat von hackie3of5:
Wie kann ich aber jetzt überprüfen, ob die Zahl zweimal enthalten ist?
Gar nicht.
Eine Menge kann jedes Element des Sets nur einmal enthalten.

Würde es gehen, könnte man es so machen:

Delphi-Quellcode:
type
  Zahl = (eins,zwei,drei,vier);
  Zahlen = set of Zahl;

var
  zWork : Zahl;
  znWork : Zahlen;

begin
  zWork := zwei;
  znWork := [eins,zwei,zwei,vier];
  znWork := znWork - [zWork];
  if (zWork in znWork) and (zWork in (znWork - [zWork])) then begin
    ShowMessage('Zweimal');
  end;
end;
Wie man aber leicht am Ergebnis sehen kann: Es kommt keine Meldung.
Du kannst das auch mal im Einzelschritt durchgehen, und Dir die Werte von znWork mal anschauen.

Robert hat es in seinem ersten Beitrag veranschaulicht:
Die Menge [...] ist nur ein Bitfeld.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat