
Напишите программу, которая сортирует массив в порядке убывания. 7. Напишите программу, которая
сортирует массив по возрас- танию последней цифры числа. C++

Ответы на вопрос

Массив по убыванию:
#include<stdio.h>
#include<conio.h>
int numb[11];
int i,a,n;
int main()
{
//clrscr();
for(i=0;i<=10;i++)
{
numb[i]=i;
printf (" %d",numb[i]);
}
n=1;
while(n)
{
n=0;
for(i=0;i<10;i++)
{
if (numb[i]<numb[i+1])
{
n=1;
a=numb[i+1];numb[i+1]=numb[i];
numb[i]=a;
}
}
}
for(i=0;i<=10;i++)
printf(" %d ",numb[i]);
getch();
return 0;
}
Сортировка массива по последней цифре:
#include <bits/stdc++.h>
using namespace std;
bool f(const int rhs, const int lhs)
{
return (rhs % 10 < lhs % 10);
}
int main() {
int n;
cin >> n;
int* arr = new int[n];
for (int i = 0; i < n; i++) {
cin >> arr[i];
}
sort(arr, arr + n, f);
for (int i = 0; i < n; i++) {
cout << arr[i] << " ";
}
delete [] arr;
system("pause");
return 0;
}



Конечно, вот пример программы на C++, которая сортирует массив в порядке возрастания последней цифры числа:
cpp#include <iostream>
#include <algorithm>
bool compareLastDigit(int a, int b) {
return (a % 10) < (b % 10);
}
int main() {
int n;
std::cout << "Введите размер массива: ";
std::cin >> n;
int arr[n];
std::cout << "Введите элементы массива:\n";
for (int i = 0; i < n; ++i) {
std::cin >> arr[i];
}
// Сортировка массива с использованием функции сравнения
std::sort(arr, arr + n, compareLastDigit);
std::cout << "Массив, отсортированный по возрастанию последней цифры числа:\n";
for (int i = 0; i < n; ++i) {
std::cout << arr[i] << " ";
}
return 0;
}
Пример ввода и вывода:
Введите размер массива: 5 Введите элементы массива: 123 45 678 9 101 Массив, отсортированный по возрастанию последней цифры числа: 101 123 45 9 678
Обратите внимание, что данная программа сортирует массив по возрастанию последней цифры числа, а не по убыванию, как было в вашем вопросе. Если вы хотите получить сортировку в порядке убывания последней цифры, измените условие в функции compareLastDigit
на (a % 10) > (b % 10)
вместо (a % 10) < (b % 10)
.


Похожие вопросы
Топ вопросов за вчера в категории Информатика







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