Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Visual C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.12.2012, 16:58   #1
NadezdaM
Новичок
Джуниор
 
Регистрация: 25.12.2012
Сообщений: 4
По умолчанию Упорядочить одномерный массив

Подскажите, пожалуйста,товарищи программисты, как упорядочить по возрастанию в массиве кусок,который полностью совпадает с другим массивом

Последний раз редактировалось NadezdaM; 25.12.2012 в 17:03.
NadezdaM вне форума Ответить с цитированием
Старый 25.12.2012, 17:43   #2
Ezhik Kihze
Форумчанин
 
Регистрация: 24.12.2012
Сообщений: 639
По умолчанию

std::search находим где кусок
std::sort сортируем с нужным порядком
ICQ: 677936656 Gmail: ekEmbed@gmail.com
Ezhik Kihze вне форума Ответить с цитированием
Старый 25.12.2012, 17:47   #3
NadezdaM
Новичок
Джуниор
 
Регистрация: 25.12.2012
Сообщений: 4
По умолчанию

Мое решение( ввожу 2-а массива, и если од массив входит в другой, то упорядочить по возрастанию в массиве кусок,который полностью совпадает с другим массивом)

Код:
# include<iostream.h>
const int n=4;
const int m=2;
void vvod( int x[n])// ввожу массив 1-ый
{
	int i;
	for( i=0;i<n;i++)
	{
		cout<<"x["<<i<<"]=";
		cin>>x[i];
	}
}
/////////////////////////////////////
        void vvod1( int y[m])// // ввожу массив 2-ый
		{
	        int j;
	        for( j=0;j<m;j++)
			{
		         cout<<"y["<<j<<"]=";
		         cin>>y[j];
			}
		}
/////////////////////////////////////////
		     void show1(int y[n])//показываю массив 1-ый
			 {
				 int j;
				 for(j=0;j<n;j++)
				 {
					 cout<<y[j]<<' ';
					 
				 }
			 }
////////////////////////////////////////////
			     void show2(int x[n])//показываю массив 2-ый
				 { 
				    int i;
				    for(i=0;i<n;i++)
					{
					 cout<<x[i]<<' ';
					
					}
				 }
////////////////////////////////////////

                 bool EA(int x[n],int y[m])// проверяю есть и в 1-ом массиве 2-ой массив
				 {
					 bool b=false;
					 for(int i=0;(i<=n-m)&&!b;i++)
                     {
						 bool b2=true;
						 for(int j=0;j<m&&b2;j++)
						 {
							 if (x[i+j]!=y[j])
								 b2=false;
							 b=b2;
						}
					  }
                     return b;
                  }
////////////////////////////////////////////////////
				 void upor( int x[n],int y[m])//пытаюсь упорядочить

				{   
					 
					 for(int i=0;i<n;i++)
				 {
					 for(int j=0;j<m;j++)
                     if(x[i]==y[j])
					 {
						 for(int i=0;i<n-1;i++)
					     for(int t=i+1;t<m;t++)
						 if (x[i]>x[t])
						 {
							 int r=x[i];
							 x[i]=x[t];
							 x[t]=r;
						 }
						
					 }
				 }
				 }
///////////////////////////////////////////////////////////
				    void main()
					{
						int a[n],b[m];
						cout<<"enter massiv x"<<endl;
						vvod(a);
						show1(a);
                        cout<<"enter massiv y"<<endl;
						vvod1(b);
						show2(b);
						if (EA(a,b))
						{
							upor(a,b);
							show1(a);
						}

						else 
                         cout<<"massiv x and y ne sovpadayt";
					}

Последний раз редактировалось NadezdaM; 25.12.2012 в 18:14.
NadezdaM вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
упорядочить одномерный массив таким образом,чтобы сначалашлиупорядоченные положительные члены и tarasman11 Паскаль, Turbo Pascal, PascalABC.NET 5 05.07.2012 20:16
Одномерный массив (посчитать количество, сумму и упорядочить) Си++ Defender42 Помощь студентам 10 02.04.2011 10:42
Упорядочить одномерный массив указателей на строки DarkDante Общие вопросы C/C++ 1 02.05.2010 15:53
одномерный массив. упорядочить serj-07 Помощь студентам 11 18.01.2010 01:28
Упорядочить массив в порядке возрастания и напечатать входной и исходный массив. TheVenny Помощь студентам 3 26.11.2008 15:06