Напишите программу которая сортирует массив по убыванию

от admin

Сортировка по сумме цифр

Напишите программу, которая сортирует натуральные числа в массиве по убыванию суммы цифр десятичной записи числа. При равенстве сумм цифр числа должны сохранить исходный порядок.

Первая строка содержит размер массива N. Во второй строке через пробел задаются N чисел — элементы массива. Гарантируется, что 0 <N≤ 1000 .

Программа должна вывести в одной строке элементы массива, отсортированного в порядке убывания суммы цифр десятичной записи числа, разделив их пробелами.

9 21 32 55 81 11

55 9 81 32 21 11

На проверке пишет, что программа выдаёт неверный ответ. Не понимаю, что не так, помогите, пожалуйста

Напишите программу которая сортирует массив по убыванию

template <typename T1, typename T2> void sort(T1 ar, T2 SIZE, T2 par);

cout<<endl<<endl<<endl;
const int SIZE = 10;
int ar[SIZE];

template <typename T1, typename T2> void sort(T1 ar, T2 SIZE, T2 par)

int tmp;
int j;
if(par==1)for(int i = 0; i<SIZE; i++)

if(par==2)for(int i = 0; i<SIZE; i++)

Владислав Гончарук

HANDLE h = GetStdHandle(STD_OUTPUT_HANDLE);

template <typename T1, typename T2> void sort(T1 ar, T2 SIZE);

void main() SetConsoleTextAttribute(h,15);
setlocale(0,»»);
srand(time(0));

cout<<endl<<endl<<endl;
const int SIZE = 10;
int ar[SIZE];

template <typename T1, typename T2> void sort(T1 ar, T2 SIZE)

int nizotr=-1, verhotr;

Владислав Гончарук

HANDLE h = GetStdHandle(STD_OUTPUT_HANDLE);

template <typename T1, typename T2> void Razbros (T1 ar, T2 SIZE);
template <typename T1, typename T2> void Sort (T1 ar, T2 SIZE, T2 j);
void main()
srand(time(0));

Razbros (ar, SIZE);

template <typename T1, typename T2> void Razbros (T1 ar, T2 SIZE)

for(int i = 0; i<SIZE; i++) int j = rand()%20;
tmp = ar[i];
ar[i]=ar[j];
ar[j]=tmp;
>

program n32;
var x,i:integer;
a:array [1..100] of integer;
begin
for i:=1 to 100 do a[i]:= random (500);
for i:=1 to 100 do
writeln (‘a[,i,]=’,a[i]);
begin
for i:=1 to 50 do
if a[i]>a[i+1] then

Читать:
Как выбрать базу данных

program n32;
var y,x,j,imin,imax,i:integer;
a:array [1..100] of integer;
begin
for i:=1 to 100 do a[i]:= random (500);
for i:=1 to 100 do
write (‘a[, ,]=’,a[i]);
for i:=1 to 49 do
begin
imax:=i;
for j:=i+1 to 50 do
if a[j]>a[imax] then imax:=j;
x:=a[i];
a[i]:=a[imax];
a[imax]:=x;
end;

Сортировка массива по убыванию в C++

В этом посте мы обсудим, как отсортировать массив по убыванию в C++.

Чтобы отсортировать массив в обратном/убывающем порядке, вы можете использовать std::sort алгоритм, предоставляемый STL. Он сортирует элементы контейнера в диапазоне, указанном указанными итераторами, с помощью компаратора. Используемый компаратор по умолчанию: std::less<> , который сортирует контейнер в порядке возрастания, используя operator< . Мы можем использовать std::greater<> для сортировки в порядке убывания, что делегирует вызов operator> .

Решения задач на Си в Линyкс

Напишите программу, которая методом прямого выбора сортирует по убыванию введенный с клавиатуры одномерный массив.

/*
Программа методом прямого выбора сортирует
массив по убыванию.
*/
#include «locale.h»
#include «curses.h»
#include «stdio.h»
#include «stdlib.h»
#include «time.h»

main()
<
int s[HB];
int i, j, k;
int min;
int temp;
char *log;
time_t t;

srand((unsigned) time(&t));
printw(«Сортировка массива по убыванию.\n»);

for(i = 0; i < HB; i++)
<
s[i] = rand() % 10 + 1;
printw(«%i «, s[i]);
>

for(i = 0; i < HB — 1; i++)
<
min = i;
for(k = i + 1; k < HB; k++)
if(s[k] > s[min]) min = k;

temp = s[i];
s[i] = s[min];
s[min] = temp;
for(j = 0; j < HB; j++)
printw(«%i «,s[j]);
printw(«\n»);
>

Похожие статьи