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

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

Показать ответ
Ответ:
Dimasdis
Dimasdis
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-бота