1. Заполнить массив числами от 0 до 1. Количество элементов и сами элементы вводятся с...

0 голосов
28 просмотров

1. Заполнить массив числами от 0 до 1. Количество элементов и сами элементы вводятся с клавиатуры. Отсортировать массив по невозрастанию. Заменить все элементы меньше чем 0.5 на нули.2. Заполнить массив трехзначными отрицательными числами. Числа вводятся с клавиатуры. Количество элементов - 21. Отсортировать массив по невозрастанию. Поставить минимальный элемент в середину массива. 3. Соединить в один массив массивы из предыдущих двух задач.


Информатика (21 баллов) | 28 просмотров
Дан 1 ответ
0 голосов

#include using namespace std;void selectionSort(double arr[], int size1, int size) {//size разfor (int i = size; i < size1; i++) { //ищем минимальный элемент среди [i; size - 1] int minPos = i; for (int j = i + 1; j < size1; j++) if (arr[j] > arr[minPos]) minPos = j; //ставим минимальный элемент на i-е место swap(arr[minPos], arr[i]);}}int main() {int size;scanf("%d", &size);double arr[1000];for(int i = 0; i < size; i++){ scanf("%lf", &arr[i]);}selectionSort(arr, size, 0);        int size1 = 21;double arr1[22];for(int i = size; i < size1; i++){ scanf("%lf", &arr1[i]);}selectionSort(arr1, size1, size);swap(arr1[size1], arr1[10]);double res[2000];for (int i = 0; i < size; i++){        res[i] = arr[i];        }        for (int i = size; i < size1; i++){        res[i] = arr1[i];        }        for (int i = 0; i < size1; i++){        printf("%lf ", res[i]);        }}

(2.8k баллов)
0