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

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

Показать ответ
Ответ:
Владислава3188125
Владислава3188125
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-бота