ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > С/С++, C#, Delphi, .NET, Asm
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

инвертированные списки
  #1  
Старый 22.11.2009, 22:13
Epic wave
Участник форума
Регистрация: 15.03.2009
Сообщений: 183
Провел на форуме:
3441717

Репутация: 160
По умолчанию инвертированные списки

в общем, бьюсь с сортировкой. Во второй таблице сортировка по коду, код вводит пользователь:
C++.

Код:
#include <iostream.h>
#include <conio.h>
#include <stdio.h>
#include <iomanip.h>
#include <string.h>
#include <fstream.h>

struct eot{

  public:
                  //pervaya tablica
  int id;

  int code;

  char thing[10];
};


struct eotc{

int code;       //vtoraya tablica sort po code

int id;

};


struct eott{


char thing[10];   //3 tablica sort po thing

int id;



};


eot table[10]; //kol-vo max elementov

eotc ctable[10];

eott ttable[10];


void input(){

	

	int c,k;

         char t[10];


        cout<<"\nHow many elements: ";
            cin>>k;

        for(int i=0;i<=k;i++)   {
                                           //vvod dannih
	cout<<"\nEnter code: ";


	 cin>>c;

	cout<<"\nEnter thing: ";

	 gets(t);


         	table[i].id=i;

	 	table[i].code=c;       //zdes' zapolnyaetsa pervaya tablica, vse ok.

		strcpy(table[i].thing,t);
                                   


				 if(ctable[0].code==NULL){                       //zapolnyem 0 element, vtoroi tablici

							     ctable[i].code=c;
                                                             ctable[i].id=i;


							     }
                                                             else{    //zapolnyaem ostal'nie
					      int m;

					      for(int q=i;q>=0;q--){  //nchnem s poslednego

					      m=0;

					      

					      if(c<=ctable[q].code)//esli vvedenii men'she tekushego
						                     
					      {

					      cout<<"\n"<<c<<" < "<<ctable[q].code;

						getch();

                                              

                                              ctable[i].code=ctable[q].code;
                                                                              //menyaem
					      ctable[i].id=ctable[q].id;

						  



					      ctable[q].code=c;

					      cout<<"\n"<<q<<" "<<ctable[q].code; //vivodim tecushiy

                                              getch();
                                              
					      ctable[q].id=i;

                                               break;
					      
					      

					      m=1;
                                              
					      }
					      else
                                                                   
					      if(m==0)

					      {

					      ctable[i].code=c;   //esli vvedenii ne men'she to prosto dobavlyaem v konec

					      ctable[i].id=i;

					      }}
					       

								 }



				 }

	       	for(int q=0;q<=i;q++)
               
	       	{                           //zdes' tret'ya tablica sortirovka po thing.
		strcpy(ttable[q].thing,t);
                
                ttable[q].id=i;

		}

                                               
                
}





void outmain(){

  int k=0;



	cout<<"\n       main table\n";

	cout<<" _____________________";

do{
	
	cout<<"\n| "<<table[k].id<<"|"<<setw(4)<<table[k].code<<setw(4)<<"|"<<setw(8)<<table[k].thing<< setw(4)<<"|\n";
	cout<<"|--+-------+----------|";
	k++;
}

while(table[k].code!=NULL);



	cout<<"\n ---------------------";
}




void out(){

int k=0;



cout<<"\n Sort by code.\n";
cout<<" __________";

do{

  cout<<"\n| "<<setw(4)<<ctable[k].code<<setw(4)<<" |"<<ctable[k].id<<"|";
        k++;
      cout<<"\n|--------+-|";

}
while(ctable[k].code!=NULL);

	cout<<"\n ----------\n";

      int y=0;

cout<<"\n Sort by thing.\n";

cout<<" __________";

do{

   cout<<"\n| "<<setw(4)<<ttable[y].thing<<setw(4)<<" |"<<ttable[y].id<<"|";
        y++;
      cout<<"\n|--------+-|";

}
while(ttable[y].id!=NULL);
  
	cout<<"\n ----------\n";
  

}


void main(){

      

       int option;


       do{

	clrscr();
	cout<<"\n	   Menu\n";
	cout<<"1. Create table\n";
	cout<<"2. Output main table\n";
	cout<<"3. Search by code\n";
	cout<<"4. Delete by code\n";
	cout<<"5. Output tables\n";
        cout<<"6. Edit\n";
	cout<<"7. Save\n";
        cout<<"8. Open\n";
        cout<<"0. Exit\n";


	 cout<<"\nEnter action: ";
	  cin>>option;

	 
               
		switch(option){
			case 1:
                               input();
			
			break;
			      
			case 2:
			      outmain();

                              getch();
			break;

			case 3:


			break;

			case 4:

			break;

			case 5:
			      out();

                              getch();
			break;

			case 6:

			break;

			}
			
		}
		while(option!=0);



}

сейчас в программе два списка и таблица третьего.

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

Последний раз редактировалось Epic wave; 24.11.2009 в 00:39..
 
Ответить с цитированием

  #2  
Старый 23.11.2009, 01:32
scrat
Постоянный
Регистрация: 08.04.2007
Сообщений: 853
Провел на форуме:
5812656

Репутация: 1540


Отправить сообщение для scrat с помощью ICQ
По умолчанию

отличный, хорошо закомментированный код, в котором ничего не стоит разобраться и тебе помочь.
 
Ответить с цитированием

  #3  
Старый 24.11.2009, 00:39
Epic wave
Участник форума
Регистрация: 15.03.2009
Сообщений: 183
Провел на форуме:
3441717

Репутация: 160
По умолчанию

Поправил.
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Списки самых популярных в России паролей Alstairs Болталка 27 24.10.2009 14:02
Провайдеры составят черные списки сайтов jerrri Мировые новости 0 21.10.2009 18:14
Нужны списки username с ваших БД it's my Расшифровка хешей 33 02.09.2009 02:21
Где достать списки рабочих анонимных проксей? pento Анонимность 6 04.10.2006 17:01
списки гостевых книг, форумов где гости имеют право писать сообщения. BlackCats Инвайты, mails, базы - Покупка, продажа 5 18.06.2006 01:26



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ