51072

Вивчаємо англійську мову

Практическая работа

Информатика, кибернетика и программирование

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

Украинкский

2014-02-05

31.35 KB

3 чел.

Розробив

Олійник Д.А.

13.04.13

ДРПК.020180.015

Аркуш

Перевірив

Рудакова М.

1

Змін

Арк.

№ Докум

Підпис

Дата

Практична робота№6

Тема: Вивчаємо англійську мову.

Мета: Розробити програму для перевірки знань англійських слів шляхом

          тестування. Користувач має за обмежений час методом перетягування

          розташувати три малюнки під відповідними англійськими словами.

Хід роботи:

unit Unit1;

interface

uses

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

 ExtCtrls,StdCtrls,MPlayer,Spin,Buttons,Gauges,jpeg;

type

 TForm1=class(TForm)

   Label1:TLabel;

   Label2:TLabel;

   Label3:TLabel;

   Label4:TLabel;

   Shape1:TShape;

   Shape2:TShape;

   Shape3:TShape;

   Image1:TImage;

   Image2:TImage;

   Timer1:TTimer;

   Timer2:TTimer;

   MediaPlayer1:TMediaPlayer;

   Gauge1:TGauge;

   BitBtn1:TBitBtn;

   BitBtn2:TBitBtn;

   SpinEdit1:TSpinEdit;

   Image3:TImage;

   procedure BitBtn2Click(Sender:TObject);

   procedure Timer1Timer(Sender:TObject);

   procedure FormCreate(Sender:TObject);

   procedure Information;

   procedure Musik;

   procedure BitBtn1Click(Sender:TObject);

   procedure Timer2Timer(Sender:TObject);

   procedure SetPicture(Z:Integer;var Finita:Boolean);

   procedure MediaPlayer1Notify(Sender:TObject);

   procedure Image1MouseMove(Sender:TObject;Shift:TShiftState;X,Y:Integer);

   procedure Image2MouseMove(Sender:TObject;Shift:TShiftState;X,Y:Integer);

   procedure Image3MouseMove(Sender:TObject;Shift:TShiftState;X,Y:Integer);

   procedure Image1MouseDown(Sender:TObject;Button:TMouseButton;

       Shift:TShiftState;X,Y:Integer);

   procedure Image1MouseUp(Sender:TObject;Button:TMouseButton;

       Shift:TShiftState;X,Y:Integer);

procedure Image2MouseUp(Sender:TObject;Button:TMouseButton;

Розробив

Олійник Д.А.

13.04.13

ДРПК.020180.015

Аркуш

Перевірив

Рудакова М.

2

Змін

Арк.

№ Докум

Підпис

Дата

 Shift:TShiftState;X,Y:Integer);

   procedure Image2MouseDown(Sender:TObject;Button:TMouseButton;

       Shift:TShiftState;X,Y:Integer);

   procedure Image3MouseDown(Sender:TObject;Button:TMouseButton;

       Shift:TShiftState;X,Y:Integer);

   procedure Image3MouseUp(Sender:TObject;Button:TMouseButton;

       Shift:TShiftState;X,Y:Integer);

 private

   { Private declarations }

 public

   { Public declarations }

 function ImageInShape(Image:TImage;Shape:TShape):Boolean;

 end;

const

K = 4;

A:Array[1..K,1..3] of String=

   (('Data\Telephone.wmf','Data\Printer.wmf','Data\Books.wmf'),

   ('Data\church.wmf','Data\Rabbit.wmf','Data\Letters.wmf'),

   ('Data\Lemon.wmf','Data\Clock.wmf','Data\Computer.wmf'),

   ('Data\Cake.wmf','Data\Sportmens.wmf','Data\Owl.wmf'));

B:Array[1..K,1..3] of String=

   (('Telephone','Printer','Books'),

   ('Church','Rabbit','Letters'),

   ('Lemon','Clock','Computer'),

   ('Cake','Sportmens','Owl'));

Check:Array[1..K,1..3] of Integer=((1,2,3),(2,1,3),(3,1,2),(3,2,1));

var

 Form1:TForm1;

 i,Score,ShiftX,ShiftY,Left1,Left2,Left3,Top1,Top2,Top3:Integer;

 Fin:Boolean=False;

implementation

{$R *.dfm}

procedure TForm1.SetPicture(Z:Integer; var Finita:Boolean);

 begin

   if (Z>=K) then Finita:=True

     else

       begin

         Label2.Caption:=B[Z,1];

         Label3.Caption:=B[Z,2];

         Label4.Caption:=B[Z,3];

         Image1.Picture.LoadFromFile(A[Z,1]);

         Image2.Picture.LoadFromFile(A[Z,2]);

         Image3.Picture.LoadFromFile(A[Z,3]);

       end;

 end;

function TForm1.ImageInShape(Image:TImage;Shape:TShape):Boolean;

 begin

Розробив

Олійник Д.А.

13.04.13

ДРПК.020180.015

Аркуш

Перевірив

Рудакова М.

3

Змін

Арк.

№ Докум

Підпис

Дата

   if (Image.Left>=Shape.Left) and (Image.Left+Image.Width<=Shape.Left

       +Shape.Width) and (Image.Top>=Shape.Top) and (Image.Top+Image.Height<=

       Shape.Top+Shape.Height) then  ImageInShape:=True

     else

       ImageInShape:=False;

 end;

procedure TForm1.Information;

 begin

   Form1.Timer1.Enabled:=False;

   Form1.Timer2.Enabled:=False;

   Score:=(Score*100) div K;

     if Score>=75 then Form1.MediaPlayer1.FileName:='Music\Win.mp3';

       if Score<75 then Form1.MediaPlayer1.FileName:='Music\Bed.mp3';

         Form1.MediaPlayer1.Open;

         Form1.MediaPlayer1.Play;

         MessageDlg('Вы набрали '+IntToStr(score)+' баллов из 100',

             MtInformation,[MbOk],0);

           Form1.Close;

 end;

procedure TForm1.BitBtn2Click(Sender:TObject);

 begin

   Information;

 end;

procedure TForm1.Timer1Timer(Sender:TObject);

 begin

   if Label1.Visible=True then Label1.Visible:=False

     else

       Label1.Visible:=True;

 end;

procedure TForm1.Musik;

 begin

   MediaPlayer1.FileName:='Music\Base.mp3';

   MediaPlayer1.Open;

   MediaPlayer1.Play;

 end;

procedure TForm1.FormCreate(Sender:TObject);

 begin

   Musik;

     i:=0;

     Score:=0;

     Left1:=Image1.Left;

     Left2:=Image2.Left;

     Left3:=Image3.Left;

     Top1:=Image1.Top;

     Top2:=Image2.Top;

     Top3:=Image3.Top;

 end;

Розробив

Олійник Д.А.

13.04.13

ДРПК.020180.015

Аркуш

Перевірив

Рудакова

4

Змін

Арк.

№ Докум

Підпис

Дата

procedure TForm1.Image1MouseDown(Sender:TObject;Button:TMouseButton;

   Shift:TShiftState;X,Y:Integer);

 begin

   Image1.Tag:=1;

   ShiftY:=Y;

   ShiftX:=X;

 end;

procedure TForm1.Image1MouseMove(Sender:TObject;Shift:TShiftState;X,Y:Integer);

 begin

   if Image1.Tag=1 then

     begin

       Image1.Top:=Image1.Top+Y-ShiftY;

       Image1.Left:=Image1.Left+X-ShiftX;

     end;

 end;

procedure TForm1.Image1MouseUp(Sender:TObject;Button:TMouseButton;

   Shift:TShiftState;X,Y:Integer);

 begin

   Image1.Tag:=0;

 end;

procedure TForm1.Image2MouseDown(Sender:TObject;Button:TMouseButton;

   Shift:TShiftState;X,Y:Integer);

 begin

   Image2.Tag:=1;

   ShiftY:=Y;

   ShiftX:=X;

 end;

procedure TForm1.Image2MouseMove(Sender:TObject;Shift:TShiftState;X,Y:Integer);

 begin

   if Image2.Tag=1 then

     begin

       Image2.Top:=Image2.Top+Y-ShiftY;

       Image2.Left:=Image2.Left+X-ShiftX;

     end;

 end;

procedure TForm1.Image2MouseUp(Sender:TObject;Button:TMouseButton;

   Shift:TShiftState;X,Y:Integer);

 begin

   Image2.Tag:=0;

 end;

procedure TForm1.Image3MouseDown(Sender:TObject;Button:TMouseButton;

   Shift:TShiftState;X,Y:Integer);

 begin

   Image3.Tag:=1;

   ShiftY:=Y;

   ShiftX:=X;

 end;

Розробив

Олійник Д.А.

13.04.13

ДРПК.020180.015

Аркуш

Перевірив

Рудакова М.

5

Змін

Арк.

№ Докум

Підпис

Дата

procedure TForm1.Image3MouseMove(Sender:TObject;Shift:TShiftState;X,Y:Integer);

 begin

   if Image3.Tag=1 then

     begin

       Image3.Top:=Image3.Top+Y-ShiftY;

       Image3.Left:=Image3.Left+X-ShiftX;

     end;

 end;

procedure TForm1.Image3MouseUp(Sender:TObject;Button:TMouseButton;

   Shift:TShiftState;X,Y:Integer);

 begin

   Image3.Tag:=0;

 end;

procedure TForm1.BitBtn1Click(Sender:TObject);

 var

   Check1,Check2,Check3:Integer;

 begin

   Timer1.Enabled:=False;

   Timer2.Enabled:=True;

     if ImageInShape(Image1,Shape1) and ImageInShape(Image2,Shape2) and

         ImageInShape(Image3,Shape3) then

       begin

         MediaPlayer1.FileName := 'Music\Yes.mp3';

         MediaPlayer1.Open;

         MediaPlayer1.Play;

         MessageDlg('Правильно!',MtInformation,[MbOk],0);

           Score:=Score+1;

             Inc(i);

               SetPicture(i,Fin);

                 Musik;

                   if (Fin=True) then Information;

       end

         else

           begin

             Form1.MediaPlayer1.FileName:='Music\Not.mp3';

             Form1.MediaPlayer1.Open;

             Form1.MediaPlayer1.Play;

             MessageDlg('He правильно!',MtInformation,[MbOk],0);

               Inc(i);

                 SetPicture(i,Fin);

                   Musik;

                     if (Fin=True) then Information;

           end;

 end;

procedure TForm1.Timer2Timer(Sender:TObject);

 begin

   Timer2.Interval:=SpinEdit1.Value*100;

Розробив

Олійник Д.А.

13.04.13

ДРПК.020180.015

Аркуш

Перевірив

Рудакова М.

6

Змін

Арк.

№ Докум

Підпис

Дата

Gauge1.Progress:=Gauge1.Progress-1;

     if Gauge1.Progress=0 then Information;

 end;

procedure TForm1.MediaPlayer1Notify(Sender:TObject);

 begin

   if MediaPlayer1.Position>=MediaPlayer1.Length then

     begin

       MediaPlayer1.Stop;

       MediaPlayer1.Play;

     end;

 end;

end.

Висновок: я навчився розробляти програму для перевірки знань англійських слів шляхом тестування.


 

А также другие работы, которые могут Вас заинтересовать

48872. Расчет привода дискового питателя 842.5 KB
  Расчет коэффициента нагрузки.16 Расчет коэффициентов нагрузки.1 Определение общего КПД привода ηобщ – общий КПД привода Применим следующую формулу для определения общего КПД привода дискового питателя
48873. Разработать печатный узел устройства с помощью пакета программ САПР P-CAD 2006 1.02 MB
  Чтобы создать новую библиотеку необходимо выполнить следующую последовательность действий: Выбрать команду Librry New. Для подготовки редактора к работе необходимо выполнить следующие операции: Выбрать команду Options Configure и в появившемся окне установить размер рабочего поля формата А4. Выбрать команду View Snp to grid для привязки курсора к узлам сетки. Выбрать команду Options Grids и установить шаг сетки равный 1.
48874. Разработка участка топливной аппаратуры на 628 автомобилей МАЗ-53371 2.93 MB
  Расчет годового объема работ Расчет годового объема работ по ТО ТР и самообслуживанию. Разработка участка топливной аппаратуры на 628 автомобилей МАЗ 53371 Лит.
48875. Определение видовой принадлежности грибов 717.5 KB
  Обучение нейросети. Применение нейросети для определения вида грибов. Искусственные нейронные сети прочно вошли в нашу жизнь и в настоящее время широко используются при решении самых разных задач и активно применяются там где обычные алгоритмические решения оказываются неэффективными или вовсе невозможными. Нейронные сети – исключительно мощный метод моделирования позволяющий воспроизводить чрезвычайно сложные зависимости.
48876. ПРОГНОЗИРОВАНИЕ БУКМЕКЕРСКИХ КОЭФФИЦИЕНТОВ 108.5 KB
  Но букмекерам приходится решать несколько иную задачу им необходимо оценить вероятность каждого исхода матча победу поражение какойлибо команды или ничейный результат и по итогам этой оценки определить какую сумму они готовы выплачивать победителю в случае если тот правильно сумел предугадать результат. Задача состоит в том чтобы с помощью нейронных сетей определить коэффициенты на матчи с возможными исходами: победа первой команды победа второй команды ничья. Ниже приводится их список: количество выигранных в прошлом сезоне...
48877. Использование нейронных сетей в банковском деле 398 KB
  Искусственные нейронные сети Нейросети в банковском деле Глава Постановка задачи Для решения поставленной задачи будем использовать персептрон основанный на нейронной сети с 14ю входами с 1 выходным и с двумя скрытыми слоями. Нейронные сети и нейрокомпьютеры это одно из направлений компьютерной индустрии в основе которого лежит идея создания искусственных интеллектуальных устройств по образу и подобию человеческого мозга.