Sortieren
-
kann mir jemand sagen, warum das Programm als erste Zahl immer null ausgibt???
// erst vergleichen, dann einfuegen int z; int q; for (int i=1;i<=anzahl;i++) { z=i; q=wert[i]; while((q<wert[z-1]) && (z>0)) { wert[z]=wert[z-1]; z--; } wert[z]=q; }
Kann mir das nicht erklären. Eigentlich soll erst überprüft werden, wo eine Zahl hinmuss und dann eingefuegt werden.
-
Wenn anzahl die Anzahl der Elemente von Wert darstellt, dann sollte i nicht bis einschließlich anzahl gehen.
-
Hi!
Außerdem sollte i bei 0 beginnen, da Indizes in C++ mit 0 und nicht wie in Pascal mit 1 beginnen. Es sei denn du machst sowas:
int a[5]; int *a1 = &a[-1];
Code-Hacker
-
Nein, der Startwert 1 für i ist schon in Ordnung, da er unter anderem auf das vorherige Element zugreift.
-
Hi!
Sorry, habe das -1 übersehen bei der verwendung von z als index.
Code-Hacker