PureBoard
http://forums.purebasic.com/german/

Frage zur Daten
http://forums.purebasic.com/german/viewtopic.php?f=16&t=31982
Seite 1 von 2

Autor:  marcelx [ 22.04.2020 14:29 ]
Betreff des Beitrags:  Frage zur Daten

Hallo,

ich habe Daten in der Form (als Beispiel):

zur "A" gehört "1", "2" und zur "1" gehört "Eins", zur "2" gehört "Zwei"
zur "B" gehört "4" und zu "4" gehört "OK"
zur "C" gehört "4", "2", "51" und zu "4" gehört "lala" zu "2" gehört "mama" und zu "51" gehört "papa"

Ich will wissen z.B. was gehört zur "C" und "2" ( => "mama")

Hat jemand eine Idee wie ich meine Daten organisieren kann.

Autor:  Kiffi [ 22.04.2020 14:40 ]
Betreff des Beitrags:  Re: Frage zur Daten

kann man beispielsweise mit einer Map machen. Der Key wird dann aus Buchstabe + Zahl gebildet.

Code:
NewMap myMap.s()

myMap("A|1")  = "Eins"
myMap("A|2")  = "Zwei"

myMap("B|4")  = "OK"

myMap("C|4")  = "lala"
myMap("C|2")  = "mama"
myMap("C|51") = "papa"

Debug myMap("C|2")


Kommt letztendlich darauf an, was Du damit machen willst. Wenn es komplexer werden soll, kann man auch über den Einsatz einer Datenbank nachdenken.

Grüße ... Peter

Autor:  marcelx [ 22.04.2020 14:51 ]
Betreff des Beitrags:  Re: Frage zur Daten

Danke Kiffi.
Ich präzisiere mein Problem:
Ich will alle Daten, welchen zur "A" gehören:
1 Eins
2 Zwei

Gruß
MarcelX

Autor:  Nino [ 22.04.2020 15:12 ]
Betreff des Beitrags:  Re: Frage zur Daten

Du kannst z.B. eine Adjazenzliste oder -matrix anlegen.

Autor:  marcelx [ 22.04.2020 16:09 ]
Betreff des Beitrags:  Re: Frage zur Daten

Danke Nino, leider weis ich nicht wie ich dass interpretieren solle.
Ich muss noch dazu sagen, die Daten das z.B. zur "A" gehören keine Relation zu der andere Daten haben

Autor:  ST4242 [ 22.04.2020 19:54 ]
Betreff des Beitrags:  Re: Frage zur Daten

Hallo,

vielleicht geht es mit verschachtelten Maps

Code:
; zur "A" gehört "1", "2" und zur "1" gehört "Eins", zur "2" gehört "Zwei"
; zur "B" gehört "4" und zu "4" gehört "OK"
; zur "C" gehört "4", "2", "51" und zu "4" gehört "lala" zu "2" gehört "mama" und zu "51" gehört "papa"
;
; Ich will wissen z.B. was gehört zur "C" und "2" ( => "mama")

Structure DatenMap
  Map daten.datenmap()
EndStructure
NewMap mapdaten.datenmap()
AddMapElement(mapdaten(),"A")
AddMapElement(mapdaten()\daten(),"1")
AddMapElement(mapdaten()\daten()\daten(),"Eins")

AddMapElement(mapdaten()\daten(),"2")
AddMapElement(mapdaten()\daten()\daten(),"Zwei")

AddMapElement(mapdaten(),"B")
AddMapElement(mapdaten()\daten(),"4")
AddMapElement(mapdaten()\daten()\daten(),"OK")

;suche nach a 2
If FindMapElement(mapdaten(),"A")
  If FindMapElement(mapdaten()\daten(),"2")
    Debug MapKey(mapdaten()\daten()\daten())
  EndIf
EndIf



Falls die Tiefe der verschachtelung bekannt ist, kann es vielleicht auch einfacher gestaltet werden.

Gruß

Stefan

Autor:  marcelx [ 22.04.2020 20:06 ]
Betreff des Beitrags:  Re: Frage zur Daten

Danke Stefan,
so ist es wunderbar und ich habe dabei was gelernt

Gruß
MarcelX

Autor:  Kiffi [ 22.04.2020 20:12 ]
Betreff des Beitrags:  Re: Frage zur Daten

@ST4242:

geht sogar noch ein wenig einfacher:
Code:
;suche nach A 2
Debug MapKey(mapdaten("A")\daten("2")\daten())

Autor:  marcelx [ 22.04.2020 21:46 ]
Betreff des Beitrags:  Re: Frage zur Daten

Zusatz Frage:
wie kann ich für z.B. "A" die Werte "1" /"Eins" und "2" / "Zwei"
in eine ForEach loop?

Autor:  Nino [ 23.04.2020 06:54 ]
Betreff des Beitrags:  Re: Frage zur Daten

marcelx hat geschrieben:
Zusatz Frage:
wie kann ich für z.B. "A" die Werte "1" /"Eins" und "2" / "Zwei"
in eine ForEach loop?

Es ist nicht verständlich, was du meinst. So kann dir niemand eine Antwort geben.
Du solltest vollständige und klare Sätze schreiben.

Seite 1 von 2 Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/