Witam, potrzebują 2 proste programy w c++ które tablice 1000 elementową z losowymi liczbami posortuje: a)bąbelkowo b)przez wybór Zależy mi żeby były napisane jak najprostrzym język. Dziękuję!
#include <cstdlib> #include <iostream> #define NMAX 1000 int tab[NMAX]; using namespace std; int main() { //uzupelnienie tablicy liczbami losowymi srand(time(NULL)); for (int i = 0; i < NMAX; i++) tab[i] = rand()%10000; //petla sortowania //i - indeks ostaniej pary do przejrzenia w pojedynczym przebiegu listu //j - numer kolejnej przegladanej pary od 0 do i for (int i = NMAX-2; i >= 0 ; i--) for (int j = 0; j <= i; j++) { //jezeli para jest nieuporzadkowana to zamiana kolejnosci elementow if (tab[j] > tab[j+1]) { int tmp = tab[j+1]; tab[j+1] = tab[j]; tab[j] = tmp; } } return 0; }
B/
#include <cstdlib> #include <iostream> #define NMAX 1000 int tab[NMAX]; using namespace std; int main() { //wylosowanie listy srand(time(NULL)); for (int i = 0; i < NMAX; i++) tab[i] = rand()%10000; //i - kolejna pozycja listy for (int i = 0; i < NMAX-1; i++) { //wyszukiwanie liczby namniejszej w tablicy za i int min = i; for (int j = i; j < NMAX; j++) if (tab[j] < tab[min]) min = j; //jezeli na pozycji dalszej znajduje sie liczba mniejsza od tej na pozycji i , to zamiana if (min > i) { int tmp = tab[min]; tab[min] = tab[i]; tab[i] = tmp; } } return 0; }
A/
#include <cstdlib>
#include <iostream>
#define NMAX 1000
int tab[NMAX];
using namespace std;
int main() {
//uzupelnienie tablicy liczbami losowymi
srand(time(NULL));
for (int i = 0; i < NMAX; i++) tab[i] = rand()%10000;
//petla sortowania
//i - indeks ostaniej pary do przejrzenia w pojedynczym przebiegu listu
//j - numer kolejnej przegladanej pary od 0 do i
for (int i = NMAX-2; i >= 0 ; i--)
for (int j = 0; j <= i; j++)
{
//jezeli para jest nieuporzadkowana to zamiana kolejnosci elementow
if (tab[j] > tab[j+1]) {
int tmp = tab[j+1];
tab[j+1] = tab[j];
tab[j] = tmp;
}
}
return 0;
}
B/
#include <cstdlib>
#include <iostream>
#define NMAX 1000
int tab[NMAX];
using namespace std;
int main() {
//wylosowanie listy
srand(time(NULL));
for (int i = 0; i < NMAX; i++) tab[i] = rand()%10000;
//i - kolejna pozycja listy
for (int i = 0; i < NMAX-1; i++) {
//wyszukiwanie liczby namniejszej w tablicy za i
int min = i;
for (int j = i; j < NMAX; j++) if (tab[j] < tab[min]) min = j;
//jezeli na pozycji dalszej znajduje sie liczba mniejsza od tej na pozycji i , to zamiana
if (min > i) {
int tmp = tab[min];
tab[min] = tab[i];
tab[i] = tmp;
}
}
return 0;
}