[a;b]
и заполнять ими двумерный массив размером 10 на 10. В массиве необходимо найти номер строки с минимальным элементом. Поменять строки массива местами, строку с минимальным элементом и первую строку массива. Организовать удобный вывод на экран.Кроме создания двумерных динамических массивов, вам понадобится генератор случайных чисел. Когда массив создан и заполнен, нужно организовать в нем поиск минимального элемента. Пример работы программы:
#include <iostream> #include <iomanip> //#include <ctime> #include <cstdlib> using namespace std; int main() { srand(time(NULL)); double a, b; // границы отрезка [a,b] cout << "Введите число а: "; cin >> a; cout << "Введите число в: "; cin >> b; double matrix[10][10]; // матрица случайных чисел // инициализация двумерного массива случайными числами for (int counter_rows = 0; counter_rows < 10; counter_rows++) for (int counter_columns = 0; counter_columns < 10; counter_columns++) matrix[counter_rows][counter_columns] = (double(rand()) / RAND_MAX) * (b - a) + a; // генерация случайных вещестчвенных чисел равномерно распределённых на отрезке [a,b] cout << "\nСгенерированный массив вещественных чисел" << endl; // вывод сгенерированного массива for (int counter_rows = 0; counter_rows < 10; counter_rows++) { for (int counter_columns = 0; counter_columns < 10; counter_columns++) cout << setw(7) << fixed << setprecision(3) <<matrix[counter_rows][counter_columns]; cout << endl; } double min = matrix[0][0]; // переменная, для хранения минимального значения int nom; // порядковый номер строки с минимальным элеиентом // поиск минимального элемента в массиве for (int counter_rows = 0; counter_rows < 10; counter_rows++) { for (int counter_columns = 0; counter_columns < 10; counter_columns++) { if (matrix[counter_rows][counter_columns] < min ) { min = matrix[counter_rows][counter_columns]; // сохраняем значение минимального элемента nom = counter_rows; // запоминаем номер строки } } } cout << "\nНомер строки с минимальным элементом: " << (nom + 1) << endl; cout << "Минимальный элемент: " << min << endl; // перестановка строк if (nom != 0) // если минимальный элемент не содержится в первой строке { double temp[10]; // временный массив для хранения первой строки for (int counter_columns = 0; counter_columns < 10; counter_columns++) temp[counter_columns] = matrix[0][counter_columns]; // сохраняем значения первой строки во временный массив for (int counter_columns = 0; counter_columns < 10; counter_columns++) matrix[0][counter_columns] = matrix[nom][counter_columns]; // сохраняем значения строки с минимальным элементом в перой строке двумерного масссива for (int counter_columns = 0; counter_columns < 10; counter_columns++) matrix[nom][counter_columns] = temp[counter_columns]; // перемещаем значения из временного массива на место строки с мин элементом // вывод массива с перестановленными строками cout << "\nМассив с перестановленными строками" << endl; for (int counter_rows = 0; counter_rows < 10; counter_rows++) { for (int counter_columns = 0; counter_columns < 10; counter_columns++) cout << setw(7) << fixed << setprecision(3) << matrix[counter_rows][counter_columns]; cout << endl; } } // конец if return 0; }
Результат:
Введите число а: 3
Введите число в: 9
Сгенерированный массив вещественных чисел
4.331 3.406 5.992 7.247 4.044 7.214 5.284 8.227 8.799 3.479
3.458 6.928 8.264 7.817 3.798 7.376 8.919 3.802 7.556 6.523
5.332 6.940 5.754 8.261 3.766 5.582 4.351 3.658 6.841 3.788
3.602 8.172 4.194 6.593 6.419 5.238 4.808 8.703 4.466 4.606
3.182 4.924 8.534 8.445 3.741 3.332 6.821 3.660 4.134 5.377
7.183 6.466 3.318 3.937 5.726 4.084 6.519 7.078 4.742 4.360
7.865 5.344 3.531 3.060 8.937 6.950 5.298 4.745 6.653 6.764
6.352 6.835 8.688 5.886 6.280 3.429 6.218 4.101 4.089 7.351
6.479 8.273 4.817 6.797 3.210 7.543 7.880 6.729 5.621 3.623
8.089 4.486 5.967 8.620 4.546 5.904 6.570 6.844 7.649 4.223
Номер строки с минимальным элементом: 7
Минимальный элемент: 3.060
Массив с перестановленными строками
7.865 5.344 3.531 3.060 8.937 6.950 5.298 4.745 6.653 6.764
3.458 6.928 8.264 7.817 3.798 7.376 8.919 3.802 7.556 6.523
5.332 6.940 5.754 8.261 3.766 5.582 4.351 3.658 6.841 3.788
3.602 8.172 4.194 6.593 6.419 5.238 4.808 8.703 4.466 4.606
3.182 4.924 8.534 8.445 3.741 3.332 6.821 3.660 4.134 5.377
7.183 6.466 3.318 3.937 5.726 4.084 6.519 7.078 4.742 4.360
4.331 3.406 5.992 7.247 4.044 7.214 5.284 8.227 8.799 3.479
6.352 6.835 8.688 5.886 6.280 3.429 6.218 4.101 4.089 7.351
6.479 8.273 4.817 6.797 3.210 7.543 7.880 6.729 5.621 3.623
8.089 4.486 5.967 8.620 4.546 5.904 6.570 6.844 7.649 4.223
Комментарии
Eduard_P
Ну вот, как бы так
lnikaFax
Работа в интернете
colt