Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
26 / 1 / 1
Регистрация: 18.03.2018
Сообщений: 278
1

Комбинации покупок

24.05.2018, 18:38. Показов 631. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Имеется следующая БД:

Delphi
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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
unit Unit5;
 
interface
 
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Menus, Grids, StdCtrls;
 
type
    mass=array[1..7] of string[10];
    ff= file of mass;
  TForm5 = class(TForm)
    MainMenu1: TMainMenu;
    N1: TMenuItem;
    N2: TMenuItem;
    N3: TMenuItem;
    N4: TMenuItem;
    Edit1: TEdit;
    Button1: TButton;
    Label1: TLabel;
    s1: TStringGrid;
    Edit2: TEdit;
    Edit3: TEdit;
    Edit4: TEdit;
    Edit5: TEdit;
    Edit6: TEdit;
    Edit7: TEdit;
    N5: TMenuItem;
    Button2: TButton;
    Button3: TButton;
    procedure Button3Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure N2Click(Sender: TObject);
    procedure N3Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure N4Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
 
var
  Form5: TForm5;
  f : ff;
  i : integer;
 
implementation
 
{$R *.dfm}
 
procedure TForm5.Button1Click(Sender: TObject);
begin
  i:=i+1;
  s1.Cells[0,i]:=inttostr(i);
  s1.Cells[1,i]:=edit1.Text;
  s1.Cells[2,i]:=edit2.text;
  s1.Cells[3,i]:=edit3.text;
  s1.Cells[4,i]:=edit4.text;
  s1.Cells[5,i]:=edit5.text;
  s1.Cells[6,i]:=edit6.text;
  s1.Cells[7,i]:=edit7.text;
end;
 
procedure TForm5.Button2Click(Sender: TObject);
begin
s1.RowCount:=s1.RowCount+1;
end;
 
procedure TForm5.Button3Click(Sender: TObject);
begin
s1.RowCount:=s1.RowCount-1;
end;
 
procedure TForm5.FormCreate(Sender: TObject);
begin
  assignfile(f,'baza.dat');
  i:=0;
  s1.Cells[0,0]:='№ покупки';
  s1.Cells[1,0]:='1 товар';
  s1.Cells[2,0]:='2 товар';
  s1.Cells[3,0]:='3 товар';
  s1.Cells[4,0]:='4 товар';
  s1.Cells[5,0]:='5 товар';
  s1.Cells[6,0]:='6 товар';
  s1.Cells[7,0]:='7 товар';
end;
 
procedure TForm5.N2Click(Sender: TObject);
begin
Close;
end;
 
procedure TForm5.N3Click(Sender: TObject);
var
j : integer;
m : mass;
begin
 Rewrite(f);
 for j := 1 to i do  begin
   m[1]:=s1.Cells[1,j];
   m[2]:=s1.Cells[2,j];
   m[3]:=s1.Cells[3,j];
   m[4]:=s1.Cells[4,j];
   m[5]:=s1.Cells[5,j];
   m[6]:=s1.Cells[6,j];
   m[7]:=s1.Cells[7,j];
write(f,m);
 end;
closefile(f);
 
end;
 
procedure TForm5.N4Click(Sender: TObject);
var
m : mass;
j : integer;
begin
  reset(f);
  j:=1;
  while not eof(f) do begin
    read(f,m);
    s1.Cells[0,j]:=inttostr(j);
    s1.Cells[1,j]:=m[1];
    s1.Cells[2,j]:=m[2];
    s1.Cells[3,j]:=m[3];
    s1.Cells[4,j]:=m[4];
    s1.Cells[5,j]:=m[5];
    s1.Cells[6,j]:=m[6];
    s1.Cells[7,j]:=m[7];
    j:=j+1;
  end;
closefile(f);
end;
 
end.
Основной сутью является возможность введения наименований товаров и их добавления в таблицу, а затем создание файла из этой таблицы.

Подскажите пожалуйста, как можно оформить поиск и вывод наиболее популярных покупок из 2,3,4,5,6,7 товаров в этой таблице? (используя массив) Другими словами должно быть что-то типа того: например комбинация из двух покупок "хлеб и молоко" стала самой популярной, её купили 8 раз (т.е. среди, допустим, 15 покупок такая комбинация встретилась 8 раз). И мне нужно чтобы как раз таки её и выводило
Миниатюры
Комбинации покупок  
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.05.2018, 18:38
Ответы с готовыми решениями:

Составить корзину покупок
Должна присутствовать возможность записи товара в стрингрид

Список покупок в Delphi 7
Нужно сделать список покупок в Delphi, и посчитать сумму. Где ошибка:? var a,o,m,p,k,r:Real;...

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

Наиболее частый набор покупок из StringGrid
Имеется вот такая вот таблица в StringGrid(см. скриншот). Нужно чтобы через кнопку в мемо выбивало...

5
Модератор
9246 / 6027 / 2376
Регистрация: 21.01.2014
Сообщений: 25,771
Записей в блоге: 3
24.05.2018, 18:45 2
Цитата Сообщение от Komputershik Посмотреть сообщение
Имеется следующая БД:
Нет тут у Вас никакой БД.
Komputershik, а чем Вас эта Ваша тема не устроила, что Вы новую создаете?
0
26 / 1 / 1
Регистрация: 18.03.2018
Сообщений: 278
24.05.2018, 18:55  [ТС] 3
D1973, здесь удобнее всё выглядит (мне кажется), и здесь информация записывается сразу в массив.
0
3584 / 2194 / 692
Регистрация: 29.05.2013
Сообщений: 9,366
25.05.2018, 08:09 4
Ваша задача является задачей комбинаторики. Если модератор не удалит, то по этой ссылке[ссылка удалена. п. 5.8 Правил форума] есть неплохая темка с примерами на дельфи.
0
26 / 1 / 1
Регистрация: 18.03.2018
Сообщений: 278
25.05.2018, 19:47  [ТС] 5
Пытливый, блин, удалена. А можно в лс?
0
26 / 1 / 1
Регистрация: 18.03.2018
Сообщений: 278
27.05.2018, 17:26  [ТС] 6
D1973, Можете подсказать? Я в общем решил попробовать оформить 7 комбобоксов с 15ю определенными товарами,и присвоил каждому из них через case свою переменную, т.е теперь при заполнении стринггрида в каждой ячейке как бы своя переменная. Можно ли как-нибудь теперь проверять комбинации переменных? например что-то типа такого:
Миниатюры
Комбинации покупок  
0
27.05.2018, 17:26
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
27.05.2018, 17:26
Помогаю со студенческими работами здесь

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

Нахождение комбинации
Здравствуйте! Такая вот проблема у меня, дано несколько чисел, допустим 1,2,4,7,11,13 (всего n...

Назначение комбинации клавиш
Как вставить комбинацию клавиш Ctrl+S? Ниже пример: procedure TForm1.FormKeyDown(Sender: TObject;...

Все возможные комбинации
мм подскажите как сделать программу чтобы она перебирала все возможные варианты введенных цифр или...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru