Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
pasha-1-08
0 / 0 / 0
Регистрация: 29.12.2010
Сообщений: 27
#1

Задана строка, содержащая целые числа (максимум 15 чисел). Упорядочить целые числа в строке по убыванию.

23.02.2011, 21:45. Просмотров 1177. Ответов 7
Метки нет (Все метки)

Задана строка, содержащая целые числа (максимум 15 чисел). Упорядочить
целые числа в строке по убыванию.
должно выглядеть что то типо такого
13 23 34 65 12 ( enter )
65
34
23
13
12
press eny key to con .....
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.02.2011, 21:45
Ответы с готовыми решениями:

Упорядочить целые числа в строке по убыванию
Задана строка, содержащая вещественные числа (максимум 20 чисел). Упорядочить...

Дана строка, содержащая целые числа. Вывести на экран только чётные числа
я накидала код...но что-то тут не ладное((( #include <iostream> #include...

Упорядочить целые числа в строке по возрастанию.
Помогите пожалуйста с задачей на СИ: Задана строка, содержащая целые числа...

Дана последовательность, элементы которой есть целые двузначные числа. Упорядочить последовательность по убыванию произведений цифр
Здравствуйте. На форуме есть код подобный, но по возрастанию сумм элементов....

Матрица B, содержащая целые числа, вводится с клавиатуры
Матрица B, содержащая целые числа, вводится с клавиатуры. Найти максимальный и...

7
asics
Freelance
Эксперт С++
2854 / 1789 / 355
Регистрация: 09.09.2010
Сообщений: 3,841
23.02.2011, 22:26 #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#include <iostream>
#include <string>
#include <algorithm>
#include <vector>
#include <sstream>
 
#include <windows.h>
 
int str_to_int(std::string &str_num){
  int num = 0;
  std::for_each(str_num.begin(), str_num.end(), [&num](char a_){
    num = num * 10 + (a_ - '0');
  });
  return num;
}
 
int main(){
  SetConsoleCP(1251);
  SetConsoleOutputCP(1251);
 
  std::string str;
  std::cout << "\n\nВведите строку: ";
  getline(std::cin, str);
  std::vector<int> vec;
  std::istringstream ist(str);
  while(ist >> str)
    vec.push_back(str_to_int(str));
  std::sort(vec.begin(), vec.end(), [](int a, int b) -> bool{return a > b;});
  std::cout << "\n\nРезультат: \n";
  std::for_each(vec.begin(), vec.end(), [](int a_){std::cout << a_ << '\n';});
  return 0;
}
0
pasha-1-08
0 / 0 / 0
Регистрация: 29.12.2010
Сообщений: 27
23.02.2011, 22:40  [ТС] #3
нужно в компиляторе PEllic C он не знает iostream исправте плиз!
0
asics
Freelance
Эксперт С++
2854 / 1789 / 355
Регистрация: 09.09.2010
Сообщений: 3,841
23.02.2011, 22:43 #4
Цитата Сообщение от pasha-1-08 Посмотреть сообщение
нужно в компиляторе PEllic C
Увы, я такого даже компилятора и не знаю.
0
Ma3a
Эксперт С++
619 / 463 / 57
Регистрация: 28.01.2011
Сообщений: 605
23.02.2011, 22:45 #5
быть может, Pelles C?
0
pasha-1-08
0 / 0 / 0
Регистрация: 29.12.2010
Сообщений: 27
23.02.2011, 22:49  [ТС] #6
да!он самый
0
igorrr37
1867 / 1483 / 751
Регистрация: 21.12.2010
Сообщений: 2,473
Записей в блоге: 11
23.02.2011, 23:32 #7
http://www.cyberforum.ru/cpp-beginners/thread247110.html
0
easybudda
Модератор
Эксперт CЭксперт С++
10054 / 5974 / 1493
Регистрация: 25.07.2009
Сообщений: 11,320
24.02.2011, 00:46 #8
pasha-1-08, не дублируйте темы - это нарушает правила форума.
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
 
int cmp(const void * a, const void * b){ return *(int*)b - *(int*)a; }
 
#define MAX_NUMBERS 15
#define DELIM " \t\n"
 
int main(void){
    char buf[BUFSIZ], * p;
    int arr[MAX_NUMBERS], cnt, i;
    
    while ( printf("String: ") && fgets(buf, BUFSIZ, stdin) && *buf != '\n' ){
        cnt = 0;
        for ( p = strtok(buf, DELIM); p && cnt < MAX_NUMBERS; p = strtok(NULL, DELIM) )
            arr[cnt++] = atoi(p);
        if ( ! cnt ){
            fprintf(stderr, "Wrong input!\n");
            continue;
        }
        qsort(arr, cnt, sizeof(int), cmp);
        printf("Result: ");
        for ( i = 0; i < cnt; ++i )
            printf("%d ", arr[i]);
        printf("\n\n");
    }
    
    exit(0);
}
Добавлено через 13 минут
asics, вот ещё вариант, правда, инклудов больше получилось, чем сама программа
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
#include <set>
#include <algorithm>
#include <functional>
#include <string>
#include <sstream>
#include <iterator>
    
int main(){
    std::string buf;
    
    while ( std::cout << "String: " && std::getline(std::cin, buf) && ! buf.empty() ){
        std::istringstream ist(buf);
        std::set<int, std::greater<int> > set;
        std::copy(std::istream_iterator<int>(ist), std::istream_iterator<int>(), std::inserter(set, set.begin()));
        std::cout << "Result: ";
        std::copy(set.begin(), set.end(), std::ostream_iterator<int>(std::cout, " "));
        std::cout << std::endl;
    }
    
    return 0;
}
2
24.02.2011, 00:46
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.02.2011, 00:46

Задана строка, содержащая буквы и числа
Задана строка, содержащая буквы и числа. Найти произведение всех чисел,...

Дана матрица размерностью nxn, содержащая целые числа. Отсортировать:
Дана матрица размерностью nxn, содержащая целые числа. Отсортировать: каждую...

Даны целые положительные числа M, N и набор из N чисел
Даны целые положительные числа M, N и набор из N чисел. Сформировать матрицу...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru