Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
курс пр.doc
Скачиваний:
5
Добавлен:
26.09.2019
Размер:
260.1 Кб
Скачать

2. Разработка программы в среде Delphi (программа формирования профильных классов по направлениям:гуманитарный,физико-математический,химико-биологический)

    1. Постановка задачи

В курсовом проекте необходимо разработать приложение, позволяющее сформировать для учащихся 9-х классов, на основании четвертных оценок профильные классы по направлениям:

  • Гуманитарный (русский язык, литература, история)

  • Физико-математический (физика, алгебра, геометрия)

  • Химико-биологический (химия, биология, анатомия).

Для разработки приложения была использована база данных ученики.mdb, созданная в MS Access 2003. Данные выбираются из таблицы ,имеющую следующею структуру:

Поле

Тип

Поле

Тип

Фамилия

Текстовый

Физика

Числовой

Имя

Текстовый

Алгебра

Числовой

Отчество

Текстовый

Геометрия

Числовой

Русский язык

Числовой

Химия

Числовой

История

Числовой

Биология

Числовой

Литература

Числовой

Анатомия

Числовой

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

    1. Блок-схема задачи

ADOConnection1

ADODataSet1

DataSource1

procedure Button1Click

ADODataSet1.CLOSE

2:ADODataSet1.CommandText:='select Фамилия , анатомия, биология, химия from студенты where (анатомия=5 )and(биология=5)and(химия=5 )and(алгебра<>3)and(геометрия<>3)and(физика<>3)and(русскийЯзык<>3)and(литература)and(история<>3) order by [фамилия] ';

3: ADODataSet1.CommandText:='select Фамилия , физика, алгебра, геометрия,химия,анатомия,биология,русскийЯзык,литература,история from студенты where(физика+алгебра+геометрия<15) or(литература+история+русскийЯзык<15) or(химия+биология+анатомия<15) order by [фамилия]';

2.3 Программный код

unit Unit1;

interface

uses

Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,

Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.Grids, Vcl.DBGrids, Vcl.ComCtrls,

Data.DB, Data.Win.ADODB, Vcl.StdCtrls;

type

TForm1 = class(TForm)

ComboBox1: TComboBox;

Button1: TButton;

DataSource1: TDataSource;

ADOConnection1: TADOConnection;

ADODataSet1: TADODataSet;

PageControl1: TPageControl;

DBGrid1: TDBGrid;

procedure Button1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);

begin

begin

ADODataSet1.CLOSE;

case ComboBox1.ItemIndex of

0: ADODataSet1.CommandText:='select Фамилия, русскийЯзык, литература, история from студенты where (русскийЯзык=5 )and(литература=5 )and(история=5)and (химия<>3)and(биология<>3)and(анатомия<>3)and(алгебра<>3)and(геометрия<>3)and(физика<>3) order by [фамилия]';

1:ADODataSet1.CommandText:='select Фамилия , физика, алгебра, геометрия from студенты where (физика=5) and (алгебра=5) and (геометрия=5)and(химия<>3)and(биология<>3)and(анатомия<>3)and(русскийЯзык<>3)and(литература)and(история<>3) order by [фамилия] ' ;

2:ADODataSet1.CommandText:='select Фамилия , анатомия, биология, химия from студенты where (анатомия=5 )and(биология=5)and(химия=5 )and(алгебра<>3)and(геометрия<>3)and(физика<>3)and(русскийЯзык<>3)and(литература)and(история<>3) order by [фамилия] ';

3: ADODataSet1.CommandText:='select Фамилия , физика, алгебра, геометрия,химия,анатомия,биология,русскийЯзык,литература,история from студенты where(физика+алгебра+геометрия<15) or(литература+история+русскийЯзык<15) or(химия+биология+анатомия<15) order by [фамилия]';

end;

ADODataSet1.Open ;

end;

end;

end.