INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
mit Mengen(?) arbeiten
08.08.2018, 15:43
Beitrag #1
mit Mengen(?) arbeiten
hallo,
ich weiss nicht ob das jetzt in C++ auch Mengen heisst,
hab jetzt etliche Zeit im www verbracht, und bin nicht schlauer.

Ich möchte eine Ansammlung von zahlenwerten, zB ( 0,2,3,7,8) haben. Diese gebe ich vor.
Im Programm möchte ich dann abfragen ob eine Zahl xx in dieser Menge vorhanden ist.

Geht das nur über ein Array ?, wobei ich bei einer 2.Datenansammlung dann nicht einmal die Anzahl der Einträge wüsste, und beim lesen evtl über das Ende hinaus schiesse.
Wie muss ich da rangehen ?

Danke für Antworten.
mfG Uwe
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
08.08.2018, 16:19
Beitrag #2
RE: mit Mengen(?) arbeiten
Der erste Fall ließe sich über ein Array lösen.

Bei der 2.Datenansammlung wir es schwieriger.
Hat die 2.Datenansammlung denn eine maximale Anzahl Elemente oder kann die Anzahl ∞ werden?
Gibt es in der 2.Datenansammlung einen Wert der garantiert nicht darin enthalten ist? (0...255) dann könnte man den als Endzeichen nehmen.

Gruß Arne
Mit zunehmender Anzahl qualifizierter Informationen bei einer Fragestellung, erhöht sich zwangsläufig die Gefahr auf eine zielführende Antwort.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
08.08.2018, 16:45
Beitrag #3
RE: mit Mengen(?) arbeiten
Hallo Arne,
ich möchte folgendes machen:
Ich stelle 2 oder 3 Mengenansammlungen VOR Programmstart bereit.
zB die Pinbelegung eines Arduino.
der Benutzer wählt dann zB im Setup() den Arduino-typ aus,
und ich muss dann dementsprechend mit meinem Programmablauf reagieren,
wie zB eine PIN-Kontrolle etc, welcher der User ausgewählt hat ( aus meinen Vorgaben was möglich ist/wäre )

da ich zwar weiss, wieviele element da in der Datei vorher stehen, kann ich das mit array machen, kein Problem,
Ich komme aus dem Pascal-Bereich und da geht das ganz einfach.
ich erstelle eine Menge mit "set of" und greife dann innerhalb des Programm mit der Abfrage "if in Menge" zu.

Genau so etwas suche ich, weil ein Array zu durchforsten ist doch eh "zeitverschwendung" im Prog.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
08.08.2018, 17:16
Beitrag #4
RE: mit Mengen(?) arbeiten
Es gibt Suchfunktionen wie z.B. strstr für Strings. Aber so was suchst du nicht. Und auch die wird vermutlich das Array Element für Element abklappern.
Also wäre eine selbst geschriebene Funktion die das Array in einer Schleife durchsucht zwar die "Zeitverschwendung" aber wohl immer noch die schnellste Variante.
Mir fällt derzeit nichts anderes ein.

Gruß Arne
Mit zunehmender Anzahl qualifizierter Informationen bei einer Fragestellung, erhöht sich zwangsläufig die Gefahr auf eine zielführende Antwort.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
08.08.2018, 17:36
Beitrag #5
RE: mit Mengen(?) arbeiten
hi arne ,
danke für deine schnelle Antwort
ich hab jetz mal sowas gebastelt, baut auf Array auf, inkl deinem Tip mit "255"-Begrenzer wie bei Strings "\0".
mal sehen ob ich da was hinbekomme.
kann ja zur not eine eigene selbstständige classe erstellen, die dann alles in meiner Pascal-manier erledigt. ( nicht C++-typisch, aber wenns geht Rolleyes )

PHP-Code:
enum e_arduino_type atNanoatUnoatMega };
enum e_pin_type ptAnalogptDigital };
// 3 = atNano ... atMega ,   2 = analogPin / digitalPin, alles lesen bis "255" kommt, dann = ende  => (array)Count.-1
const e_arduino_type ArduinoPins[atMega +1][ptDigital 1] = {
        {
A0A1A2A3A4A5A6A7255}, {56391011255},
        {
255}, {255},
        {
255}, {255}
}; 
mfg Uwe
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
08.08.2018, 17:48
Beitrag #6
RE: mit Mengen(?) arbeiten
Ich fürchte du musst bei deiner Idee selbst weiter forschen wenn sich sonst niemand meldet. Ich bin da mit meinen bescheidenen C++ Kenntnissen erst mal raus.

Gruß Arne
Mit zunehmender Anzahl qualifizierter Informationen bei einer Fragestellung, erhöht sich zwangsläufig die Gefahr auf eine zielführende Antwort.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
08.08.2018, 17:52
Beitrag #7
RE: mit Mengen(?) arbeiten
kein Problem, das bekomm ich hin, (hoffentlich)
wollte gerade noch schreiben, dass die reine "255" als einzigster eintrag nur drin steht, weil ich erst die Pins der Arduinos googeln muss.
mfG Uwe
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
09.08.2018, 17:27
Beitrag #8
RE: mit Mengen(?) arbeiten
Hallo uwe,
Zitat:wobei ich bei einer 2.Datenansammlung dann nicht einmal die Anzahl der Einträge wüsste, und beim lesen evtl über das Ende hinaus schiesse.

Naja nicht wirklich. Über
Code:
int count = sizeof(myArray) / sizeof(int);
hat man in Count ganz schnell die Anzahl der Einträge, wenn es ein int - Array ist.
Und das Suchen könnte so aussehen:
Code:
// gucken ob y in myArray
for (int x = 0; x < count; x++)
{
  if (y == myArray[x]) break;
}

Ich denke dass in anderen Sprachen auch kaum was grundsätzlich anderes genutzt wird.
Grüße Ricardo

Nüchtern betrachtet...ist besoffen besser Big Grin
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Ablaufstruktur beim arbeiten mit Sensorwerten? Jan_OL 22 2.475 02.11.2017 00:08
Letzter Beitrag: georg01
  Arbeiten mit millis Franz54 5 1.110 07.03.2017 20:43
Letzter Beitrag: Tommy56

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste