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

Преобразовать массив таким образом, чтобы сначала располагались все элементы, целая часть которых не превышает 1, а потом все остальные - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.92
Iliabobr
3 / 3 / 1
Регистрация: 04.11.2009
Сообщений: 98
04.04.2011, 07:39     Преобразовать массив таким образом, чтобы сначала располагались все элементы, целая часть которых не превышает 1, а потом все остальные #1
привет всем)
никак не могу придумать влгоритм для куска задачи:
преобразовать массив таким образом, чтобы сначала располагались все элементы, целая часть которых не превышает 1, а потом все остальные
кто знает как сделать подскажите=))
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.04.2011, 07:39     Преобразовать массив таким образом, чтобы сначала располагались все элементы, целая часть которых не превышает 1, а потом все остальные
Посмотрите здесь:

Преобразовать массив таким образом, чтобы сначала располагались все положительные элементы, а потом все отрицательные C++
Преобразовать массив таким образом, чтобы сначала располагались все положительные элементы, а потом - все остальные C++
C++ Преобразовать массив таким образом чтобы сначала располагались все элементы равные нулю а потом остальные
C++ Преобразовать массив таким образом, чтобы сначала располагались все по- ложительные элементы, а потом все остальные
C++ Преобразовать массив таким образом, чтобы сначала располагались все по- ложительные элементы, а потом все остальные.как доработать?
C++ Преобразовать массив таким образом, чтобы сначала располагались все элементы, модуль которых не превышает 1
Преобразовать массив таким образом, чтобы сначала располагались все элементы, модуль которых не превышает 1 C++
C++ Преобразовать массив: сначала расположить все элементы, целая часть которых не превышает 1, потом - остальные

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
igorrr37
 Аватар для igorrr37
1593 / 1221 / 118
Регистрация: 21.12.2010
Сообщений: 1,868
Записей в блоге: 7
04.04.2011, 11:47     Преобразовать массив таким образом, чтобы сначала располагались все элементы, целая часть которых не превышает 1, а потом все остальные #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include<iostream>
#include<algorithm>
#include<cmath>
#include<iterator>
 
int main(){
    double mas[]={7.6, -8.6, 1.2, 0.55, -1.5, -0.9, 7.7}, ia, ib;
    std::sort(mas, mas+sizeof(mas)/sizeof(*mas), [&](double a, double b){
              modf(a, &ia);
              modf(b, &ib);
              return fabs(ia)<=1&&fabs(ib)>1;
              ;});
    std::copy(mas, mas+sizeof(mas)/sizeof(*mas), std::ostream_iterator<double>(std::cout, " "));
}
Iliabobr
3 / 3 / 1
Регистрация: 04.11.2009
Сообщений: 98
04.04.2011, 14:44  [ТС]     Преобразовать массив таким образом, чтобы сначала располагались все элементы, целая часть которых не превышает 1, а потом все остальные #3
а если массив из N чмсел?
Yandex
Объявления
04.04.2011, 14:44     Преобразовать массив таким образом, чтобы сначала располагались все элементы, целая часть которых не превышает 1, а потом все остальные
Ответ Создать тему
Опции темы

Текущее время: 21:42. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru