Har en vektor med följande värden och ordning; 6, 1, 3, 5, 2, 4 (kan givetvis variera, men visar ett ex) Hej!sorteringsalgoritm - vektor
Nu vill jag sortera denna vektor så att den visar 1, 2, 3, 4, 5, 6
Koden nedan gör nästan rätt. Skriver ut vektorn så här 6, 1, 2, 3, 4, 5. Alltså 6 kommer först men ska egentligen komma sist.
Har börjat så här:
<code>
function sortering(arvektor))
for i = 0 to ubound(arvektor)
for j = 1 to ubound(arvektor)
if arVektor(i) < arVektor(j) then
temp = arVektor(i)
arVektor(i) = arVektor(j)
arVektor(j) = temp
end if
next
next
</code>Sv: sorteringsalgoritm - vektor
Tre saker.
Den yttre loopen skall bara läsa till ubound - 1.
I den inre loopen, sätt " j = 1 + i ".
I if-satsen så kontrollerar du om talet på plats 0 är mindre än talet på plats 1.
Detta stämmer ju med hur du vill sortera.
När detta uppfylls vänder du på talen, och talet på plats 0 blir större än på plats 1.
Vänd på < till > i if-satsen.
//Håkan