Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <cstdlib>
- #include <ctime>
- void bubble_sort(int* start, int* current, int* finish);
- void array_mas(int* start, int* finish , int a, int b);
- void print_mas(int* start, int* finish);
- int main(){
- const int N = 10;
- int mas[N];
- srand(time(0));
- array_mas(mas, mas+N, -10, 10);
- print_mas(mas, mas+N);
- bubble_sort(mas, mas+1, mas+N);
- print_mas(mas, mas+N);
- }
- void bubble_sort(int* start, int* current, int* finish){
- //Сортирует массив методом пузырька
- if ( start != finish )
- if ( current != finish ){
- if ( *start > *current ){
- const int temp = *start;
- *start = *current;
- *current = temp;
- }
- bubble_sort(start, current + 1, finish);
- } else bubble_sort(start + 1, start + 2, finish);
- }
- void array_mas(int* start, int* finish , int a, int b){
- //Заполняет массив случайными целыми числами из отрезка [a..b]
- if ( start != finish ){
- *start = rand()%(b-a+1)+a;
- array_mas(start+1, finish, a, b);
- }
- }
- void print_mas(int* start, int* finish){
- //Выводит массив на экран
- if ( start != finish ){
- std::cout << *start << " ";
- print_mas(start+1, finish);
- } else std::cout << std::endl;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement