Permalänk
Medlem

Sortering nr i c++

Någon som kan hjälpa till att sortera nr i denna kod.

#include <ctime>
#include <iostream>
#include <vector>

int main()
{
std::vector<int> numbers;
int i;

srand(time(NULL));

for(i=1;i <= 35;i++)
numbers.push_back(i);

for(i = 0;i < 11;i++)
{
if(i == 7)
std::cout << "- ";

std::vector<int>::iterator n = numbers.begin() + (rand()%numbers.size());

std::cout << *n << " ";

numbers.erase(n);
}

std::cout << std::endl;

return 0;
}

Permalänk
Inaktiv

Använd gärna [[code]]-taggar för att hålla koden formaterad.

Hur menar du med att du behöver sortera siffrorna? Vad exakt är det du ska åstadkomma, specifikt?

Permalänk
Medlem

Sorteras i storleksordning.

Skrivet av anon334363:

Använd gärna [[code]]-taggar för att hålla koden formaterad.

Hur menar du med att du behöver sortera siffrorna? Vad exakt är det du ska åstadkomma, specifikt?

Jag vill att numren sorteras i storleksordning. Som det är nu så är dom ej sorterade.
Mvh

Permalänk
Medlem

@Harry_52: Använd std::sort för att sortera en sekvens.

Men just nu skapar du en vektor från 1 till 35, sen tar du bort 11:a slumpmässiga element utan att ändra ordning på dem. Så vektorn måste ju vara sorterad redan.

Permalänk
Medlem

Är detta en programmeringslabb där du själv ska göra själva sorteringen eller är det ok med färdiga funktioner?

Om det senare är okej då finns std::sort.

Exempel på denna är :

sort(v.begin(), v.end());