Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.11.2020, 12:42   #1
Taodin
Пользователь
 
Регистрация: 01.04.2020
Сообщений: 16
По умолчанию Создать, отсортировать массив символов, поставить сначала буквы по алфавиту, а затем цифры по возрастанию. C++(Visual Studio)

Добрый день, помогите пожалуйста!

Нужно создать, отсортировать массив символов, поставить сначала буквы по алфавиту, а затем цифры по возрастанию. C++(Visual Studio)
Taodin вне форума Ответить с цитированием
Старый 19.11.2020, 12:56   #2
FrosyaZZ
Форумчанин
 
Регистрация: 16.11.2020
Сообщений: 243
По умолчанию

Код:
    std::sort(std::begin(mass), std::end(mass), [](const char& l, const char& r){
        return (std::isdigit(l) ? l+0x7a : l) < (std::isdigit(r) ? r+0x7a : r);
    });
FrosyaZZ вне форума Ответить с цитированием
Старый 19.11.2020, 19:14   #3
Taodin
Пользователь
 
Регистрация: 01.04.2020
Сообщений: 16
По умолчанию

FrosyaZZ,
похоже я что-то напутал, почему-то не хочет работать
код: #include <iostream>;
#include <algorithm>;
#include <stdio.h>;
#include <conio.h>;

using namespace std;

void main()
{
setlocale(LC_ALL, "Russian");
char a, b, c, d, e, f, g, h, o, i, j;
cout << "Введите a:";
cin >> a;
cout << "Введите b:";
cin >> b;
cout << "Введите c:";
cin >> c;
cout << "Введите d:";
cin >> d;
cout << "Введите e:";
cin >> e;
cout << "Введите f:";
cin >> f;
cout << "Введите g:";
cin >> g;
cout << "Введите h:";
cin >> h;
cout << "Введите i:";
cin >> i;
cout << "Введите j:";
cin >> j;

int M[10] = { a, b, c, d, e, f, g, h, i, j };

sort(begin(M), end(M), [](const char& l, const char& r)
{
return (isdigit(l) ? l + 0x7a : l) < (isdigit(r) ? r + 0x7a : r);
});
for (int o = 0; o < 5; o++)
{
cout << M[o] << endl;
}

}
Taodin вне форума Ответить с цитированием
Старый 20.11.2020, 13:18   #4
FrosyaZZ
Форумчанин
 
Регистрация: 16.11.2020
Сообщений: 243
По умолчанию

Код:
char a, b, c, d, e, f, g, h, o, i, j;
cout << "Введите a:";
cin >> a;
cout << "Введите b:";
cin >> b;
cout << "Введите c:";
cin >> c;
cout << "Введите d:";
cin >> d;
cout << "Введите e:";
cin >> e;
cout << "Введите f:";
cin >> f;
cout << "Введите g:";
cin >> g;
cout << "Введите h:";
cin >> h;
cout << "Введите i:";
cin >> i;
cout << "Введите j:";
cin >> j;
Это зачем? А если элементов будет 50? 100? Вводите сразу в массив.
FrosyaZZ вне форума Ответить с цитированием
Старый 24.11.2020, 00:06   #5
Taodin
Пользователь
 
Регистрация: 01.04.2020
Сообщений: 16
По умолчанию

спасибо большое))))
вот код:
#include <iostream>
#include <algorithm>
#include <algorithm>
#include <iterator>
#include <cstring>
using namespace std;

int main()
{

const int length = 9;
char array[9] ;
for (int i = 0; i < length; ++i)
cin >> array[i];

std::sort(begin(array), end(array), [](const char& l, const char& r) {
return (isdigit(l) ? l + 0x7a : l) < (isdigit(r) ? r + 0x7a : r);
});

for (int i = 0; i < length; ++i)
cout << array[i] << ' ';

return 0;

}
Taodin вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
отсортировать его по алфавиту (по возрастанию) sesitos040387s Общие вопросы C/C++ 0 28.03.2020 19:06
Отсортировать цифры в числе по возрастанию DimaDynasty SQL, базы данных 9 21.09.2018 15:38
Написать программу на Паскале. Заполнить массив случайным образом буквами латинского алфавита и цифрами. Отсортировать массив: сначала гласные, затем цифры, затем согласные. nastyaqwer Помощь студентам 6 04.12.2016 16:34
Дана строка, содержащая цифры и строчные латинские буквы. Если буквы в строке упорядочены по алфавиту, то вывести 0; в противном nadyaH Помощь студентам 12 22.11.2013 11:11
Имеется строка из букв и цифр.Преобразовать так,чтобы сначала в ней шли все буквы,затем цифры Natalia91169 Помощь студентам 3 13.03.2012 09:00