Вывести на экран упорядоченный по возрастанию массив - C (СИ)
Формулировка задачи:
Здравствуйте! Не могли бы Вы мне помочь, пожалуйста с заданием? Задание - Пользователь должен ввести минимальное и максимальное число массива, который должен состоять из 30 элементов. Программа должна заполнить массив числами и вывести массив на экран, после этого сразу вывести на экран упорядоченный по возрастанию массив. Спасибо
Решение задачи: «Вывести на экран упорядоченный по возрастанию массив»
textual
Листинг программы
#include<iostream>
#include<ctime>
using namespace std;
int main()
{
srand((unsigned)time(NULL));
const int size=30;
int min,max;
int Arr[size];
cout<<"Vvedite minimalnoe 4islo: ";
cin>>min;
cout<<"Vvedite maximalnoe 4islo: ";
cin>>max;
for(int i=0;i<size;i++){
int temp=(max-min)+1;
Arr[i]=(rand()%temp)+min;
if(i%10==0)
cout<<endl;
cout<<Arr[i]<<" ";
}
for(int i=0; i<size; ++i)
{
for(int j=i; j<size; ++j)
{
if(Arr[i]>Arr[j])
{
int temp=Arr[i];
Arr[i]=Arr[j];
Arr[j]=temp;
}
}
}
cout<<endl;
cout<<"Sorted array\n";
for(int i=0; i<size; ++i)
{
if(i%10==0)
cout<<endl;
cout<<Arr[i]<<' ';
}
cout<<endl;
return 0;
}
Объяснение кода листинга программы
Код представлен на языке C++ и выполняет следующие действия:
- Инициализирует генератор случайных чисел с помощью функции
srand((unsigned)time(NULL)). - Задает размер массива
size=30и объявляет массив типаint Arr[size]. - Запрашивает у пользователя ввод минимального и максимального значений для заполнения массива с помощью
cin>>min; cin>>max;. - Заполняет массив случайными числами в диапазоне от
minдоmaxс помощью циклаfor(int i=0;i<size;i++){ Arr[i]=(rand()%(max-min+1))+min; }. - Выводит на экран заполненный массив с помощью цикла
for(int i=0; i<size; ++i) { cout<<Arr[i]<<; }. - Сортирует массив в порядке возрастания с помощью алгоритма сортировки пузырьком. Цикл
for(int i=0; i<size; ++i) { for(int j=i; j<size; ++j) { if(Arr[i]>Arr[j]) { int temp=Arr[i]; Arr[i]=Arr[j]; Arr[j]=temp; } } }. - Выводит отсортированный массив на экран с помощью цикла
for(int i=0; i<size; ++i) { if(i%10==0) cout<<endl; cout<<Arr[i]<<' '; }. - Завершает работу программы с помощью
return 0;.