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

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

Войти
Регистрация
Восстановить пароль
 
snapper
0 / 0 / 0
Регистрация: 14.12.2010
Сообщений: 4
#1

таблица индетификаторов методом цепочек - C++

22.12.2010, 01:00. Просмотров 592. Ответов 0
Метки нет (Все метки)

Прошу, пожалуйста прокомментируйте функции...
Код
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include "string.h";
#include "iomanip.h";
#include "Unit1.h"
#include "time.h";
int **r;
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------

void __fastcall TForm1::N1Click(TObject *Sender)
{
        if(!OpenDialog1->Execute())
        {
                return;
        }
        Memo1->Lines->Clear();
        Memo1->Lines->LoadFromFile(OpenDialog1->FileName);
        Edit1->Enabled=false;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::N7Click(TObject *Sender)
{
        char c[64];
        int i,j,n;
        randomize();
        n=Memo1->Lines->Count;
        r=new int *[n];
        for(i=0;i<n;i++)
        {
                r[i]=new int [2];
                r[i][1]=0;
        }
        for(i=0;i<n;i++)
        {
                strcpy(c,Memo1->Lines->Strings[i].c_str());
                j=0;
                while(c[j]!='\0')
                {
                        j++;
                }
                r[i][0]=(int)c[0] + (int) c[j-1];
                for(j=0;j<i;j++)
                {
                        if(r[i][0]==r[j][0])
                        {
                                while(r[j][1]!=0)
                                {
                                        r[i][0]=r[j][1];
                                        for(int z=0;z<i;z++)
                                        {
                                                if(r[i][0]==r[z][0])
                                                {
                                                        j=z;
                                                        break;
                                                }
                                        }
                                }
                                r[i][0]-=rand() % 200;
                                r[j][1]=r[i][0];
                        }
                }
        }
        for(i=0;i<n;i++)
        {
                Memo2->Lines->Add((AnsiString) r[i][0] +" -> "+ r[i][1]);
        }
        Edit1->Enabled=true;
}
//---------------------------------------------------------------------------

void __fastcall TForm1::Btn1Click(TObject *Sender)
{
        int i,j;
        Memo3->Clear();
        for(i=0;i<Memo1->Lines->Count;i++)
        {
                if((int)Edit1->Text.c_str()[0]+(int)Edit1->Text.c_str()[Edit1->Text.Length()-1]==r[i][0])
                {
                        while(r[i][1]!=0)
                        {
                                if(Edit1->Text==Memo1->Lines->Strings[i])
                                {
                                        Memo3->Lines->Add((AnsiString)"Ôóíêöèÿ íàéäåíà â " + (i+1) + " ñòðîêå è èìååò ÕÝØ ôóíêöèþ " + r[i][0]);
                                        return;
                                }
                                else
                                {
                                        for(j=0;r[j][0]!=r[i][1];j++);
                                        i=j;
                                }
                        }
                        if(Edit1->Text==Memo1->Lines->Strings[i])
                        {
                                Memo3->Lines->Add((AnsiString)"Ôóíêöèÿ íàéäåíà â " + (i+1) + " ñòðîêå è èìååò ÕÝØ ôóíêöèþ " + r[i][0]);
                                return;
                        }
                        else
                        {
                                Memo3->Lines->Add((AnsiString)"Îøèáêà!!! Ôóíêöèÿ íå íàéäåíà!!!");
                        }
                }
        }
}
//---------------------------------------------------------------------------

void __fastcall TForm1::Edit1Change(TObject *Sender)
{
        Btn1->Enabled=false;
        if(Edit1->Text.Length()>1)
        {
                Btn1->Enabled=true;
        }
}
//---------------------------------------------------------------------------

void __fastcall TForm1::N3Click(TObject *Sender)
{
        Form1->Close();        
}
//---------------------------------------------------------------------------
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.12.2010, 01:00
Здравствуйте! Я подобрал для вас темы с ответами на вопрос таблица индетификаторов методом цепочек (C++):

Хэш - таблица методом цепочек - C++
Всем привет! Есть задание реализовать хеш-таблицу методом цепочек + с хэш - функциями: деление и умножение. Я не до конца понимаю, что...

Хэш-таблица (метод цепочек) - C++
Пишу частотный словарь текста: Массив списков узлов. В узле значение и частота слова. При написании функции void add столкнулся с...

Хэш-таблица. Метод цепочек. C++ - C++
Уважаемые, программисты, задание звучит так: &quot;Таблица строится по методу цепочек с использованием хеш-функции, возвращающей сумму двух...

Хеш-таблица (метод цепочек) - C++
Дано: файл на 1ккк больших чисел. Задача: 1. Построить хеш-таблицу любым методом. 2. Обчислить количество возможных разных значений...

Хеш таблица с функцией (метод цепочек) - C++
1) Не смотрите на хеш функцию, она наитупейшая, я еще над ней не работал. 2)Метод цепочек заключается в том, если в ячейке массива есть...

Таблица умножения методом Монте-Карло - C++
Пожалуйста помогите, нужна программа для вывода таблицы умножения методом Монте-Карло

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.12.2010, 01:00
Привет! Вот еще темы с ответами:

Хэширование метод цепочек - C++
Помогите пожалуйста с заданием, даже не знаю с чего тут начать. Построить хеш - таблицу, содержащую последовательность из m = 53...

Вывести все возможные комбинации цепочек в матрице смежности - C++
Есть матрица смежности вида: AB0 BCD DD0 CKN NE0 KB0 Т.е. если в конце строки 0, то из одного узла есть связь только к одному...

Таблица лексем и таблица идентификаторов - C++
Помогите пожалуйста найти ошибку в коде. Прога строит ТИ и ТЛ. К таблице идентификаторов претензий нет, а вот в таблице лексем возникают...

Создание таблицы идентификаторов методом цепочек - C#
Вообщем дело вот в чем, есть txt файл, с него считываю столбец с идентификаторами, с помощью StreamReader, для организации таблиц...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

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