Delphi-PRAXiS
Seite 1 von 4  1 23     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Sortieren mit direktem Auswahlort (https://www.delphipraxis.net/183041-sortieren-mit-direktem-auswahlort.html)

rebellxsky 6. Dez 2014 20:58

Delphi-Version: 5

Sortieren mit direktem Auswahlort
 
Hi Leute,

ich muss in der Schule die Arbeitsweise des Sortierverfahrens mit direktem Auswahlort erklären.
Das Prinzip habe ich schon verstanden.
Mein Problem ist, dass ich nicht weiß, wie man dies in Delphi/Lazarus durchführt.

Ich würde denken, dies macht man mit zwei Array´s, ein unsortiertes und ein sortiertes.:?
Aber wie sucht man denn die kleinste Zahl im unsortierten Feld heraus???
Außerdem will ich die Zahlen alle über ein Edit-Feld erstmal einlesen (einzeln). Geht das irgendwie???

Ich wäre euch echt dankbar für jede Hilfe.

LG.

himitsu 6. Dez 2014 23:08

AW: Sortieren mit direktem Auswahlort
 
Array oder Liste ... ist am Ende in etwa das Gleiche ... was man halt lieber hat.

Zitat:

Zitat von rebellxsky (Beitrag 1282465)
Außerdem will ich die Zahlen alle über ein Edit-Feld erstmal einlesen (einzeln). Geht das irgendwie???

TEdit ... TButton (hinzufügen) ... im OnClick das Array vergrößern und den neuen Wert anhängen oder ein Add auf die Liste ? :stupid:

rebellxsky 7. Dez 2014 00:07

AW: Sortieren mit direktem Auswahlort
 
ja genau.

jeder wert soll einzeln eingelesen werden und dann angehängt.
Aber dafür muss ja mit jedem betätigen des Buttons das Array um eins vergrößert und dann noch die zahl hinzugefügt werden.
Und an dieser Stelle komme ich nicht weiter.

Und dann sollen die zahlen noch sortiert werden...

humbuck 7. Dez 2014 00:59

AW: Sortieren mit direktem Auswahlort
 
Probiers mal damit:

Delphi-Quellcode:
procedure auswahlsort (var a: array of Word);
var bis,i,j,k : LongInt;
h : Word;
begin
bis := High(a);
for i := 0 to bis - 1 do
begin
h := a[i];
k := i;
for j := i + 1 to bis do if a[j] < h then
begin
h := a[j];
k := j
end;
a[k] := a[i];
a[i] := h
end
end;

humbuck 7. Dez 2014 01:03

AW: Sortieren mit direktem Auswahlort
 
...oder das...

Trifft es vielleicht noch eher...

Delphi-Quellcode:
procedure austauschsort (var a: array of Word);
var bis,i,j : LongInt;
h : Word;
begin
bis := High(a);
for i := 0 to bis - 1 do
for j := i + 1 to bis do
If a[i] > a[j] then begin
h := a[i];
a[i] := a[j];
a[j] := h
end
end;

humbuck 7. Dez 2014 01:09

AW: Sortieren mit direktem Auswahlort
 
Liste der Anhänge anzeigen (Anzahl: 1)
Letzteres entspricht dem folgenden Schema:

Dejan Vu 7. Dez 2014 09:33

AW: Sortieren mit direktem Auswahlort
 
Zitat:

Zitat von rebellxsky (Beitrag 1282475)
Aber dafür muss ja mit jedem betätigen des Buttons das Array um eins vergrößert und dann noch die zahl hinzugefügt werden.
Und an dieser Stelle komme ich nicht weiter.

Und dann sollen die zahlen noch sortiert werden...

Zitat:

Zitat von humbuck (Beitrag 1282478)
...das...Trifft es vielleicht noch eher...
Delphi-Quellcode:
procedure austauschsort (var a: array of Word);
...

Also irgendwie... ;-) Glaub nich (Antwort passt nicht so richtig zur Frage). Bezüglich der o.g. Frage wäre eher folgender Schnippsel hilfreicher:
Delphi-Quellcode:
var
  myList : TList<integer>;
  myArray : Array of Integer;

begin
  myList := TList<integer>.Create;
  setLength(myArray,0);

// Anfügen eines Wertes
// 1. An eine TList<int>
myList.Add(Value);

// 2. An ein Array
  SetLength(myArray, Length(myArray) + 1);
  myArray [Length(myArray)] := Value;

humbuck 7. Dez 2014 11:38

AW: Sortieren mit direktem Auswahlort
 
Morgens!

Zitat:

Also irgendwie... Glaub nich (Antwort passt nicht so richtig zur Frage).
Lieber Dejan Vu :?:

Die Aufgabenstellung umfasst doch die Frage nach einem bestimmten Algorithmus: Sortieren mit direktem Auswahlort sprich: Sortierung durch direkte Auswahl...
Meine Programmbeispiele beantworten die Frage nach dem gesuchten Algorithmus definitiv... Ein anderes Programmbeispiel mit umfassender Beschreibung findet man (sogar in Delphi geschrieben) unter Wikipedia. :wink:
Dazu muss man dann noch EINE seiner Fragen berücksichtigen:
Zitat:

Aber wie sucht man denn die kleinste Zahl im unsortierten Feld heraus???
Hmmm... Da passt meine Antwort doch auch oder? :wink:

Naja, ich gebe zu, nicht all seine Fragen werden von mir beantwortet...
Aber ich glaube darum sollte es hier auch gar nicht gehen.

Ich denke, an dieser Stelle müsste der junge Padawan noch mal zum Zuge kommen und vielleicht erklären, was genau die Aufgabenstellung an IHN ist.

Mir stellt sich nämlich die Frage, ob es eine genaue Definition zur Lösung einer gestellten Aufgabe gibt, oder ob er vielleicht nur das gesucht Sortierverfahren, bzw. den Algorithmus, in Delphi umzusetzen hat und es ihm dabei frei gestellt ist, wie er ein veranschaulichendes Programm schreibt; nämlich mit dem benannten Button (auf den bisher noch keiner von uns genauer eingegangen ist) und einem dynamischen Array.
Es stellt sich nämlich hieraus unweigerlich die Frage, wird von einer statischen Werte-Menge wie z.B. Lottozahlen ausgegangen oder eine variable Werte-Menge wie z.B. aus sich veränderten Messergebnissen...?

Also: Ein Appell an den Verfasser dieses Themas: Schreib doch mal wieder. :-D

Dejan Vu 7. Dez 2014 11:44

AW: Sortieren mit direktem Auswahlort
 
Zitat:

Zitat von humbuck (Beitrag 1282497)
Hmmm... Da passt meine Antwort doch auch oder? :wink:

Stimmt ja, nur so unmittelbar nach der Frage, wie man Zahlen in ein Array stopft, fand ich deine Antwort halt lustig.

Stell Dir vor, jemand will von Hamburg nach Berlin mit dem Auto, und zwar in die Skeuderitzer Str. 28. Er fragt, wo der Rückwärtsgang ist, weil er ausparken muss und Du gibst im Tipps, wie man in die Skeuderizter Str. einbiegt (weil da ne Baustelle ist). Klar, ohne deinen Tipp kommt er nicht an, aber er muss doch erst mal losfahren :lol:

Komm schon, die Sonne scheint (jedenfalls hier)

Grüße
:-D

humbuck 7. Dez 2014 12:19

AW: Sortieren mit direktem Auswahlort
 
Naja, wenn der Autofahrer nicht mal weiß, wo der Rückwärtsgang ist, sollte er sich vielleicht mit einem öffentlichen Verkehrsmittel anfreunden. Vielleicht hat er ja noch gar keinen Führerschein. Mit Bus oder Bahn käme er aber wahrscheinlich schon mal ans Ziel.

*grins*

Ich habe so das Gefühl, als wenn der junge Verfasser dieses Themas auch noch keine Plan hat, wo er die Gänge findet.

Aber wir können ihm ja Stück für Stück weiter helfen. 8-)

Dabei ist es dann auch sehr schön, wenn jemand noch was zu schmunzeln hat. :thumb:


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:07 Uhr.
Seite 1 von 4  1 23     Letzte »    

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz