Entwickler-Ecke
Algorithmen, Optimierung und Assembler - Dopplete Zahlen in einem Array?
duplex - Di 22.02.05 12:29
Titel: Dopplete Zahlen in einem Array?
hi
ich benötige einen quellcode und zwar soll delphi dopplete zahlen in einem array finden und anhschliessen dsagen wie viele zahlen doppelt vorkommen!
ich bin eine totale 0 im programmieren, denke aber das das für eich total simpel und schnell geht!! brauche diesen quellcode echt dringend, würde mich freuen wenn ihr mir helfen würdet!! :wink:
Delete - Di 22.02.05 13:02
Sortier dein Array doch einfach: BubbleSort, Quicksort zum Beispiel oder alles in eine ListBox schreiben und ListBox.Sorted := True setzen, dann sollte es doch ganz einfach sein, doppelte zu finden
duplex - Di 22.02.05 14:59
ich kann den ganzen kram echt überhaupt nicht! ^^ könntest du/jemand mal eine lösung reinschreiben??
listbox hatten wir noch nicht (glaube ich)
Delete - Di 22.02.05 15:22
Was habt ihr denn gehabt?
Irgendwas müsst ihr ja gehabt haben, um das zu lösen oder nicht?
Glaubst du das ist ein Hausaufgabenforum? Hier werden nur Ansätze präsentiert, also stell bitte genauere Fragen..
duplex - Di 22.02.05 19:29
bubblesort und quicksort hatten wir, aber wie das mit den doppelten zahlen amcht weis ich nciht und wie man es macht das er sie zählt...
Delete - Di 22.02.05 19:38
Lösungsansatz:
Array durchlaufen: Stichwort for-next-Schleife
__Von Anfang des Arrays bis aktueller Position-1 durchlaufen(wieder `ne Schleife)
__Vergleiche aktuelle Pos in erster und zweiter Schleife: wenn gleich, dann Zahl doppelt
__-> zu irgendner Liste (Listbox, zusätzliches Array) hinzufügen
Damit kannst du arbeiten. Du musst jetzt im Prinzip nicht mehr denken, sondern nur noch die erlernten Mittel einsetzen.
duplex - Mi 23.02.05 12:09
die erlernten mittel einsetzen!! da haperts, ich kann einfahc nicht den quellcode dazu schreiben für diesen lösungsansatz
"Array durchlaufen: Stichwort for-next-Schleife
__Von Anfang des Arrays bis aktueller Position-1 durchlaufen(wieder `ne Schleife)
__Vergleiche aktuelle Pos in erster und zweiter Schleife: wenn gleich, dann Zahl doppelt
__-> zu irgendner Liste (Listbox, zusätzliches Array) hinzufügen"
Gausi - Mi 23.02.05 12:13
Ist zwar in Delphi-Tags, aber kein richtiger Delphi-Code:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8:
| for i:=anfang to ende do for j:=i+1 to ende do if Array[i]=Array[j] then begin 'Jippie, eine doppelte zahl gefunden' doppeltezahlen:=einsmehr end ausgabe(doppeltezahlen); |
Delete - Mi 23.02.05 18:08
Ach na gut, da du ja schon per PN quängelst:
Pack ma ne Listbox auf dein Formular und versuch`s mit folgendem, aus dem Kopf geschriebenen, Code.
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12:
| var Arr: Array[1..100] of integer; ... procedure Button1Click(Sender:TObject); var a, b: integer; begin for a := low(Arr) to high(Arr) do for b := low(arr) to a-1 do if Arr[a] = Arr[b] then Listbox1.Items.Add(inttostr(Arr[b])); end; |
Wenn eine Zahl natürlich nun dreimal im Array vorhanden ist, wird sie auch dreimal in der Listbox auftauchen.
duplex - Mi 23.02.05 18:14
was ist eine ListBox?? kenen das gar nicht!
Delete - Mi 23.02.05 18:23
Das ist jetzt wirklich das letzte Mal, dass du deinen Unmut, deine Lustlosigkeit und deine Bereitschaftslosigkeit, dich wirklich mit der Materie zu befassen, zeigst, ok?!
TListBox ist eine Komponente, die du in der Rubrik "Standard", gleich neben TLabel, TButton usw., findest.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2024 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!