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

Одномерные массивы. Поиск последовательностей - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Подсветка синтаксиса в Emacs http://www.cyberforum.ru/cpp-beginners/thread749765.html
Скажите пожалуйста, как в Emacs сделать автоматическую подсветку кода С++ в файлах с расширением .h - там только C, а в файлах .cpp все нормально.
C++ Нахождение всех неотрицательных чисел, стоящих на четных местах в последовательности =-O http://www.cyberforum.ru/cpp-beginners/thread749746.html
C++ Составить алгоритм нахождения суммы наибольшего и наименьшего из заданных чисел
:(:(
C++ составить алгоритм инвертирования ряда чисел , т.е. записи всех чисел заданного ряда в обратном порядке
:cry:
C++ Переписать элементы массива X[N] в массив Y[N] в обратном порядке http://www.cyberforum.ru/cpp-beginners/thread749734.html
помогите:(
C++ Структуры (Что-то вроде базы данных по бытовой технике) Всем доброго времени суток. Дали нам задачу по работе со struct. Мне нужно реализовать что то вроде базы данных по бытовой технике. В эту структуру нужно будет добавлять, удалять, отпечатывать в... подробнее

Показать сообщение отдельно
Avazart
Эксперт С++
7213 / 5385 / 286
Регистрация: 10.12.2010
Сообщений: 23,806
Записей в блоге: 17
29.12.2012, 21:31
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#include <iostream>
using namespace std;
//-----------поиск первого не положительного-------------------------------
int* find_first_not_pos(int* first,int* last)
{
  for(; first!=last; ++first) if(*first<=0) return first;
  return last;
}
//-----------поиск первого положительного------------------------------
int* find_first_pos(int* first,int* last)
{
  for(; first!=last; ++first) if(*first>0) return first;
  return last;
}
//-------------- изменение порядка--------------------------
void reverse_el(int* first,int* last)
{
  for(; first!=last; ++first)
   {
     if(first== --last) break;
 
     int temp= *last;
     *last = *first;
     *first= temp;
   }
}
//-------------- сама ф-ция-----------------------------
void some(int* first,int* last)
{
   for(; first!=last; ++first)
   {
     int* b = find_first_pos(first,last);
     int* e = find_first_not_pos(b,last);
     reverse_el(b,e);
     first= e;
   }
}
//-----------------------------------------------
int main()
{
const int size=16;
int A[size]={-10,0,5,6,7,8,9,-1,-2,1,2,3,-7,13,14,-50};
 
for(int* p=A;p!=A+size;++p) cout<< *p <<" ";
cout<<endl;
 
some(A,A+size);
 
for(int* p=A;p!=A+size;++p) cout<< *p <<" ";
cout<<endl;
 
 return 0;
}
//------------------------------------------------
-10 0 5 6 7 8 9 -1 -2 1 2 3 -7 13 14 -50
-10 0 9 8 7 6 5 -1 -2 3 2 1 -7 14 13 -50
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru