Autor |
Beitrag |
Method_Man
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Sa 04.12.04 14:32
Halli Hallo da bin ich wieder.
Wollte mir eine ganz simple Sortiermaschine coden, es hat aber Probleme.
Wenn ich jetzt einige Sachen eintippe z.B. springt er nicht in die nächste Zeile, beim Stringgrid1 // Button1.click
Ich weiss nicht ob er richtig Sortiert, scheint wohl fehler zu geben.
Könnt Ihr mir bitte helfen?
Viele Grüße
Method Man
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54: 55: 56: 57: 58: 59: 60: 61: 62: 63: 64: 65: 66: 67: 68: 69: 70: 71: 72: 73: 74: 75: 76: 77: 78: 79: 80: 81: 82: 83: 84: 85: 86: 87: 88: 89: 90: 91: 92: 93: 94: 95:
| unit Unit1;
interface
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Grids, ExtCtrls;
type TForm1 = class(TForm) StringGrid1: TStringGrid; Edit1: TEdit; Edit2: TEdit; Label1: TLabel; Label2: TLabel; Button1: TButton; Button2: TButton; Button3: TButton; Label3: TLabel; Timer1: TTimer; procedure FormCreate(Sender: TObject); procedure Button1Click(Sender: TObject); procedure Button3Click(Sender: TObject); procedure Button2Click(Sender: TObject); private public end;
var Form1: TForm1; x:Integer; Help1,Help2:String; y:Integer; implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject); begin Randomize; form1.color:=Random(999999); Stringgrid1.cells[1,0]:='Vorname'; Stringgrid1.cells[2,0]:='Nachname'; Stringgrid1.cells[3,0]:='Vorname'; Stringgrid1.cells[4,0]:='Nachname'; Stringgrid1.cells[5,0]:='Vorname'; Stringgrid1.cells[6,0]:='Nachname'; Stringgrid1.cells[7,0]:='Vorname';
repeat x:=x+1; Stringgrid1.cells[0,x]:=IntToStr(x); Until x=10001; end;
<span style="font-weight: bold">procedure TForm1.Button1Click(Sender: TObject); begin y:=1; Stringgrid1.Cells[1,y+1]:=Edit1.text; Stringgrid1.Cells[2,y+1]:=Edit2.text; y:=y+1; Edit1.text:=''; Edit2.Text:=''; end;</span>
procedure TForm1.Button3Click(Sender: TObject); begin x:=0; repeat x:=x+1; stringgrid1.cells[1,x]:=IntToStr(Random(100))+IntToStr(Random(100)); stringgrid1.cells[2,x]:=IntToStr(Random(100))+IntToStr(Random(100)); stringgrid1.cells[3,x]:=IntToStr(Random(100))+IntToStr(Random(100)); stringgrid1.cells[4,x]:=IntToStr(Random(100))+IntToStr(Random(100)); stringgrid1.cells[5,x]:=IntToStr(Random(100))+IntToStr(Random(100)); stringgrid1.cells[6,x]:=IntToStr(Random(100))+IntToStr(Random(100)); stringgrid1.cells[7,x]:=IntToStr(Random(100))+IntToStr(Random(100)); Until x=10000; end;
procedure TForm1.Button2Click(Sender: TObject); begin y:=1; Repeat If Stringgrid1.cells[1,y]>Stringgrid1.cells[1,y+1] then help1:=Stringgrid1.cells[1,y]; Stringgrid1.cells[1,y]:=Stringgrid1.cells[1,y+1]; Stringgrid1.cells[1,y+1]:=help1; y:=y+1; Until y=10000; end; end. | Moderiert von Tino: Topic aus Sonstiges verschoben am Fr 25.11.2005 um 11:09
Zuletzt bearbeitet von Method_Man am Sa 04.12.04 15:37, insgesamt 1-mal bearbeitet
|
|
Narses
      

Beiträge: 10183
Erhaltene Danke: 1256
W10ent
TP3 .. D7pro .. D10.2CE
|
Verfasst: Sa 04.12.04 14:58
Titel: Form
Moin!
Dein Code ist grausam zu lesen. Formatiere das bitte mal neu/sauber und reduziere es auf das notwendige. Was genau ist das Fehlverhalten?
cu
Narses
|
|
sourcehunter
      
Beiträge: 482
Win XP | Suse 10.1
Delphi 2005 Pers.
|
Verfasst: Sa 04.12.04 15:46
Warscheinlich hat das StringGrid nicht genug Zeilen. Probier doch einfach ein StringGrid.RowCount:=y+2 bevor du da was reinschreibst.
_________________ Linux und OpenSource rulez!
|
|
Method_Man
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Sa 04.12.04 16:35
Doch es hat genug Zeilen, nämlich 10000.
Hier ein Bild davon 
|
|
Narses
      

Beiträge: 10183
Erhaltene Danke: 1256
W10ent
TP3 .. D7pro .. D10.2CE
|
Verfasst: Sa 04.12.04 17:20
Titel: Vorschlag
Moin!
Zunächst mal: nennst du das "vernünfig eingerückter Code"?!?
Hier meine Version basierend auf dem, was ich aus deinem Code so aufgeschnappt habe.
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54: 55: 56: 57: 58: 59: 60: 61: 62: 63: 64: 65: 66: 67: 68: 69: 70: 71: 72: 73: 74: 75: 76: 77: 78: 79: 80: 81: 82: 83: 84: 85: 86: 87: 88: 89: 90: 91: 92: 93: 94: 95: 96: 97: 98: 99: 100: 101: 102: 103: 104: 105: 106: 107: 108: 109: 110: 111: 112: 113: 114: 115: 116: 117: 118: 119: 120: 121:
| unit Unit1;
interface
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Grids, ExtCtrls, ComCtrls;
type TForm1 = class(TForm) StringGrid1: TStringGrid; Button1: TButton; Button2: TButton; Button3: TButton; Edit1: TEdit; Edit2: TEdit; ProgressBar1: TProgressBar; Button4: TButton; procedure FormCreate(Sender: TObject); procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure Button3Click(Sender: TObject); procedure Button4Click(Sender: TObject); private public end;
var Form1: TForm1; global_break: Boolean;
implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject); var i: Integer; begin Randomize; StringGrid1.Cells[1,0] := 'Vorname'; StringGrid1.Cells[2,0] := 'Nachname'; StringGrid1.Cells[3,0] := 'Vorname'; StringGrid1.Cells[4,0] := 'Nachname'; StringGrid1.Cells[5,0] := 'Vorname'; StringGrid1.Cells[6,0] := 'Nachname'; StringGrid1.Cells[7,0] := 'Vorname'; for i := 1 to StringGrid1.RowCount-1 do StringGrid1.Cells[0,i] := IntToStr(i); end;
procedure TForm1.Button1Click(Sender: TObject); begin StringGrid1.Cells[1,StringGrid1.Row] := Edit1.Text; StringGrid1.Cells[2,StringGrid1.Row] := Edit2.Text; if (StringGrid1.Row < StringGrid1.RowCount -1) then StringGrid1.Row := StringGrid1.Row +1; Edit1.Clear; Edit2.Clear; end;
procedure TForm1.Button2Click(Sender: TObject); var i,j, k: Integer; StrBuf: TStringList; begin StrBuf := TStringList.Create; ProgressBar1.Max := StringGrid1.RowCount; ProgressBar1.Step := 1; ProgressBar1.Position := 0; global_break := FALSE; Button4.Enabled := TRUE; for i := StringGrid1.RowCount-2 downto 1 do begin for j := 1 to i do if (StringGrid1.Cells[1,j] > StringGrid1.Cells[1,j+1]) then begin StrBuf.Clear; for k := 1 to 7 do begin StrBuf.Add(StringGrid1.Cells[k,j]); StringGrid1.Cells[k,j] := StringGrid1.Cells[k,j+1]; end; for k := 1 to 7 do StringGrid1.Cells[k,j+1] := StrBuf.Strings[k-1]; end; ProgressBar1.StepIt; Application.ProcessMessages; if (global_break) then exit; end; Button4.Enabled := FALSE; StrBuf.Free; end;
procedure TForm1.Button3Click(Sender: TObject); var i,j: Integer; begin for i := 1 to StringGrid1.RowCount-1 do for j := 1 to 7 do StringGrid1.Cells[j,i] := IntToStr(Random(100))+IntToStr(Random(100)); end;
procedure TForm1.Button4Click(Sender: TObject); begin global_break := TRUE; ShowMessage('Abbruch des Sortiervorgangs!'); end;
end. |
Du hast min. einen krassen Fehler in deinem Code: dein Dreieckstausch ist nicht mit BEGIN-END gekapselt, deshalb wird von dem IF nur der erste Befehl beachtet. Das dürfte die Sortierfehler hervorrufen.
Dann sollte dir natürlich klar sein, dass du bei den "String-Zahlen" natürlich keine aufsteigende Folge erhalten wirst, sondern eben das Ergebnis eines Textvergleichs...
Wesentliche (strukturelle) Modifikationen an deinem Code von mir: ProgressBar und Abbruch-Button dazugenommen. Beim BubbleSort von 10.000 Zeilen in einem StringGrid war ich dann das Warten leid...  Ich habe natürlich auch die Anzahl der Zeilen im StringGrid mal auf die Eigenschaft desselben umgestellt, anstatt eine entsprechende Zeilenanzahl anzunehmen...
Ansonsten ist das Verhalten beim Eintragen der Werte aus den Editfeldern so modifiziert, dass die Werte in die aktuelle Cursorzeile geschrieben werden und, wenn möglich, der Cursor eine Zeile tiefer rutscht.
Mir scheint, du programmierst noch nicht sehr lange; deshalb habe ich mal deinen Code "aufgearbeitet". Ich möchte aber anmerken, dass das hier (im Forum) nicht üblich ist!
cu
Narses
|
|
Method_Man
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Sa 04.12.04 19:24
@Narses möchte dir sehr danken, dass du dir die Zeit genommen hast und es verbessert hast.
Also ich habe grad in der Schule Delphi als Grundkurs, seit 3-4 Monaten 3 Stunden die Woche und du weisst ja wie langsam es in der Schule geht.
Wie waren grad bei der Variablen Boolean, deshalb ist zwar alles sehr gut was du aufgeschrieben hast, aber so richtig nichts für mich, weil ich nicht viel kapiere.
Es soll so primitiv sein wie es nur geht.
Bei meinem Programm soll er 9999 Mal überprüfen bei 10000 Zahlen bis er es richtig sortiert hat.
Und wenn es geht bei jedem Mal, wenn einer richtig sortiert ist oder schon war nicht noch ein mal von vorne anfangen sondern berücksichtigen.
Danke dir nochmals.
|
|
Narses
      

Beiträge: 10183
Erhaltene Danke: 1256
W10ent
TP3 .. D7pro .. D10.2CE
|
Verfasst: Sa 04.12.04 20:12
Moin!
@Method_Man: Gerne, kein Problem. Sofern es was nutzt?
Zitat: | in der Schule Delphi als Grundkurs
Bei meinem Programm |
Sag mal, was du da programmierst, ist das für die Schule?
cu
Narses
|
|
Method_Man
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Sa 04.12.04 20:45
In der Schule habe ich es richtig programmiert, so dass er sortiert usw.
Am Mittwoch war ich nicht in der Schule und konnte mir den Code deshalb nicht aufschreiben. Ich schreibe am Montag eine Klausur, deshalb habe ich versucht alles wieder zuhause neu zu coden, damit ich es dann in der Klausur auch kann, nur klappt das irgendwie nicht so.
Wenn ich z.B. einfach nur Buchstaben sortieren möchte, so dass es A,B,C usw. ist, wie müsste ich am leichtesten und primitivsten programmieren?
|
|
Narses
      

Beiträge: 10183
Erhaltene Danke: 1256
W10ent
TP3 .. D7pro .. D10.2CE
|
Verfasst: Sa 04.12.04 21:45
Titel: Sortieren
Moin!
OK, hört sich erstmal nicht nach "Hausaufgaben" an, ich denke, dann kann ich dir helfen.
Method_Man hat folgendes geschrieben: | Wenn ich z.B. einfach nur Buchstaben sortieren möchte, so dass es A,B,C usw. ist, wie müsste ich am leichtesten und primitivsten programmieren? |
Es gibt viele Sortier-Algorithmen; das was du in deinem Code aufgegriffen hattest, sah mir auf den ersten Blick nach Bubble-Sort aus, deshalb habe ich in meinem Code auch diesen Algorithmus verwendet. Also, zunächst mal Bubble-Sort.
Es spielt übrigens beim Sortieren keine Rolle, WAS du da sortierst, solange die Elemente alle vom gleichen Typ sind. Deshalb ist es egal, ob es sich um Buchstaben oder Zahlen handelt. Gut, nehmen wir also Buchstaben.
Beispiel-Folge:
D C B A
Die prinzipielle Funktionsweise von BubbleSort könnte man (ganz ganz simpel) folgendermaßen beschreiben:
Wenn "n" die Anzahl der Elemente einer Folge ist, dann mache "n-1"-mal: vergleiche von "links" nach "rechts" nebeneinander liegende Elemente und tausche diese aus, wenn das Linke größer ist, als das Rechte. (Hier steckt noch eine Optimierungsmöglichkeit drin, aber die zeigt sich gleich ganz von alleine)
für unsere Beispiel-Folge:
Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26:
| 1. Lauf vorher: D C B A v-v C D B A v-v C B D A v-v nachher: C B A D
2. Lauf vorher: C B A D v-v B C A D v-v B A C D v-v nachher: B A C D
3. Lauf vorher: B A C D v-v A B C D v-v A B C D v-v nachher: A B C D |
Die "v"s stellen die Vergleiche dar. Soweit verstanden? Die Redundanz schon entdeckt? (wenn du antwortest und noch Bock hast, können wir auch weiter machen [ähm, und wenn meine Frau mich noch läßt...  ])
cu
Narses
|
|
Method_Man
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: So 05.12.04 19:56
Ich bräuchte beim Sortierung nur noch Hilfe.
Wenn ich das so eintippe, sortiert er nicht richtig.
Ich will das er mir die Buchstaben richtig sortiert.
Könnte mir jemand behilflich sein?
Ganz simpel bitte.
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10:
| procedure TForm1.Button2Click(Sender: TObject); begin Repeat If Stringgrid1.cells[1,y]>Stringgrid1.cells[1,y+1] then help1:=Stringgrid1.cells[1,y]; Stringgrid1.cells[1,y]:=Stringgrid1.cells[1,y+1]; Stringgrid1.cells[1,y+1]:=help1; y:=y+1; Until y=1001; end; |
|
|
Narses
      

Beiträge: 10183
Erhaltene Danke: 1256
W10ent
TP3 .. D7pro .. D10.2CE
|
Verfasst: So 05.12.04 20:17
Titel: Angebot
Moin!
Ich versuchte dir mit dem letzten Beitrag zu helfen. Willste dir den nochmal ansehen, dann können wir den Vorgang, wie man (einfach) sortiert, entwickeln.
Oder bist du nur daran interessiert, dass dir jemand deinen Code flickt?
cu
Narses
|
|
Method_Man
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: So 05.12.04 20:32
@ Narses natürlich würde ich gerne ganz herausfinden wie es funktioniert, aber ich bin erkältet, habe Kopfschmerzen, sonst würde ich es irgendwie schon rausbekommen.
Könntest du mir bitte, wenn es geht mein Code fürs Sortieren flicken, ich meine ganz einfach wie ich angefangen habe, ohne Boolean oder sonstiges.
Danke dir sehr
Gruss Method Man
|
|
Narses
      

Beiträge: 10183
Erhaltene Danke: 1256
W10ent
TP3 .. D7pro .. D10.2CE
|
Verfasst: So 05.12.04 20:55
Titel: Angebot...
Moin!
Method_Man hat folgendes geschrieben: | natürlich würde ich gerne ganz herausfinden wie es funktioniert |
Dann sollten wir das auch tun!
Method_Man hat folgendes geschrieben: | aber ich bin erkältet, habe Kopfschmerzen, |
Das ist schade, aber das kann ich auch nicht ändern.
Method_Man hat folgendes geschrieben: | sonst würde ich es irgendwie schon rausbekommen. |
Dann solltest du das auch versuchen!
Method_Man hat folgendes geschrieben: | Könntest du mir bitte, wenn es geht mein Code fürs Sortieren flicken, ich meine ganz einfach wie ich angefangen habe, ohne Boolean oder sonstiges. |
Hm, ich bin jetzt etwas verwundert. Auf der einen Seite machst du mir nicht den Eindruck, Code abgreifen zu wollen, auf der anderen schon. Das Problem dabei ist, ich habe dir bereits angeboten, den Algorithmus zu entwickeln, was für eine Klausur sicherlich besser ist (wenn man was verstanden hat), als ein Code-Schnipsel "auswendig" zu lernen, den man (möglicherweise) nicht (ganz) verstanden hat.
Das wirklich kuriose ist, ich habe dir in meinem Programm bereits den BubbleSort-Algo codiert, ich habe im Text darunter den Grund für das Fehlverhalten deines Programms erklärt und in dem Code, den du als letzten geschrieben hast, ist der gleiche Fehler wieder drin...
Und noch ganz nebenbei: Das ganze (BubbleSort) hat nix mit Booleans zu tun...
Auf den Punkt: Ich entwickle den Algorithmus gerne mit dir, aber ich werde den Code nicht anfassen (zumal ich das weiter oben bereits getan habe).
cu
Narses
|
|
Method_Man
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: So 05.12.04 21:16
Hi Narses wie schon gesagt so simpel wie es geht, sollte es sein. Natürlich hast du mir den richtigen Code schon oben geschrieben, den ich in meinem Programm eingebaut habe auch problemlos funzt.
Nur das Problem ist, du hast es zu gut programmiert, wir in der Schule haben ganz primitive Sortiervorgänge gehabt.
Wie z.B." Kopiere das zu help, dann tausch das, danach kopiere zurück usw."
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34:
| procedure TForm1.Button2Click(Sender: TObject); var i,j, k: Integer; StrBuf: TStringList; begin StrBuf := TStringList.Create; ProgressBar1.Max := StringGrid1.RowCount; ProgressBar1.Step := 1; ProgressBar1.Position := 0; global_break := FALSE; Button4.Enabled := TRUE; for i := StringGrid1.RowCount-2 downto 1 do begin for j := 1 to i do if (StringGrid1.Cells[1,j] > StringGrid1.Cells[1,j+1]) then begin StrBuf.Clear; for k := 1 to 7 do begin StrBuf.Add(StringGrid1.Cells[k,j]); StringGrid1.Cells[k,j] := StringGrid1.Cells[k,j+1]; end; for k := 1 to 7 do StringGrid1.Cells[k,j+1] := StrBuf.Strings[k-1]; end; ProgressBar1.StepIt; Application.ProcessMessages; if (global_break) then exit; end; Button4.Enabled := FALSE; StrBuf.Free; end; |
|
|
Narses
      

Beiträge: 10183
Erhaltene Danke: 1256
W10ent
TP3 .. D7pro .. D10.2CE
|
Verfasst: So 05.12.04 21:23
Tach!
Also, ich will ehrlich sein: Ich glaube, du versuchst dir von mir die Hausaufgaben machen zu lassen. Warum solltest du sonst an Code interessiert sein, der auch als deiner durchgehen soll...
Letztes Angebot: Wir entwickeln den Sortieralgorithmus von Grund auf und du lernst den Code selbst richtig zu schreiben (das können wir gerne jetzt und hier tun, ich hab noch Zeit). Ich versichere dir, es wird "so einfach, wie möglich sein".
Andernfalls mußt du dir jemand anderen suchen, der deine Hausaufgaben macht.
cu
Narses
|
|
Method_Man
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: So 05.12.04 21:31
@Narses eigentlich hat das nichs mit Hausaufgaben zu tun, weil wir keine Hausaufgaben aufbekommen.
Aber ich nehme dein Angebot gerne entgegen.
Also soweit ich das verstanden habe:
Wenn Stringgrid1.cells[1,y] größer ist als Stringgrid1.cells[1,y+1]
Dann= wird help1(Variable) zu Stringgrid1.cells[1,y];
Danach= Wird Stringgrid1.cells[1,y] zu Stringgrid1.cells[1,y+1];
Am Ende Wird dann Stringgrid1.cells[1,y] zu help1.
bei jedem Versuch wird die Variable y um 1 erhöht, damit man alle Reihen durch hat, bis
der gewünschte Wert erreicht ist.
Genau an dem Tag wo wir das besprochen haben, war ich ganz wo anders, verliebt im 3. Himmel, also nicht aufgepasst und schon probleme. 
|
|
Narses
      

Beiträge: 10183
Erhaltene Danke: 1256
W10ent
TP3 .. D7pro .. D10.2CE
|
Verfasst: So 05.12.04 21:39
Titel: Bubble-Sort-Entwicklung, die 2.
Moin!
Zitat: | eigentlich hat das nichs mit Hausaufgaben zu tun, weil wir keine Hausaufgaben aufbekommen |
Aha, spannend, wo schreibst du denn deine Klausur?
Zitat: | Aber ich nehme dein Angebot gerne entgegen |
OK, dann möchte ich dich bitten, meine 1. Erklärungsmail nochmal zu lesen und die Frage(n) zu beantworten. Du bist schon mehrere Schritte weiter, so wird das nix.
Es geht mir besonders darum, dass du den dargestellten Ablauf und die als Text "codierte", prinzipielle Funktionsweise genau anschaust.
Nun?
|
|
Method_Man
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: So 05.12.04 21:48
Wir arbeiten immer zusammen in der Schule, er gibt uns Aufgaben, die wir dann in der Stunde mit seiner Hilfe lösen. Es ist ein Grundkurs mit Anfängern, also mehr kann man da nicht erwarten.
< Bin in der 11. eines Gymnasiums. >
Es ist grad unsere 1. Klausur, von 15 Leuten schreiben nur 4 Leute Klausuren.
Bubble Sort
-1. und 2. vergleichen
----> falsch --> tauschen
-2. und 3. vergleichen
----> falsch --> tauschen
immer weiter bis alles richtig ist.
|
|
Narses
      

Beiträge: 10183
Erhaltene Danke: 1256
W10ent
TP3 .. D7pro .. D10.2CE
|
Verfasst: So 05.12.04 21:54
OK. Ich nehme mal an, du hast das dargestellte Code-Beispiel verstanden (hoffe ich).
Frage 1: Wie oft wird bei 4 zu sortierenden Buchstaben verglichen und gegebenenfalls getauscht? (wenn man es so macht, wie dargestellt)
Frage 2: Sind in dem Beispiel überflüssige Schritte (Vergleiche) enthalten?
Frage 3: Wenn ja, welche? Wenn nein, warum sind alle Schritte nötig?
Bis gleich
Zitat: | Es ist ein Grundkurs mit Anfängern, also mehr kann man da nicht erwarten. |
Ich erwarte ja auch nicht mehr. Ist doch OK. Sag bescheid, wenn du hier in der Erklärung nicht mehr mitkommst oder was unklar ist!
Zitat: | Bin in der 11. eines Gymnasiums |
Hatte ich mir schon gedacht, vom Stoff her. 
|
|
Method_Man
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: So 05.12.04 22:15
Bei 4 Buchstaben geht er 4 Mal durch, beim 2. Durchlauf braucht er nur 3 Mal durch zu gehen und beim 3. Durchlauf nur 2 Mal, vorrausgesetzt alle 4 Buchstaben stehen falsch.
Und mit Boolean wo man zwei Werte definieren kann: true or false, geht es noch schneller mit dem Sortieren, weil er dann weiss wenn sie richtig stehen, dann nicht mehr sortiert.
|
|
|