Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Sortieren von zahlen-aber wie? (https://www.delphipraxis.net/100947-sortieren-von-zahlen-aber-wie.html)

Maja 5. Okt 2007 20:13


Sortieren von zahlen-aber wie?
 
Hey ihr lieben Dephi-interessierte!

ich hab ein riesenproblem. ich soll einen algorithmus erstellen, welcher drei einzugende Zahlen vergleicht und in der Reihenfolge ihrer Größe wieder ausgibt. Jetzt hab ich schon ein programm, aber er macht nicht das, was er soll.
ich kopiers mal rein:

Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
begin
close;
end;


procedure TForm1.Button1Click(Sender: TObject);
var a,b,c:Integer;
begin
       //Eingabe
       a:=StrToInt(Edit1.Text);
       b:=StrToInt(Edit2.Text);
       c:=StrToInt(Edit3.Text);

       //Verarbeitung
       IF (a<b) AND (b<c) THEN
       begin
       Edit5.Text:=IntToStr(a);
       Edit4.Text:=IntToStr(b);
       Edit6.Text:=IntToStr(c);
       end
       ELSE
       IF (a<c) AND (c>b) THEN
       begin
       Edit5.Text:=IntToStr(a);
       Edit4.Text:=IntToStr(b);
       Edit6.Text:=IntToStr(c);
       end
       ELSE
       IF (b>a) AND (a<c) THEN
       begin
       Edit5.Text:=IntToStr(a);
       Edit4.Text:=IntToStr(b);
       Edit6.Text:=IntToStr(c);
       end
       ELSE
       IF (b<c) AND (c>a) THEN
       begin
       Edit5.Text:=IntToStr(a);
       Edit4.Text:=IntToStr(b);
       Edit6.Text:=IntToStr(c);
       end
       ELSE
       IF (c>a) AND (a<b) THEN
       begin
       Edit5.Text:=IntToStr(a);
       Edit4.Text:=IntToStr(b);
       Edit6.Text:=IntToStr(c);
       end
       ELSE
       IF (c<b) AND (b<a) THEN
       begin
       Edit5.Text:=IntToStr(a);
       Edit4.Text:=IntToStr(b);
       Edit6.Text:=IntToStr(c);
       end
       ELSE

       



end;

end.
ich habe a=1, b=2,c=3 und dafür gibt es ja 6 varianten: 123,132,213,231,312 und 321. bitte bitte helft mir!!!!
ich bin total am verzweifeln!!!!!!!!!!!

[edit=MrSpock]Code Tags gesetzt. Mfg, MrSpock[/edit]

Dax 5. Okt 2007 20:16

Re: BRAUCHE GANZ DRINGEND HILFE FÜR HAUSAUFGABE!!!!!!!BITTE
 
Willkommen in der DP :dp:

Hier wird dir niemand deine Hausaufgaben machen, auch nicht, wenn du uns im Titel anschreist ;) Was dir allerdings helfen könnte wäre Daniels Tutorial zu Hier im Forum suchenSortieralgortihmen.

mkinzler 5. Okt 2007 20:17

Re: BRAUCHE GANZ DRINGEND HILFE FÜR HAUSAUFGABE!!!!!!!BITTE
 
Versuch es mal mit einem Sortieralgorithmus ( BubbleSort, QuickSort, ShellSort, ...)

DeddyH 5. Okt 2007 20:18

Re: BRAUCHE GANZ DRINGEND HILFE FÜR HAUSAUFGABE!!!!!!!BITTE
 
Hallo Maja,
1. willkommen in der DP :dp:
2. lösen wir hier keine Hausaufgaben, sondern geben höchstens Hilfestellungen.
3. Formatiere bitte Deinen Quelltext (Du kannst Deinen Beitrag editieren, vor den Quelltext klicken, dann oben auf den Button "Delphi-Code", dann an das Ende des Quelltextes Klicken und wieder o.a. Button betätigen).
4. ist das eine ganz einfache Sortierfunktion.

[edit] Punkt 3 bereits durch den Vulkanier erledigt :zwinker: [/edit]

MrSpock 5. Okt 2007 20:18

Re: BRAUCHE GANZ DRINGEND HILFE FÜR HAUSAUFGABE!!!!!!!BITTE
 
Hallo Maja,

herzlich willkommen in der Delphi-PRAXiS.

Wir haben in unseren Regeln festgelegt, dass der Titel einen Hinweis auf das Problem geben soll, zu dem du eine Lösung benötigst. Ändere doch bitte den Titel entsprechend. Außerdem solltest du nicht nur Großbuchstaben verwenden, dass wäre so als schreist du uns an, und das willst du sicher nicht. :zwinker:

Daniel 5. Okt 2007 20:21

Re: BRAUCHE GANZ DRINGEND HILFE FÜR HAUSAUFGABE!!!!!!!BITTE
 
ich bin total am verzweifeln!!!!!!!!!!!


... ich ebenfalls, wenn ich sowas lesen muss.

(1) Du überlegst Dir mal konkrete Fragen. Schöne Ansatzpunkte wären: "Was macht das Programm?", "Was macht es nicht?" und "Was sollte das Programm machen?"

(2) Du stellst Dir selber die Fragen, was die einzelnen Zeilen machen. Deine Lösung ist nicht gerade elegant, aber im Wesentlichen hast Du alle Befehle beisammen, um zur Lösung zu kommen. Du kannst die Eingaben in Zahlen wandeln, sie vergleichen und wieder zurückschreiben. Mehr musst Du nicht (zwingend) können.

(3) Um das Problem zu verstehen, reduzierst Du die Anzahl an Zahlen auf 2. Die Technik klappt ja, offenbar hast Du Dich nur in der Logik verheddert.

malo 5. Okt 2007 20:26

Re: BRAUCHE GANZ DRINGEND HILFE FÜR HAUSAUFGABE!!!!!!!BITTE
 
Ist dir schonmal aufgefallen, dass das Programm immer das gleiche macht?
Delphi-Quellcode:
Edit5.Text:=IntToStr(a);
       Edit4.Text:=IntToStr(b);
       Edit6.Text:=IntToStr(c);
Dein Programm führt nur diese Anweisung aus, egal, in welchem Verhältnis a,b und c stehen.

Maja 5. Okt 2007 20:29

Re: BRAUCHE GANZ DRINGEND HILFE FÜR HAUSAUFGABE!!!!!!!BITTE
 
ich möchte keinen ärgern oder anschreien, sorry! danke für eure antworten! ja, ich hab mich verheddert und hänge irgendwie fest:-(
wie kann ich das thema ändern?

MrSpock 5. Okt 2007 20:31

Re: BRAUCHE GANZ DRINGEND HILFE FÜR HAUSAUFGABE!!!!!!!BITTE
 
Über den "Edit" Button.

inherited 5. Okt 2007 20:32

Re: BRAUCHE GANZ DRINGEND HILFE FÜR HAUSAUFGABE!!!!!!!BITTE
 
Mit dem Edit-Knopf oben rechts über deinem Beitrag.

Und malo hat im Wesentlichen schon gesagt was du falsch machst.


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:23 Uhr.
Seite 1 von 3  1 23      

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