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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.83
Aigerimka
1 / 1 / 0
Регистрация: 03.12.2009
Сообщений: 7
#1

Преобразовать массив - C++

09.12.2009, 13:17. Просмотров 1449. Ответов 2
Метки нет (Все метки)

1)преобразовать массив таким образом, чтобы сначала располагались все отрицательные элементы,а потом - все положительные( элементы,равные 0,считать положительными)
2)в одномерном массиве, состоящем из n вещественных элеменов массива вычислить:
сумму элементов массива,расположенных между первым и последним положительными элементами.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.12.2009, 13:17     Преобразовать массив
Посмотрите здесь:

Задан массив из k символов. Преобразовать массив следующим образом: расположить символы в обратном порядке - C++
Задан массив из k символов. Преобразовать массив следующим образом: расположить символы в обратном порядке. Только начали изучать С++,...

Дан целочисленный массив размером N. Преобразовать массив, увеличив длину каждой серии на один элемент - C++
#include "stdafx.h" #include <iostream> using namespace std; int main() { int n; int k=0; int p=0; int l=0; int...

Преобразовать массив следующим образом: сначала должны стоять цифры, входящие в массив, а затем все остальные символы - C++
помогите пожайлуста с задачей. Задан массив из k символов. Преобразовать массив следующим образом: сначала должны стоять цифры,...

Преобразовать массив LPWSTR в массив BYTE - C++
Найти не могу нигде... На С# только нашел, и то не то... Получаю из EDIT текст: LPWSTR keyT = (LPWSTR)malloc(32 + 1 *...

Преобразовать массив Int в массив строк - C++
Помогите пожалуйста с решением. Нужно в каждый элемент массива string положитm элемент массива int. Т.е из int i={1,12,100} получить...

преобразовать массив - C++
вообщем у меня массив char x; x=3; x=6; x=f; как преобразовать чтоб получилось X=36f

Преобразовать массив - C++
Преобразовать одномерный массив, состоящий из n вещественных чисел, таким образом, чтобы сначала располагались все элементы, ...

Преобразовать массив - C++
Помогите преобразовать массив, а то чтот вообще не пойму как: Дано массив a. В массиве расположить сначала все элементы, отличающиеся...

Преобразовать массив - C++
Преобразуйте массив переставив все элементы все нулевые элементы в в конец массива

Преобразовать массив - C++
В одномерном массиве, состоящем из n вещественных элементов, вычислить номер минимального элемента массива. Преобразовать массив таким ...

Преобразовать массив - C++
Преобразовать массив так, чтобы элементы массива поменялись местами первый с последними,второй с предпоследними

Преобразовать массив - C++
Пример массива и дополнительных переменных приведены ниже: { 1.2, -1.8, -4.5, 8.5, -0.1, -0.9, 9.7, -9.8, 0.2, 3.5, 5.7, -3.8, -6.0, 4.2,...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
mamedovvms
2916 / 837 / 93
Регистрация: 30.04.2009
Сообщений: 2,624
09.12.2009, 14:35     Преобразовать массив #2
C++
1
2
3
4
5
6
7
8
9
10
1)
int k=0;
for (int i=0;i<n;i++)
 if (a[i]<0)
{
   int temp=a[k];
   a[k]=a[i];
   a[i]=temp;
   k++;
}
Добавлено через 1 час 6 минут
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2)
int ot=0;
int i=-1;
do{
 i++;
 if (a[i]>0) ot=i;
}while(a[i]<0);
 
int do=0;
int i=n;
do{
 i--;
 if (a[i]>0) do=i;
}while(a[i]<0);
sum=0;
for(int j=ot+1;j<do;j++)
sum+=a[j];
Андрейка
419 / 223 / 27
Регистрация: 25.03.2009
Сообщений: 744
11.12.2009, 00:59     Преобразовать массив #3
Aigerimka,
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <algorithm>
#include <iterator>
#include <vector>
#include <algorithm>
#include <functional>
 
int main()
{
    std::istream_iterator <double> start (std::cin);
    std::istream_iterator <double> end;
 
    std::vector <double> vec(start, end);
    std::vector <double> ::iterator iter = std::partition (vec.begin(), vec.end(), std::bind2nd (std::less <double> (), 0));
 
    std::copy (vec.begin(), iter, std::ostream_iterator <double> (std::cout," "));
    std::copy(iter, vec.end(), std::ostream_iterator <double> (std::cout," "));
 
    system("pause");
    return 0;
}
Добавлено через 15 минут
Aigerimka,
C++
1
std::accumulate(std::find_if(vec.begin(),vec.end(),std::bind2nd(std::greater<double>(),0))+1, std::find_if(vec.rbegin(),vec.rend(),std::bind2nd(std::greater<double>(),0)).base(),0);
что то в таком духе
это 2
Yandex
Объявления
11.12.2009, 00:59     Преобразовать массив
Ответ Создать тему
Опции темы

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