Реферат: Создание приложения "Клавиатурный тренажер"

Министерство образования и науки Украины

Луганский национальный университет имени Тараса Шевченко

Ровеньковский факультет

Кафедра информационных технологий и систем

Курсовой проект

на тему: «Создание приложения «Клавиатурный тренажер»

Выполнила:

студентка 3курса специальности «Информатика»

Дятлюк ЛарисаВитальевна.

Руководитель:

ЛогиновАнатолий Владимиравич

Ровеньки -2008


Содержание

Введение

1.     Инструкция пользователя

2.     Разработка программы: описание алгоритма решения задачи

3.     Описание программы

Вывод

Литература

Приложение А


Введение

В связи с бурнымразвитием e-mail, ICQ, у многих пользователей Интернет возникла потребностьбыстро вводить текст с клавиатуры. Это и послужило появлению разнообразныхпрограмм-тренажеров, для получения и усовершенствования навыка набора текста.

Клавиатурныйтренажер — это эффективная программа для освоения слепой машинописи.

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

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


1. Инструкция пользователя

/>

Рис. 1

Чтобы работать спрограммой необходимо нажать:

·    New test – для начала теста;

·    Stop – для окончания теста и выводаинформации о результате;

·    Exit – для выхода из тренажера.

Уровеньсложности изменяется автоматически, при правильном нажатии некоторогоколичества символов.

2. Разработкапрограммы: описание алгоритма решения задачи

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

Описание алгоритмарешения задачи procedureTForm1.Button1Click(Sender: TObject); procedure TForm1.Timer1Timer(Sender:TObject); procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char).


/>

/>

/>


3. Описание программы

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

Пока буквападает, пользователь должен успеть нажать ее на клавиатуре. Затем начинаетпадать новая буква. Так же сам тренажер имеет функцию «Уровня скорости» — этокогда после определенного количества правильных нажатий интервал таймераначинает уменьшаться, что заставляет новые буквы падать с ускорением.

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

Форма содержит:

1.     2-х Panel

§  Panel1 – для определения границ тренажера

§  Panel2 – для падающих букв

2.     3-х Buttons:

§  New test – для начала теста

§  Stop – для окончания теста и выводаинформации о результате

§  Exit – для выхода из тренажера

3.        Label – для показа уровня скорости

4.     StatusBar – для вывода результатов иреального времени (что бы долго не засиживались)


Выводы

В ходе работы былиполучены следующие результаты:

/>/>

Рис. 2

Форма выводит напанели статуса некоторую меняющуюся информацию (результаты и реальную дату ивремя). Несколькими способами используется компонент – Таймер:

С помощьютаймера:

·         Приводить в движение компоненты

·         Изменять скорость движения компонентов

·         Выводить реальную дату и время

Рекомендуется,каждый день минут по 10-30, а потом достаточно заниматься раза 2-4 в неделю по5-10 минут.


Литература

1.        Тейксера С. и Пачеко К. «Delphi 5. Руководстворазработчика, том 1. Основные методы и технологии программирования»: Пер. сангл.- М.: «Вильямс».-2001. — 832 с.

2.        Озеров В. Электронный учебник: «Советы по Delphi».Версия 1.1.7 от1.12.1999.

3.        Озеров В. Электронный учебник: «Советы по Delphi». Версия 1.4.6 от1.4.2001.

4.        Озеров В. Электронный учебник: «Советы по Delphi». Версия 1.0.8. от2.5.2000.

5.        Horrific aka Фленов М. «Библия для программиста в среде Delphi»// www.cydsoft.com/vr-online.

6.        Дарахвелидзе П.Г., Марков Е.П.: «Программирование в Delphi 7». — СПб.:«БХВ-Петербург», 2003. —784 с.

7.        Архангельский А.Я. Электронный учебник «100 компонентов общегоназначения библиотеки Delphi 5».2002.

8.        Тейлор Д., ПенманДж.- «Delphi 3: библиотека программиста».-СПб.:«Питер».-1998г. -568с.

9.        Фленов М. «Библия Delphi».-СПб.: «БХВ-Петербург».-2004.-880с.

10.      Фленов М. «Программирование в Delphi глазами хакера». — СПб.:«БХВ-Петербург».-2003.-368с.

11.      Шкрыль А. «Прикол в Delphi своими руками» //www.vr-online.ru.

12.      Озеров В. Электронный учебник: «Советы по Delphi». Версия 1.4.3 от1.1.2001.

13.      Елманова Н. Электронный учебник: «Советы пользователям Delphi иC++Builder».

14.      Орлик С Электронный учебник: «Секреты Delphi на примерах».

15.      Озеров В. Электронный учебник: «Советы по Delphi». Версия 1.3.1 от1.07.2000.

16.      Боровский А. «Программирование в Delphi 2005» ».-СПб.:«БХВ-Петербург».-2005. — 448с.

17.      Пражский С.М. «Delphi. Учимся на примерах».- К.:«МК-Пресс».-2005,-216с.

18.      Фаронов В.В. «Delphi 6. Учебныйкурс».-М.: Издатель Молгачёва С. В.,-2001.-672с.

19.      Коноплянка Р. «Создание оригинальных компонент в средеDelphi».-К.: НИПФ-«ДиаСофт Лтд.».-1996.-512с.

20.      Сухарёв М.В. «Основы Delphi. Профессиональный подход».-СПб.: «Наука иТехника».-2004,- 600с.

21.      Ревич Ю.В. «Нестандартные приёмы программирования на Delphi».-СПб.:«БХВ-Петербург».-2005. — 560с.


Приложение А

unit Lab10;

interface

uses

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

Dialogs, ExtCtrls, StdCtrls,ComCtrls;

type

TForm1 = class(TForm)

Timer1: TTimer;

Button1: TButton;

Panel1: TPanel;

Button2: TButton;

Panel2: TPanel;

Button3: TButton;

StatusBar1: TStatusBar;

Timer2: TTimer;

Label1: TLabel;

Label2: TLabel;

procedure Button2Click(Sender:TObject);

procedure Button1Click(Sender:TObject);

procedure Timer1Timer(Sender:TObject);

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

procedure Button3Click(Sender:TObject);

procedure Timer2Timer(Sender:TObject);

private

{Private declarations}

public

{Public declarations}

end;

var

Form1: TForm1;

count, uncount, x: integer;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender:TObject);

begin

Form1.Focused;

Panel2.Visible := true;

Panel2.Top := 0;

Randomize;

Panel2.Caption := Chr(Random(26)+97);

count := 0;

uncount := 0;

x := 1;

Label1.Caption := 'Level ' +IntToStr(x);

Timer1.Enabled := true;

end;

procedure TForm1.FormKeyPress(Sender:TObject; var Key: Char);

begin

if Panel2.Caption = key then

begin

Inc(count);

StatusBar1.Panels[1].Text :=IntToStr(count);

Panel2.Top := Panel1.Height;

end;

if count = x * 10 then

begin

Inc(x);

Label1.Caption := 'Level ' +IntToStr(x);

if Timer1.Interval <= 250 thenTimer1.Interval := Timer1.Interval — 25

else

if Timer1.Interval <= 100 thenTimer1.Interval := 100

else

Timer1.Interval := Timer1.Interval — 250;

end;

end;

procedure TForm1.Timer1Timer(Sender:TObject);

begin

Randomize;

if Panel1.Height > Panel2.Top then

Panel2.Top := Panel2.Top + 20

else

begin

Randomize;

Panel2.Caption := Chr(Random(26)+97);

Panel2.Left := Random(Panel1.Width — Panel2.Width);

Panel2.Top := 0;

 nc(uncount);

StatusBar1.Panels[3].Text :=IntToStr(uncount)

end;

end;

procedure TForm1.Button3Click(Sender:TObject);

begin

Timer1.Enabled := False;

Panel2.Visible := False;

ShowMessage(IntToStr(count) + ' timescorrectly!')

end;

procedure TForm1.Timer2Timer(Sender:TObject);

var DateTime: TDateTime;

begin

DateTime := TIME;

StatusBar1.Panels[4].Text :=DateToStr(Date) + ' ' + TimeToStr(DateTime);

end;

procedure TForm1.Button2Click(Sender:TObject);

begin

Form1.Close;

end;

end.

еще рефераты
Еще работы по информатике, программированию