>
if (vec [mid]. routeNum == rn)
return true;
if (vec [mid]. routeNum> rn)
binary_search (vec, rn, beg, mid);
else
binary_search (vec, rn, mid, end);
}
Функція швидкого сортування
void quickSort (vector & vec, int low, int high)
{
int i = low;
int j = high;
rts x = vec [(low + high)/2];
do
{
while (vec [i]. station
while (vec [j]. station> x.station) - j;
if (i <= j)
{
swap (vec [i], vec [j]);
i + +; j -;
}
}
while (i
if (low
if (i
}
Функція редагування таблиці маршрутів
void Routes :: OnClickedBtnEdit ()
{
AddStand as;
int n = LCtrlStand.GetSelectedCount ();
if (n == 0)
{
MessageBox (L "Виберіть дані для редагування!", L "Повідомлення", MB_OK | MB_ICONINFORMATION);
return;
}
POSITION pos = LCtrlStand.GetFirstSelectedItemPosition ();
if (pos)
{
int nIndex = LCtrlStand.GetNextSelectedItem (pos);
as.arTime = vec2 [nIndex]. arTime;
as.lvTime = vec2 [nIndex]. lvTime;
as.stand = vec2 [nIndex]. station;
if (as.DoModal () == IDOK)
{
LCtrlStand.DeleteAllItems ();
rts rt;
rt.arTime = as.arTime;
rt.lvTime = as.lvTime;
rt.station = as.stand;
rt.rNum = Rn;
vector :: iterator it;
it = vec2.begin () + nIndex;
it = vec2.erase (it);
vec2.insert (it, rt);
insert (vec2);
}
}
}
Обробник події натискання кнопки В«МаршрутиВ» користувача «óстьВ».
void User :: OnClickedBtnUsRt ()
{
LCtrlUs.DeleteAllItems ();
sch = L "";
UpdateData (FALSE);
if (fl == 1)
{
LCtrlUs.DeleteColumn (0);
LCtrlUs.InsertColumn (0, L "№ маршруту", LVCFMT_LEFT, 80);
LCtrlUs.InsertColumn (1, L "Пункт відправлення", LVCFMT_LEFT, 120);
LCtrlUs.InsertColumn (2, L "Пункт призначення", LVCFMT_LEFT, 120);
fl = 0;// Прапор показує, що була створена таблиця маршрутів
}
FILE * f;
fopen_s (& f, "Запроси.bin", "rb");
vecUs1.clear ();
if (f! = NULL)
{
lst_char req;
lst rq;
while (feof (f)! = fread (& req, sizeof (req), 1, f))
{
rq.departure = req.departure;
rq.destination = req.destination;
rq.hour = req.hour;
rq.minute = req.minute;
rq.routeNum = req.routeNum;
vecUs1.push_b...