www.vorhilfe.de
- Förderverein -
Der Förderverein.

Gemeinnütziger Verein zur Finanzierung des Projekts Vorhilfe.de.
Hallo Gast!einloggen | registrieren ]
Startseite · Mitglieder · Impressum
Forenbaum
^ Forenbaum
Status VH e.V.
  Status Vereinsforum

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Suchen
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Weitere Fächer:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
Forum "Matlab" - Werte zählen
Werte zählen < Matlab < Mathe-Software < Mathe < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Matlab"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

Werte zählen: Ende fehlt
Status: (Frage) beantwortet Status 
Datum: 11:12 Mo 06.08.2012
Autor: Ichlerndasnie

Aufgabe
Finde die Zahlen in dem Vektor x, die genau drei mal vorkommen und
speichere sie in einem neuen Vektor (sortiert von klein nach groß).
x = [1 2 5 2 2 7 8 3 3 1 3 8 8 8
Ergebnis: y = [2 3]

So, nun aber HOFFENTLICH erstmal meine letzte Frage: Hatte die Idee, den Vektor zu plotten, aber wie dann weiter?? Jetzt kann ich zwar sehen, welche Zahlen 3-mal vorkommen, aber das soll ja Matlab machen und nicht ich! Hier mein bisheriger Ansatz:
hist(x,unique(x))ein Diagramm erstellen ......UND DANN????
Ich habe diese Frage in keinem Forum auf anderen Internetseiten gestellt

        
Bezug
Werte zählen: Antwort
Status: (Antwort) fertig Status 
Datum: 13:39 Mo 06.08.2012
Autor: franzzink

Hallo,

so wie es aussieht, stehen im Vektor x ja nur natürliche Zahlen.

Für diesen Fall gibt es eine einfache Lösung:

Man definiert einen Hilfsvektor h, in dem man für jede natürliche Zahl (die in x auftaucht) speichert, wie oft sie in x vorkommt.  Dazu geht man den Vektor x Element für Element mit einer while-Schleife durch (Ein nützlicher Befehl ist hierbei: length(x) ) Wenn [mm] x_{i} [/mm] = n wird [mm] h_{n} [/mm] um eins erhöht.

Anschließend muss man h Element für Element durchgehen. Wenn gilt [mm] h_{i} [/mm] = 3, dann schreibt man die Zahl i in den Vektor y. y ist dann schon automatisch nach Größe sortiert.

Grüße und gutes Gelingen

Bezug
Ansicht: [ geschachtelt ] | ^ Forum "Matlab"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
ev.vorhilfe.de
[ Startseite | Mitglieder | Impressum ]