В
Все
Б
Биология
Б
Беларуская мова
У
Українська мова
А
Алгебра
Р
Русский язык
О
ОБЖ
И
История
Ф
Физика
Қ
Қазақ тiлi
О
Окружающий мир
Э
Экономика
Н
Немецкий язык
Х
Химия
П
Право
П
Психология
Д
Другие предметы
Л
Литература
Г
География
Ф
Французский язык
М
Математика
М
Музыка
А
Английский язык
М
МХК
У
Українська література
И
Информатика
О
Обществознание
Г
Геометрия
soplador
soplador
19.10.2020 10:15 •  Информатика

Очень умоляю Вводятся 4 числа. Нужно вывести их в порядке убывания. При любых входных данных алгоритм должен выполнять не более пяти операций сравнения. Решения с большим количеством сравнений не оцениваются. Оператор вывода во всём тексте алгоритма должен быть единственный.

Показать ответ
Ответ:
cat159753jjyfvb
cat159753jjyfvb
07.03.2022 15:30

Відповідь:

#include <iostream>

using namespace std;

const int size = 4;

void inputarr(int *arr,const int size){

for(int i = 0 , counter = 1; i < size; i++, counter++){

 cout << "Введите " << counter << " число: ";

 cin >> arr[i];

}

}

void sortarr(int *arr,const int size){

for(int i = 0; i < size - 1; ++i){

 int biggest = i;

 for(int j = i + 1; j < size; ++j){

  if(arr[j] > arr[biggest]){

   biggest = j;

  }

 }

 

 swap(arr[i],arr[biggest]);  

}

}

void printarr(int *arr,const int size){

for(int i = 0; i < size; i++){

 cout << arr[i] << " ";

}

}

int main(){

setlocale(LC_ALL, "Rus");

int arr[size];

inputarr(arr,size);

cout << "Изначальное положение: ";

printarr(arr,size);

cout << "\nРезультат: ";

sortarr(arr,size);

printarr(arr,size);

return 0;

}

Использовал одномерный массив и сделал сортировку методом выбора по убыванию

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота