Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программирование и базы данных (http://forum.oszone.net/forumdisplay.php?f=21)
-   -   Delphi | код кнопки для вычисления по заданию.. (http://forum.oszone.net/showthread.php?t=220110)

cyber922 10-11-2011 10:54 1792133

Delphi | код кнопки для вычисления по заданию..
 
Есть такие задачи:
Есть код на одну из них



Задача 1
Разработать проект заполнения текстовой таблицы StringGrid данными, полученными из всплывающих списков ComboBox: номер маршрута, название маршрута, ФИО водителя, число км. пути, марка автомобиля.
Определить ФИО водителя, имеющего самый длинный путь
Задача 2
Разработать проект заполнения текстовой таблицы данными, полученными из всплывающих списков: ФИО автора, название книги, число страниц, тираж, название издательства.
Определить книги с максимальным числом страниц.
Задача 3
Разработать проект заполнения текстовой таблицы данными, полученными из всплывающих списков: ФИО режиссера, название фильма, год выпуска, метраж киноленты, название студии, стоимость проекта. Подсчитать общий метраж кинолент, выпущенных студией «Мосфильм» в 2005 г.
Задача 4
Разработать проект заполнения текстовой таблицы данными, полученными из всплывающих списков: Название газеты или журнала, подписной индекс, стоимость 1 экземпляра, подписная цена, тираж.
Подсчитать, сколько изданий имеют минимальную стоимость
Задание 5
Разработать проект заполнения текстовой таблицы данными, полученными из всплывающих списков: Название предприятия, ФИО директора, вид продукции, стоимость 1 единицы продукции, количество выпускаемой продукции.
Определить, на каком предприятии выпущено больше всего продукции.
Задача 6
Разработать проект заполнения текстовой таблицы данными, полученными из всплывающих списков: Название школы, ФИО директора школы, число учителей, число учеников, соотношение числа учеников к числу учителей.
Определить, в какой школе приходится больше учеников на одного учителя.
Примечание. Соотношение числа учеников к числу учителей вводить не из компонента ComboBox, а вычислять и выводить в таблицу в каждой строке.
Задача 7
Разработать проект заполнения текстовой таблицы данными, полученными из всплывающих списков: Название магазина, ФИО директора, число отделов, число продавцов, ежедневный поток покупателей.
Определить магазин (название) с минимальным потоком покупателей.
Код:

unit Unit1; interface  uses  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,  Dialogs, Grids, StdCtrls, Buttons, ExtCtrls;  type  TForm1 = class(TForm)    StringGrid1: TStringGrid;    BitBtn1: TBitBtn;    ComboBox1: TComboBox;    ComboBox2: TComboBox;    ComboBox3: TComboBox;    ComboBox4: TComboBox;    Button1: TButton;    ComboBox5: TComboBox;    ComboBox6: TComboBox;    Panel1: TPanel;    Edit2: TEdit;    Label1: TLabel;    Button2: TButton;    Edit1: TEdit;    Label2: TLabel;    Label3: TLabel;    Edit3: TEdit;    Button3: TButton;    Button4: TButton;    Button5: TButton;    procedure FormCreate(Sender: TObject);    procedure BitBtn1Click(Sender: TObject);    procedure Button1Click(Sender: TObject);    procedure Button2Click(Sender: TObject);    procedure Button3Click(Sender: TObject);    procedure Button4Click(Sender: TObject);    procedure Button5Click(Sender: TObject);      private    { Private declarations }  public    { Public declarations }  end;  type  zap=record  fio : string[10];  pol : string[3];  dol  : string[10];  vozr : integer;  st  : integer;  okl  : integer  end; var  Form1: TForm1;  Z:zap; F:file of zap;    k:integer; implementation  {$R *.dfm}  procedure TForm1.FormCreate(Sender: TObject); begin  stringgrid1.DefaultColWidth:=75;  stringgrid1.ColCount:=6;  stringgrid1.RowCount:=6;  stringgrid1.Cells[0,0]:='ФИО ' +#13+#10 +'сотрудника'; stringgrid1.Cells[1,0]:='ПОЛ'; stringgrid1.Cells[2,0]:='ВОЗРАСТ'; stringgrid1.Cells[3,0]:='СТАЖ'; stringgrid1.Cells[4,0]:='ОКЛАД'; stringgrid1.Cells[5,0]:='ДОЛЖНОСТЬ';  k:=1; end;  procedure TForm1.BitBtn1Click(Sender: TObject); begin Close; end;  procedure TForm1.Button1Click(Sender: TObject); begin  StringGrid1.Cells[0,k]:= ComboBox1.Text; StringGrid1.Cells[1,k]:= ComboBox2.Text; StringGrid1.Cells[2,k]:= ComboBox3.Text; StringGrid1.Cells[3,k]:= ComboBox4.Text; StringGrid1.Cells[4,k]:= ComboBox5.Text; StringGrid1.Cells[5,k]:= ComboBox6.Text; k:=k+1; Edit1.Text:=IntToStr(k); end;  procedure TForm1.Button2Click(Sender: TObject); Var i,m:integer; begin  m:=0; for i:=1 to  k-1 do if  (strtoint(stringgrid1.Cells[3,i]) >20) and      (stringgrid1.Cells[1,i]='муж') then m:=m+1;  Edit2.Text:=inttostr(m); end;  procedure TForm1.Button3Click(Sender: TObject); var i:integer; begin AssignFile(F,Edit3.Text); rewrite(F); for i:=1 to k-1 do with Z do begin  fio  := stringgrid1.Cells[0,i];  pol  := stringgrid1.Cells[1,i];  vozr := strtoint(stringgrid1.Cells[2,i]);  st  := strtoint(stringgrid1.Cells[3,i]);  okl  := strtoint(stringgrid1.Cells[4,i]);  dol  := stringgrid1.Cells[5,i];  write(F,Z);  end;  closefile(F); end;  procedure TForm1.Button4Click(Sender: TObject); var i:integer; begin  for i:=1 to strToInt(Edit1.Text)-1 do  begin  stringgrid1.Cells[0,i]:=' ';  stringgrid1.Cells[1,i]:=' ';  stringgrid1.Cells[2,i]:=' ';  stringgrid1.Cells[3,i]:=' ';  stringgrid1.Cells[4,i]:=' ';  stringgrid1.Cells[5,i]:=' ';  end; end;  procedure TForm1.Button5Click(Sender: TObject); begin AssignFile(F,Edit3.Text); reset(F);  K:=1; while not eof(F) do begin  read(F,z);  stringgrid1.Cells[0,k]:=z.fio;  stringgrid1.Cells[1,k]:=z.pol;  stringgrid1.Cells[2,k]:=inttostr(z.vozr);  stringgrid1.Cells[3,k]:=inttostr(z.st);  stringgrid1.Cells[4,k]:=inttostr(z.okl);  stringgrid1.Cells[5,k]:=z.dol;  K:=K+1;  end;  closefile(F); end; end.



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

Project1 10-11-2011 11:51 1792162

сколько? и где "Задача 4"? и кста, писать программы в несколько строк удобнее)

cyber922 10-11-2011 13:17 1792223

Цитата:

Цитата Project1
сколько? и где "Задача 4"? и кста, писать программы в несколько строк удобнее) »

Задачи 4 нет. Меня отвлекли и я сбился со cчёта. sorry))


Время: 21:11.

Время: 21:11.
© OSzone.net 2001-