Электронный учебник в Delphi

Автор: Пользователь скрыл имя, 05 Февраля 2013 в 20:13, курсовая работа

Краткое описание

Целью данной курсовой работы является создание программного продукта «электронного учебника». Эту программу я смог составить после того, как просмотрел несколько различных примеров создания программы-теста и изучил их основные принципы. Тест-программа как и электронный учебник предназначены для проверки знаний по различным темам, в зависимости от того какие вопросы будут находится в базе данных. Данная програма была разработана в среде программирование Delphi7. Имеющая довольно простой интерфейс, позволяющий свободно работать учащимся с лекционным материалом, и проходить соответствующие тесты для проверки полученных знаний.

Файлы: 1 файл

Курсовая работа(1).docx

— 634.84 Кб (Скачать)

При написании курсового проекта  «Электронный учебник» мною были приобретены  навыки:

- Программирование  на языке Pascal в среде Delphi7;

- Работа  с базой данных;

- Работа  с изображением и др. файлами  в среде Delphi7.

 

При написании курсового проекта  были собранны материалы по предмету «Моделирование экономических и  производственных процессов» и прикреплены  с помощью специальных команд к курсовому проекту.

Данный проект является  электронным  пособием для учащихся специальности  «Вычислительная техника и программное  обеспечение» и позволяет тестировать  знания и навыки учащихся колледжа.

Данная програма была разработана в среде программирование Delphi7. Имеющая довольно простой интерфейс, позволяющий свободно работать учащимся с лекционным материалом, и проходить соответствующие тесты для проверки полученных знаний.

Моё ПО может использоваться преподавателями  в целях улучшения и проверки качества знаний студентов. Или же использоваться самими студентами в качестве материала  для самостоятельных работ.

 

 

 

 

 

 

 

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

 

1. Чеснокова О.В., Delphi 2007. Алгоритмы и программы. Самоучитель. – М.: НТ Пресс, 2008 – 368 с.

2. Алексеев Е.Р., Чеснокова О.В., Турбо Паскаль 7.0, - М.: НТ Пресс, 2006 – 320 с.

3. Бобровский С., Delphi 5: учебный курс, - СПб: Питер, 2001 – 640 с.

4. Карчевская М.П., Рамбургер О.Л., Тархов С.В., Хамзина Е.А., Разработка приложений в среде Borland Delphi: лабораторный практикум по дисциплине "Информатика",- Уфа: УГАТУ, 2005.

5. Интернет-издание, 32 урока: Borland Delphi или о том, что лучше один раз увидеть, чем сто раз услышать.

6. Электронная книга. Архангельский А.Я., 100 компонентов общего назначения библиотеки Delphi 5

 

 

 

 

 

 

 

 

 

ПРИЛОЖЕНИЕ А

Техническое задание

Введение

Данная программа разработана  для обучения учащихся дисциплине «Комплекс аппаратных средств, сетей и ПВМ». Позволяет ознакомиться с лекционным материалом, а так же проверить пройденный материал путем тестирования. Программа может хранить в себе результаты тестирования учащихся. Тестовый материал вводится преподавателем в самой программе.

    Основание для разработки

Программа разрабатывается на основе государственного общеобразовательного стандарта для специальности 1304000 – Программное обеспечение вычислительной техники и автоматизированных систем, CD-002 – «Основы алгоритмизации и программирования», в соответствии с темой утвержденной на заседании кафедры специальных дисциплин 01.09.11, протокол № 1.

    Назначение разработки

Основным назначением программы является облегчить процесс обучения учащихся дисциплине «Комплекс аппаратных средств, сетей и ПВМ»…

Требования  к программе или к программному изделию

Требования  к функциональным характеристикам

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

- Чтение теоретических сведений  по предмету;

- Наличие тестирующей программы;

- Хранение данных об учащихся;

- Создание и редактирование  тестового файла. 

- Хранение результатов тестирования;

- Содержание справочного файла;

Требования к надежности:

- предусмотреть контроль  вводимой информации;

- предусмотреть блокировку  некорректных действий пользователя при работе с системой.                    

Требования к составу и параметрам технических средств:

- система должна работать  на IBM совместимых персональных компьютерах;

 - минимальная конфигурация:

CPU - Pentium II или аналогичный ему AMD;

RAM - 64 Мбайт (рекомендуется 128 Мбайт);

Video - SVGA или выше;

HDD - 10 Мбайт;

Другое аппаратное обеспечение - CD-ROM, мышь.

 Требования к информационной и программной совместимости:

Операционная система - Microsoft Windows XP, Windows 2000, Windows 98

Требования к программной документации:

- разрабатываемые программные модули должны быть самодокументированы, т.е. тексты программ должны содержать все необходимые комментарии.

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

- в состав сопровождающей документации  должны входить: 

1) Пояснительная записка на 25-30 листа,  содержащая описание разработки. 2) Руководство пользователя.

                     

 

ПРИЛОЖЕНИЕ  Б

Руководство пользователя

При открытии файла с  расширением .exe , вам будет представлено меню.

Меню  состоит из 3 пунктов.

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

Второй раздел  меню – тестирующая  программа которая содержит регистрацию, редактор тестов и саму тестирующую  программу. Тестирование проводится по вопросам составленным преподавателем. Для начала тестирования необходимо произвести регистрацию, после чего нажать кнопку «Начать». Выбор ответа осуществляется путем указания буквы  правильного ответа. По окончанию  тестирования результат будет записан  в базу данных в поле «Результат».

Третий пункт меню - выход из программы.

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

 

 

 

 

 

 

 

 

 

ПРИЛОЖЕНИЕ В

 

   Листинг

 

unit UnitStart;

 

interface

 

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

  Dialogs, jpeg, ExtCtrls;

 

type

  TFormStart = class(TForm)

    Image1: TImage;

    Timer1: TTimer;

    procedure Image1Click(Sender: TObject);

    procedure Timer1Timer(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end;

 

var

  FormStart: TFormStart;

 

implementation

 

uses Unit1;

 

{$R *.dfm}

 

procedure TFormStart.Image1Click(Sender: TObject);

begin

FormStart.hide;

form1.show;

Timer1.Enabled:=false;

end;

 

procedure TFormStart.Timer1Timer(Sender: TObject);

begin

formstart.Hide;

form1.Show;

Timer1.enabled:=false;

end;

 

end.

 

unit Unit1;

 

interface

 

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

  Dialogs, jpeg, ExtCtrls, StdCtrls, Buttons;

 

type

  TForm1 = class(TForm)

    Image1: TImage;

    Label1: TLabel;

    Label2: TLabel;

    Label3: TLabel;

    Image2: TImage;

    Image3: TImage;

    Image4: TImage;

    procedure BitBtn1Click(Sender: TObject);

    procedure Label1Click(Sender: TObject);

    procedure Label2Click(Sender: TObject);

    procedure Label3Click(Sender: TObject);

    procedure FormKeyDown(Sender: TObject; var Key: Word;

      Shift: TShiftState);

    procedure Label3MouseEnter(Sender: TObject);

    procedure Label3MouseLeave(Sender: TObject);

    procedure Label2MouseEnter(Sender: TObject);

    procedure Label2MouseLeave(Sender: TObject);

    procedure Label1MouseEnter(Sender: TObject);

    procedure Label1MouseLeave(Sender: TObject);

    procedure Image1Click(Sender: TObject);

 

  private

    { Private declarations }

  public

    { Public declarations }

  end;

 

var

  Form1: TForm1;

 

implementation

 

uses Unit2, Unit3, Unit4, Unit7, Unit8, UnitRegistr, UnitStart, MainForm,

  NameEntr;

 

{$R *.dfm}

procedure TForm1.Label2MouseEnter(Sender: TObject);

begin

image4.Show;

label2.Font.Color:=clred;

end;

 

procedure TForm1.Label2MouseLeave(Sender: TObject);

begin

image4.Hide;

label2.Font.Color:=clwhite;

end;

 

 

procedure TForm1.Label1MouseEnter(Sender: TObject);

begin

image3.Show;

label1.Font.Color:=clblack;

end;

 

procedure TForm1.Label1MouseLeave(Sender: TObject);

begin

image3.Hide;

label1.Font.Color:=clwhite;

end;

 

procedure TForm1.Label3MouseLeave(Sender: TObject);

begin

image2.Hide;

label3.Font.Color:=clwhite;

end;

 

procedure TForm1.Label3MouseEnter(Sender: TObject);

begin

image2.show;

label3.Font.Color:=clblack;

end;

 

 

procedure TForm1.BitBtn1Click(Sender: TObject);

begin

form1.Close;

end;

 

procedure TForm1.Label1Click(Sender: TObject);

begin

form1.Hide;

form2.show;

form2.Image1.Show;

form2.Image2.Hide;

form2.RichEdit1.Hide;

end;

 

 

procedure TForm1.Label2Click(Sender: TObject);

begin

formstart.close;

end;

 

procedure TForm1.Label3Click(Sender: TObject);

begin

form1.Hide;

FormOsnova.Show;

end;

 

procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;

  Shift: TShiftState);

begin

form7.Show;

end;

begin

if GetKeyState(VK_F1)<>0 then begin

     form7.Show;

 

end;

 

procedure TForm1.Image1Click(Sender: TObject);

begin

 

end;

 

end.

 

 

unit Unit2;

 

interface

 

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

  Dialogs, Menus, StdCtrls, ComCtrls, jpeg, ExtCtrls;

 

type

  TForm2 = class(TForm)

    MainMenu1: TMainMenu;

    N1: TMenuItem;

    N2: TMenuItem;

    N3: TMenuItem;

    N4: TMenuItem;

    N5: TMenuItem;

    OpenDialog1: TOpenDialog;

    Image1: TImage;

    Image2: TImage;

    RichEdit1: TMemo;

    procedure N2Click(Sender: TObject);

    procedure N3Click(Sender: TObject);

    procedure N6Click(Sender: TObject);

    procedure N5Click(Sender: TObject);

    procedure FormClose(Sender: TObject; var Action: TCloseAction);

    procedure FormCreate(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end;

 

var

  Form2: TForm2;

 

implementation

 

uses Unit6, Unit1, Unit7;

 

{$R *.dfm}

 

procedure TForm2.N2Click(Sender: TObject);

var fname:string;

begin

if opendialog1.Execute then

FName:=OpenDialog1.filename

else Exit;

richedit1.lines.loadFromFile(FName);

richedit1.Show;

image2.Show;

image1.Hide;

end;

 

procedure TForm2.N3Click(Sender: TObject);

begin

form2.Close;

form1.show;

end;

 

procedure TForm2.N6Click(Sender: TObject);

begin

form6.show;

end;

 

procedure TForm2.N5Click(Sender: TObject);

begin

form7.ShowModal;

end;

 

procedure TForm2.FormClose(Sender: TObject; var Action: TCloseAction);

begin

form1.Close;

form1.Show;

richedit1.Clear;

end;

 

procedure TForm2.FormCreate(Sender: TObject);

begin

 

end;

 

end.

 

 

unit Unit3;

 

interface

 

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

  Dialogs, Menus, StdCtrls;

 

type

  TForm3 = class(TForm)

    Memo1: TMemo;

    MainMenu1: TMainMenu;

    N1: TMenuItem;

    N2: TMenuItem;

    N3: TMenuItem;

    OpenDialog1: TOpenDialog;

    SaveDialog1: TSaveDialog;

    N4: TMenuItem;

    procedure N2Click(Sender: TObject);

    procedure N3Click(Sender: TObject);

    procedure N4Click(Sender: TObject);

    procedure FormClose(Sender: TObject; var Action: TCloseAction);

    procedure Memo1Change(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end;

 

var

  Form3: TForm3;

 

implementation

 

uses MainForm;

 

{$R *.dfm}

 

procedure TForm3.N2Click(Sender: TObject);

begin

OpenDialog1.Execute;

memo1.Lines.LoadFromFile(OpenDialog1.FileName);

end;

 

procedure TForm3.N3Click(Sender: TObject);

begin

SaveDialog1.execute;

memo1.lines.SaveToFile(SaveDialog1.FileName);

end;

 

procedure TForm3.N4Click(Sender: TObject);

begin

form3.Close;

formosnova.show;

end;

 

procedure TForm3.FormClose(Sender: TObject; var Action: TCloseAction);

begin

formosnova.Show;

end;

 

procedure TForm3.Memo1Change(Sender: TObject);

begin

 

end;

 

end.

 

 

unit Unit4;

 

interface

 

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

  Dialogs, jpeg, ExtCtrls, StdCtrls, Buttons;

 

type

  TForm4 = class(TForm)

    Image1: TImage;

    BitBtn1: TBitBtn;

    Memo1: TMemo;

    procedure BitBtn1Click(Sender: TObject);

    procedure Image1Click(Sender: TObject);

    procedure FormClose(Sender: TObject; var Action: TCloseAction);

  private

    { Private declarations }

  public

    { Public declarations }

  end;

 

var

  Form4: TForm4;

 

implementation

 

uses MainForm, Unit1, UnitStart;

 

{$R *.dfm}

 

procedure TForm4.BitBtn1Click(Sender: TObject);

begin

image1.Cursor:=crhandpoint;

form4.Close;

if form4.Font.Color=clred then

FormStart.Close;

end;

 

procedure TForm4.Image1Click(Sender: TObject);

var F: TextFile; S: String;

begin

image1.Cursor:=crdefault;

image1.ShowHint:=false;

memo1.Show;

memo1.Clear;

AssignFile(F,'C:\Users\Александр\Desktop\UnitStart\database.txt');

Reset(F);

while not EOF(F) do

begin

  ReadLn(F,S);

  Memo1.Lines.add(S)

end;

CloseFile(F);

end;

procedure TForm4.FormClose(Sender: TObject; var Action: TCloseAction);

begin

memo1.Clear;

memo1.Hide;

end;

 

end.

 

 

unit Unit7;

 

interface

 

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

  Dialogs, StdCtrls, ExtCtrls;

 

type

  TForm7 = class(TForm)

    Memo1: TMemo;

    Label1: TLabel;

    Label2: TLabel;

    Label3: TLabel;

    Image1: TImage;

    procedure f1(Sender: TObject; var Key: Char);

    procedure h(Sender: TObject; var Key: Word; Shift: TShiftState);

    procedure Label1Click(Sender: TObject);

    procedure Label2Click(Sender: TObject);

    procedure Label3Click(Sender: TObject);

    procedure FormClose(Sender: TObject; var Action: TCloseAction);

    procedure Image1Click(Sender: TObject);

    procedure FormCreate(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end;

 

var

  Form7: TForm7;

 

implementation

 

uses Unit2;

 

{$R *.dfm}

 

procedure TForm7.f1(Sender: TObject; var Key: Char);

begin

form7.Show;

end;

 

procedure TForm7.h(Sender: TObject; var Key: Word; Shift: TShiftState);

begin

form7.Show;

end;

 

procedure TForm7.Label1Click(Sender: TObject);

var F: TextFile; S: String;

begin

memo1.Clear;

AssignFile(F,'C:\Users\Александр\Desktop\UnitStart\spravka.menu.txt');

Reset(F);

while not EOF(F) do

begin

  ReadLn(F,S);

  Memo1.Lines.Add(S)

end;

CloseFile(F);

 

end;

procedure TForm7.Label2Click(Sender: TObject);

var F: TextFile; S: String;

begin

memo1.Clear;

AssignFile(F,'C:\Users\Александр\Desktop\UnitStart\spravka.libl.txt');

Reset(F);

while not EOF(F) do

begin

  ReadLn(F,S);

  Memo1.Lines.Add(S)

end;

CloseFile(F);

 

end;

procedure TForm7.Label3Click(Sender: TObject);

var F: TextFile; S: String;

begin

memo1.Clear;

AssignFile(F,'C:\Users\Александр\Desktop\UnitStart\spravka.test.txt');

Reset(F);

while not EOF(F) do

begin

  ReadLn(F,S);

  Memo1.Lines.Add(S)

end;

CloseFile(F);

 

end;

procedure TForm7.FormClose(Sender: TObject; var Action: TCloseAction);

begin

memo1.Clear;

end;

 

procedure TForm7.Image1Click(Sender: TObject);

begin

form7.Close;

end;

 

procedure TForm7.FormCreate(Sender: TObject);

begin

 

end;

 

end.

 

 

unit MainForm;

 

interface

 

uses   about,

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

  Dialogs, StdCtrls, Menus, NameEntr, jpeg, ExtCtrls;

const put_k_voprosam1='C:\Users\Александр\Desktop\UnitStart\voprosy1.db';

      put_k_voprosam2='C:\Users\Александр\Desktop\UnitStart\voprosy2.db';

      put_k_data_base='database';

      rasshirenie_file_data_base='.txt';

      voprosov_v_teste=5;

      max_variantov=4;

      max_otvetov=50;

      kluch='314159';

      max_voprosov=100;

      put_k_parolu='c:\windows\system32\OSPassword.db';

      strok_v_voprose=10;

      bukv_stroke_voprosa:integer=63;

type

 

  tstudents=record

             name,familiya,group,resultat:string;

 

            end;

  tvse_voprosy=record

               vopros:array[1..10] of string;

               otvety:array[1..max_otvetov] of string;

               end;

  TFormOsnova = class(TForm)

    nachalo: TButton;

    Cancel: TButton;

    otvet: TEdit;

    Labelotvet: TLabel;

    Otvetgotov: TButton;

    MainMenu1: TMainMenu;

    Labelvopros: TLabel;

    N1: TMenuItem;

Информация о работе Электронный учебник в Delphi