Форум программистов, компьютерный форум CyberForum.ru

Вывести k максимальных чисел массива в порядке убывания - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Конфликты хейдеров,не знаю как исправить http://www.cyberforum.ru/cpp-beginners/thread580003.html
Помоги плз,почитал в интернете,пишут,что конфликт хейдеров. Вот какие ошибки выдает k:\курсовой проект\курсовой проект\vd.h(1): error C2143: синтаксическая ошибка: отсутствие ";" перед "*" k:\курсовой проект\курсовой проект\vd.h(1): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию k:\курсовой проект\курсовой проект\vd.h(1):...
C++ Изменение массива в функции В процессе разработки возникла проблема. Нам надо передать в процедуру (тип функции void) двумерный массив, изменить его в ней. Изменения мы должны видеть из вызвавшей функции. Из-за использования рекурсии не рассматривается использование просто глобальной переменной. подскажите, пожалуйста, как решить эту проблему. Уже второй день мучаюсь. http://www.cyberforum.ru/cpp-beginners/thread580001.html
C++ Реализация алгоритма шифрования IDEA
нашла реализацию алгоритма шифрования IDEA ,выдает 2 ошибки,не знаю как исправить,чтоб работало strncpy: невозможно преобразовать параметр 2 из "_TCHAR *" в "const char *" error C2065: arg: необъявленный идентификатор что должно быть вместо arg
C++ работа с классом string
у меня есть переменная типа string key(из 16 символов),мне нужно получить из нее 8 отдельных переменных (k) каждый по 2 байта,как это осуществить? (надеюсь получилось обьяснить что мне надо)
C++ значение функции http://www.cyberforum.ru/cpp-beginners/thread579986.html
Написать программу вычисления значения функции, заданной в виде ряда, с погрешностью E > 0, т.е. чтобы для заданной погрешности выполнялось соотношение . Определить количество членов ряда, сравнить полученное значение суммы со значением функции, полученным c помощью стандартных функций языка С++:
C++ Как преобразовать большое число в строку Делаю такое преобраование char szbuff; double X=3292373930; sprintf(szbuff, "%g", X); string X_str=szbuff; В результате получаю X_str равно 3292370000 при записи в БД а в текстовый файл пишет 3.29237e+009 подробнее

Показать сообщение отдельно
gray_fox
What a waste!
1438 / 1167 / 61
Регистрация: 21.04.2012
Сообщений: 2,436
Завершенные тесты: 3
20.05.2012, 02:27     Вывести k максимальных чисел массива в порядке убывания
Цитата Сообщение от S.k.y Посмотреть сообщение
как сделать сортировку элементов массива от большего к меньшему
std::sort + std::greater (из <algorithm>):
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
#include <algorithm>
#include <iterator>
 
 
int main() {
   int vector[] = {1, 2, -1, -8, 7, 6, 55, 44, -3, -2, -222};
   std::size_t const n = sizeof(vector) / sizeof(*vector);
   std::size_t const k = 4;
   
   std::sort(&vector[0], &vector[0] + n, std::greater<int>());
   std::copy(&vector[0], &vector[0] + k, std::ostream_iterator<int>(std::cout, " "));
}
http://liveworkspace.org/code/773d59...ba9228de417b67

Добавлено через 7 минут
Вообще весь массив сортировать ни к чему, достаточно получить первые k элементов:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
#include <algorithm>
#include <iterator>
 
 
int main() {
   int vector[] = {1, 2, -1, -8, 7, 6, 55, 44, -3, -2, -222};
   std::size_t const n = sizeof(vector) / sizeof(*vector);
   std::size_t const k = 4;
   
   std::partial_sort(&vector[0], &vector[0] + k, &vector[0] + n, std::greater<int>());
   std::copy(&vector[0], &vector[0] + k, std::ostream_iterator<int>(std::cout, " "));
}
http://liveworkspace.org/code/2cf9dc...b38d072c0151dc
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru