Программа для подсчета выручки казино
По нажатию на кнопку «Dealers» появляется такая же таблица, но с номерами дилеров которые вводятся по порядку в зависимости от того, как были выбраны в начале смены. По ходу всего рабочего дня заполняются обе таблицы после полного заполнения нажимается кнопка «Total», при нажатии рассчитывается результат каждого дилера, записывается в файл с его фамилией и расширением «.rez». Общий итог дня… Читать ещё >
Программа для подсчета выручки казино (реферат, курсовая, диплом, контрольная)
Отчет о производственной практике
Задание на практику
Производственная практика студентов по специальности «Программное обеспечение вычислительной техники и автоматизированных систем» является неотъемлемой частью учебно-воспитательного процесса и имеет целью приобретение студентами практических навыков и умений производственной деятельности на предприятиях, в учреждениях и организациях, на основе применения теоретических знаний, полученных бизнес-колледже. Производственная практика завершает 2_й курс обучения студентов.
Объектами профессиональной деятельности техника по специальности «Программное обеспечение вычислительной техники и автоматизированных систем» являются информационные системы и сети, а также программное обеспечение и сопровождение.
В процессе производственной (профессиональной) практики техник информационных систем должен закрепить и углубить знания, полученные в процессе обучения, приобрести умения и навыки работы по всем видам профессиональной деятельности. Должен закрепить навыки и овладеть умениями: адаптации программного продукта к конкретной системе автоматизированной обработки информации, работы в заданном операционном и / или телекоммуникационном окружении, практических средств конкретных технических средств информатизации.
Необходимо сделать программу для старших менеджеров казино «Тамбовский Волк», рассчитывающую результаты всех игровых столов за рабочий день, независимо от количества клиентов и количества дилеров. Программа должна рассчитывать полученные результаты и сохранять их в отдельные файлы, которые легко можно будет распечатывать через принтер. Результаты каждого дилера должны сохраняться отдельно, для расчета заработной платы, и премий за крупные выигрыши. Необходимо, чтобы через программу можно было, как добавить нового дилера (при подачи заявления на работу), так и удалить уже имеющегося (при увольнении), по возможности желательно учесть то, что при восстановлении старого дилера, его результаты и категория не должны быть утеряны.
Описание деятельности предприятия
В 1994;ом году было принято решение построить (арендовать) помещение для нового развлекательного центра г. Тамбова. Появилось казино «Тамбовский Волк» в 1999 году Директором данного заведения является Сидоров В. В. Через пол года открылось казино «Атлантида». В обоих центрах находились: казино, ресторан и танцпол. В каждом казино находился дополнительный бар. Остановимся более подробно на казино «Тамбовский Волк». Данное заведение сразу после открытия составило конкуренцию остальным игорным домам г. Тамбова и области за счет отличного обслуживания клиентов и разновидности предлагаемых азартных игр. Казино предлагает своим клиентам 7 видов покера (пяти карточный с обменом Oasis Poker, шести карточный Oasis Poker, русский покер, техасский покер, семи карточный Oasis Poker, и два Oasis покера для дорогих столов), Blackjack и Американскую рулетку. На данный момент казино «Тамбовский Волк» имеет большое количество постоянных клиентов, несмотря на открытие нового казино.
Описание индивидуальной работы
Моя программа написана специально для казино «Тамбовский волк» и предназначена для постоянного расчета расчёта денежных средств на игровых столах.
Принцип работы программы:
В меню new/del Dealer вводятся данные дилеров (фамилия и имя) после чего они вводятся в общий список дилеров. Здесь же вы нашли данный help_файл. Меню exit — есть ни что иное как выход из программы. В ComboBox’e выбираются дилера, пришедшие на работу, они автоматически попадают в список и по окончании рабочего дня их результаты будут сохранены в файле (С:rez…).
Посмотреть список дилеров можно нажатием на кнопку Checkbox «View dealer’s list». В начале рабочего дня запускается программа, по нажатию на кнопку «Money» появляется таблица для ввода данных (денежных средств) с расчетом на каждые 20 минут.
По нажатию на кнопку «Dealers» появляется такая же таблица, но с номерами дилеров которые вводятся по порядку в зависимости от того, как были выбраны в начале смены. По ходу всего рабочего дня заполняются обе таблицы после полного заполнения нажимается кнопка «Total», при нажатии рассчитывается результат каждого дилера, записывается в файл с его фамилией и расширением «.rez». Общий итог дня записывается в ту же папку, но в файл без названия так же с расширением". rez".
Приложение 1
Программа использует два юнита (fil и Unit2) первый — главный, второй используется только при добавлении нового дилера или при его увольнении Код программы и интерфейс программы:
unit fil;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, Grids, XPMan, ComCtrls, Menus;
type
TForm1 = class (TForm)
BitBtn1: TBitBtn;
StringGrid1: TStringGrid;
Button2: TButton;
StringGrid2: TStringGrid;
StringGrid3: TStringGrid;
ComboBox3: TComboBox;
CheckBox1: TCheckBox;
Button4: TButton;
Button3: TButton;
MainMenu1: TMainMenu;
menu1: TMenuItem;
newDealer1: TMenuItem;
eXIt1: TMenuItem;
ExitProgramm1: TMenuItem;
Memo1: TMemo;
Button1: TButton;
Help1: TMenuItem;
procedure BitBtn1Click (Sender: TObject);
procedure Button2Click (Sender: TObject);
procedure Button4Click (Sender: TObject);
procedure CheckBox1Click (Sender: TObject);
procedure ComboBox3Click (Sender: TObject);
procedure FormCreate (Sender: TObject);
procedure Button3Click (Sender: TObject);
procedure ExitProgramm1Click (Sender: TObject);
procedure newDealer1Click (Sender: TObject);
procedure FormClose (Sender: TObject; var Action: TCloseAction);
procedure FormClick (Sender: TObject);
procedure Help1Click (Sender: TObject);
procedure Memo1Click (Sender: TObject);
procedure Button1Click (Sender: TObject);
procedure FormDblClick (Sender: TObject);
private
{Private declarations}
public
{Public declarations}
end;
var
Form1: TForm1;
implementation
uses Math, Unit2;
{$R *.dfm}
Var
*здесь вводится глобальная переменная для хранения количества дилеров на данный день
z: integer=1;
procedure TForm1. BitBtn1Click (Sender: TObject);
begin
StringGrid1. Visible:= true;
StringGrid2. Visible:= false;
end;
procedure TForm1. Button2Click (Sender: TObject);
begin
StringGrid1. Visible:= False;
StringGrid2. Visible:= True;
end;
procedure TForm1. FormClick (Sender: TObject);
begin
if StringGrid2. Cells [5,5]='fil' then Button4. Visible:= true;
end;
end.
procedure TForm1. Button4Click (Sender: TObject);
*делаем проверку программы, данное событие возможно только в том случае, если в stringGrid2 в ячейке [5,5] написано слово «fil» и «клик» по форме (появляется кнопка «GO!!!»)
*при нажатии на которую «рандомно» заполняются поля «Dealers» и «Money»:
var
h, l, p, f, x, a: integer;
begin
p:= 1;
Randomize;
for f:= 1 to 37
do begin
for x:= 1 to 5 do begin
a:= (Random ((49)+1)*100+Random (200)*50);
StringGrid1. Cells [f, x]: = IntToStr (a);
end;
end;
for l:= 1 to 37 do begin
for h:= 1 to 5 do begin
StringGrid2. Cells [l, h]: = IntToStr (p);
inc (p);
if p > z1 then p:= 1;
end;
end;
end;
procedure TForm1. CheckBox1Click (Sender: TObject);
begin
*данная процедура используется для показа (скрытия) листа дилеров и их результатов
if CheckBox1. Checked
then StringGrid3. Visible:= true
else StringGrid3. Visible:= false
end;
Procedure TForm1. ComboBox3Click (Sender: TObject);
Begin
StringGrid3. Cells [0, z]: = ComboBox3. Text;
Inc (z);
End;
Procedure TForm1. FormCreate (Sender: TObject);
Var
o, x, i, q: integer;
Begin
Button4. Visible:= false;
*здесь заполняем строки ComboBox загрузкой из файла «File.txt», расположенного в корне диска С
Form1. ComboBox3. Items. LoadFromFile ('c:file.txt');
i:= 0;
for q:=1 to 40
do begin
*озаглавливаем String Grid 1, 2, 3.
StringGrid3. Cells [1, q]: = '0';
end;
StringGrid3. Cells [1,0]: = 'total';
StringGrid2. Cells [0,0]: = 'Dealers';
StringGrid1. Cells [0,0]: = 'money';
StringGrid2. ColCount:= 38;
StringGrid2. Cells [0,1]: = 'AR';
StringGrid2. Cells [0,2]: = 'BJ';
StringGrid2. Cells [0,3]: = 'OP1';
StringGrid2. Cells [0,4]: = 'OP2';
StringGrid2. Cells [0,5]: = 'OP3';
StringGrid1. ColCount:=38;
StringGrid1. Cells [0,1]: = 'AR';
StringGrid1. Cells [0,2]: = 'BJ';
StringGrid1. Cells [0,3]: = 'OP1';
StringGrid1. Cells [0,4]: = 'OP2';
StringGrid1. Cells [0,5]: = 'OP3';
for o:= 8 to 20 do begin
for x:= 0 to 2 do begin
Inc (i);
StringGrid1. Cells [i, 0]: = IntToStr (o) + ':' + IntToStr (x*2) + '0';
StringGrid2. Cells [i, 0]: = IntToStr (o) + ':' + IntToStr (x*2) + '0';
end;
end;
end;
procedure TForm1. Button3Click (Sender: TObject);
var
dl: integer;
st, y: string;
fl: TextFile;
sav: TextFile;
q, w, c, s, f, d, r, t, l, p: integer;
begin
w:= 0;
for c:= 1 to 36
do begin
for s:= 1 to 5
do begin
*в переменную «d» берём № дилера
d:= StrToInt (StringGrid2. Cells [c, s]);
*в переменную «f» берём сколько денег было до него
f:= StrToInt (StringGrid1. Cells [c, s]);
*в переменную «t» берём сколько денег осталось после него
t:= StrToInt (StringGrid1. Cells [c+1, s]);
*в находим разницу, и получаем сумму работы дилера
r:= t-f;
*в переменную «l» берём сколько денег было в ячейке StringGrid3 данного дилера до данного момента времени
l:= StrToInt (StringGrid3. Cells [1, d]);
*здесь просто перезаписываем результат
p:= r+l;
*…и перезаписываем этот результат в ту же ячейку
StringGrid3. Cells [1, d]: = IntToStr (p);
Button3. Enabled:= false;
Button4. Enabled:= false;
end;
end;
for q:= 1 to 40 do begin
w:= w + StrToInt (StringGrid3. Cells [1, q]);
end;
*сохраняем полученные результаты каждого дилера в отдельном файле в каталоге «Rez» на диске С:
For dl:= 1 to z do begin
st:= StringGrid3. Cells [0, dl];
y:= StringGrid3. Cells [1, dl];
assignfile (fl, 'c:rez' + st +'.txt');
if not fileexists ('c:rez' + st +'.txt') then
rewrite (fl)
else append (fl);
writeln (fl, y);
closefile (fl);
end;
assignfile (sav, 'c:rez.txt');
if not fileexists ('c:rez.txt') then
rewrite (sav)
else append (sav);
writeln (sav, IntToStr (w));
closefile (sav);
*после расчета выводим сообщение о результате дня
ShowMessage ('Результат дня: ' + IntToStr (w));
end;
*процедура выхода из программы
procedure TForm1. ExitProgramm1Click (Sender: TObject);
begin
ShowMessage ('Good Luck!!!');
Hide;
Form1. Close;
Form2. Close;
end;
*процедура создания нового дилера, использующая Unit 2
procedure TForm1. newDealer1Click (Sender: TObject);
begin
Form1. Visible:= False;
form2. Visible:= true;
Form2. ComboBox1. Items. LoadFromFile ('c:file.txt');
end;
procedure TForm1. FormClose (Sender: TObject; var Action: TCloseAction);
begin
ShowMessage ('Good Luck!!!');
form1. Hide;
end;
*при закрытии программы выводится сообщение:
procedure TForm1. Memo1Click (Sender: TObject);
begin
Button1. Visible:= true;
end;
procedure TForm1. Button1Click (Sender: TObject);
begin
Memo1. Visible:= false;
Button1. Visible:= false;
end;
procedure TForm1. FormDblClick (Sender: TObject);
begin
Button3. Visible:= false;
end;
unit Unit2;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, StdCtrls, CheckLst;
type
TForm2 = class (TForm)
Button1: TButton;
Button2: TButton;
Button3: TButton;
ComboBox1: TComboBox;
Edit1: TEdit;
Edit2: TEdit;
Label1: TLabel;
Label2: TLabel;
procedure Button2Click (Sender: TObject);
procedure FormHide (Sender: TObject);
procedure FormClose (Sender: TObject; var Action: TCloseAction);
procedure Button3Click (Sender: TObject);
procedure Button1Click (Sender: TObject);
private
{Private declarations}
public
{Public declarations}
end;
var
Form2: TForm2;
implementation
uses fil, Math;
{$R *.dfm}
*процедура создания нового дилера
procedure TForm2. Button2Click (Sender: TObject);
var
q: string;
w: TextFile;
begin
q:= Edit1. Text + ' ' + Edit2. Text;
Form2. ComboBox1. Items. Add (q);
Form2. Close;
Form1. ComboBox3. Items. Add (q);
AssignFile (w, 'c:file.txt');
If not FileExists ('c:file.txt')
Then Rewrite (w)
else Append (w);
Writeln (w, Edit1. Text + ' ' + Edit2. Text);
CloseFile (w);
end;
procedure TForm2. FormHide (Sender: TObject);
begin
Form1. Visible:= true;
end;
procedure TForm2. FormClose (Sender: TObject; var Action: TCloseAction);
begin
Form1. Visible:= true;
end;
procedure TForm2. Button3Click (Sender: TObject);
begin
Hide;
end;
procedure TForm2. Button1Click (Sender: TObject);
*процедура удаления дилера
begin
ComboBox1. Items. Delete (ComboBox1. ItemIndex);
ComboBox1. Items. SaveToFile ('c:file.txt');
form1. ComboBox3. Items. LoadFromFile ('c:file.txt');
ComboBox1. Items. LoadFromFile ('c:file.txt');
hide;
end;
end.