![]() |
Wie eine Summe in seine bekannten Summanden zerlegen ?
Hallo,
ich habe mehrere DB's mit den DB-ID's (2, 4, 8, 16, 32, 64, 128). Nun habe ich auch ein DB Material mit einer Spalte "In_Gruppe" (z.B. DB4 + DB128 = 132, in dieser Spalte steht, daß dieser Material von welchen o.g. DB's benutzt werden). In der Summe heißt dies z.B DB4 und DB128. 1. lesen der In_Gruppe Spalte: ich will jetzt wissen, welche DB's in dieser 132 enhalten sind ? (also 4 und 128) 2. Speichern in die In_Gruppe Spalte: íst in In_Gruppe=132 schon DB16 z.B enthalten ? (also Nein, neue DB16 addieren In_Gruppe=132+DB16 d.h in 148 ist DB4, DB128 und DB16 enthalten) Könnte jemand einen Tip geben oder so etwas begegnet. MFG |
AW: Wie eine Summe in seine bekannten Summanden zerlegen ?
Delphi-Quellcode:
var
inGruppe: Integer; { alle verwendeten DBs iterieren } inGruppe := <Wert aus Datenfeld>; for I in TIntegerSet(inGruppe) do begin { hier hat I nur die enthaltenen Werte } end; { DB16 hinzufügen, wenn noch nicht da } inGruppe := <Wert aus Datenfeld>; Include(TIntegerSet(inGruppe), 16); <Wert in Datenfeld> := inGruppe; |
AW: Wie eine Summe in seine bekannten Summanden zerlegen ?
Tipp: Guck dir die IDs und die Summen mal in Binärdarstellung an. Stichwort: Bitmasken.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:56 Uhr. |
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