VBS ein Array absteigend sotieren und doppelte loeschen
Hallo Ihr
Ich hoffe Ihr könnt mir wieder helfen.
Die Aufgabe:
Ein Array z.B. von 10 Identnummern die in einer Textdatei stehn aber schon in ein Array übertragen wurden absteigend sortieren und doppelte Einträge löschen. Das Ganze soll ich in VBS umsetzen.
Ich würde mich echt Freuen wenn Ihr mir Helfen könntet und evtl. auch ein bisschen dazu schreibt was was macht das ich es auch nachvollziehen kann und etwas daraus lernen kann.
Viele Grüße
Andy
Ich hoffe Ihr könnt mir wieder helfen.
Die Aufgabe:
Ein Array z.B. von 10 Identnummern die in einer Textdatei stehn aber schon in ein Array übertragen wurden absteigend sortieren und doppelte Einträge löschen. Das Ganze soll ich in VBS umsetzen.
Ich würde mich echt Freuen wenn Ihr mir Helfen könntet und evtl. auch ein bisschen dazu schreibt was was macht das ich es auch nachvollziehen kann und etwas daraus lernen kann.
Viele Grüße
Andy
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 89617
Url: https://administrator.de/contentid/89617
Ausgedruckt am: 23.11.2024 um 05:11 Uhr
2 Kommentare
Neuester Kommentar
da solltest du dir erstmal überlegen, welchen sortieralgorithmus du nutzen möchtest.
was einfaches wäre
wenn du aufsteigend sortieren solltest, dann so.. kannste dir ja passend umdrehen.
if array[i]>array[i+1] then tauschen else i:=i+1
das noch passend in ne schleife packen, dann haste das schonmal sortiert.
und dann mit
if array[i]=array[i+1] then loeschen else i:=i+1 die doppelten löschen.
ist nicht wirklich effektiv für größere Mengen, aber bei so kleinen gehts ja.
was einfaches wäre
wenn du aufsteigend sortieren solltest, dann so.. kannste dir ja passend umdrehen.
if array[i]>array[i+1] then tauschen else i:=i+1
das noch passend in ne schleife packen, dann haste das schonmal sortiert.
und dann mit
if array[i]=array[i+1] then loeschen else i:=i+1 die doppelten löschen.
ist nicht wirklich effektiv für größere Mengen, aber bei so kleinen gehts ja.
Hallo Andy33 und willkommen im Forum!
Noch eine Anmerkung zum Löschen: Falls das Ganze ohne ein weiteres Array gelöst werden soll, könntest Du einen zu löschenden Eintrag auf einen möglichst niedrigen Wert setzen, einen Zähler mitlaufen lassen, am Ende nochmals (absteigend) sortieren und mit einem "ReDim Preserve" das Array auf die Anzahl der zu behaltenden Werte (berechnet aus ursprünglicher Größe des Arrays - Anzahl gelöschter Einträge) reduzieren - die gelöschten Werte "fallen oben raus".
Und, nur zur Sicherheit : http://msdn.microsoft.com/de-de/library/bb979305.aspx
Grüße
bastla
Noch eine Anmerkung zum Löschen: Falls das Ganze ohne ein weiteres Array gelöst werden soll, könntest Du einen zu löschenden Eintrag auf einen möglichst niedrigen Wert setzen, einen Zähler mitlaufen lassen, am Ende nochmals (absteigend) sortieren und mit einem "ReDim Preserve" das Array auf die Anzahl der zu behaltenden Werte (berechnet aus ursprünglicher Größe des Arrays - Anzahl gelöschter Einträge) reduzieren - die gelöschten Werte "fallen oben raus".
Und, nur zur Sicherheit : http://msdn.microsoft.com/de-de/library/bb979305.aspx
Grüße
bastla