ПЕРЕЛІК ДИСЦИПЛІН:
  • Адміністративне право
  • Арбітражний процес
  • Архітектура
  • Астрологія
  • Астрономія
  • Банківська справа
  • Безпека життєдіяльності
  • Біографії
  • Біологія
  • Біологія і хімія
  • Ботаніка та сільське гос-во
  • Бухгалтерський облік і аудит
  • Валютні відносини
  • Ветеринарія
  • Військова кафедра
  • Географія
  • Геодезія
  • Геологія
  • Етика
  • Держава і право
  • Цивільне право і процес
  • Діловодство
  • Гроші та кредит
  • Природничі науки
  • Журналістика
  • Екологія
  • Видавнича справа та поліграфія
  • Інвестиції
  • Іноземна мова
  • Інформатика
  • Інформатика, програмування
  • Юрист по наследству
  • Історичні особистості
  • Історія
  • Історія техніки
  • Кибернетика
  • Комунікації і зв'язок
  • Комп'ютерні науки
  • Косметологія
  • Короткий зміст творів
  • Криміналістика
  • Кримінологія
  • Криптология
  • Кулінарія
  • Культура і мистецтво
  • Культурологія
  • Російська література
  • Література і російська мова
  • Логіка
  • Логістика
  • Маркетинг
  • Математика
  • Медицина, здоров'я
  • Медичні науки
  • Міжнародне публічне право
  • Міжнародне приватне право
  • Міжнародні відносини
  • Менеджмент
  • Металургія
  • Москвоведение
  • Мовознавство
  • Музика
  • Муніципальне право
  • Податки, оподаткування
  •  
    Бесплатные рефераты
     

     

     

     

     

     

         
     
    Розробка інтерактивного середовища навчання роботі
         

     

    Інформатика, програмування

    Міністерство освіти України

    Харківський державний технічний університет радіоелектроніки

    Кафедра ПЗ ЕОМ

    Курсовий проект з дисципліни:

    «Основи програмування та алгоритмічні мови »

    Тема:

    « Розробка інтерактивного середовища навчання роботі в Borland Delphi »


    | Виконав: | Руководитель: |
    | Ст. гр. ИПД-99-1 | |
    | Іванов А. В. | |
    | | Робота захищена з оцінкою: |
    | | |
    | | |
    | | Комісія: |
    | | Доц. Єрохін А. Л. |
    | | Доц. Четвериков Г. Г. |
    | | Проф. Дудар З. В. |

    Харків, 2000 р.

    ХДТУРЕ

    Кафедра ПЗ ЕОМ

    Завдання на курсову роботу з дисципліни « ОП та АЯ »ст. гр. ИПД-99-1 Іванова А. В.

    Тема: «Розробка інтерактивного середовища навчання роботі в Borland Delphi»

    І Розробити інтерактивну середу навчання роботі в Delphi, котрамала б такі можливості:

    . Подавати навчальний матеріал в наочному вигляді

    . Мати можливості ілюстрування

    . Мати засоби для тестування набутих знань

    ІІ типізовані константи. Їх синтаксис і застосування.

    Дата видачі завдання: Дата захисту:

    Студент: Иванов А. В.

    Керівник:

    Реферат

    Дана робота містить 34 сторінки, включаючи додаток; 2 таблиці; 4ілюстрації.

    Мета роботи: створити, використовуючи систему програмування Delphi,навчальну програму

    Об'єкт дослідження: навчальна система, розроблена в Delphi 5,що використовує для зберігання уроків текстові файли, подібні за структуроюфайлів HTML. У перспективі планується об'єднання формату уроків з данимиформатом.

    Ключові слова:
    DELPHI, навчальна система, типізований КОНСТАН, ФОРМАТ Фото УРОКІВ,
    ПЕРСПЕКТИВИ

    Зміст


    Реферат 3
    Зміст 4
    Введення 5
    1 Опис програми 6
    1. 1 Основні характеристики 6
    1. 2 Керівництво для користувача 6
    1. 3 Опис команд формату. LES 7

    1. 3. 1 Текстові команди 8

    1. 3. 2 Графічні команди 9

    1. 3. 3 Логічні команди 10
    1. 4 Опис внутрішньої структури програми 11

    1. 4. 1 Загальна організація 11

    1. 4. 2 Алгоритми, гідні розгляду 11

    1. 4. 3 Перспективи 12
    2 типізовані константи 13
    2. 1 Загальна характеристика 13
    2. 2 Константи-масиви 13
    2. 3 Константи-запису 14
    2. 4 Процедурні константи 15
    2. 5 Константи-покажчики 16
    2. 6 Приклади програм 17
    Висновки 21
    Перелік посилань 22
    Додаток А 23

    Введення

    На Землі кожну годину збільшується кількість комп'ютерів. Вонипрацюють з програмами, кількість яких теж зростає. Написані всіпрограми з використанням різних мов програмування - С + +, Delphi,
    Assembler. Вивчення таких мов мало поступається за складністю вивченнязвичайних, людських. Це дуже складний і трудомісткий процес.

    Для його полегшення та спрощення створюються різні навчальніпрограми. Комп'ютер вчить людину. Такий «вчитель» ніколи не втомлюється,завжди об'єктивний, не ображається ...

    У даній роботі представлена подібна програма, здатна (як меніздається), навчити починаючого програміста основ візуального середовища Delphiта мови Паскаль.

    1 Опис програми

    1. 1 Основні характеристики

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

    Файл уроку являє собою текстовий файл із розширенням. LES; в ньомустримає текст уроку і спеціальні команди, які змушують програму,виконувати деякі дії, наприклад, виводити текст таким-то кольором,змінювати розмір шрифту, вставляти картинки. Опис команд буде приведенонижче.

    1. 2 Керівництво для користувача

    виконуваний файл називається LD. EXE. Після його запуску на екраніз'являється вікно, показане на рис. 1. 1

    Малюнок 1. 1 - Вікно, що виникає після запуску

    По ньому «повзе» напис: «Ласкаво просимо до Learn
    Delphi !!!». Для входу в програму треба натиснути кнопку «ОК». Наступне вікнопоказано на рис. 1. 2:

    Малюнок 1. 2 - Вікно вибору потрібного уроку

    Користувач вибирає потрібний йому урок і натискає кнопку «Завантажити».
    Після цього він бачить основне вікно, в яке завантажена перша сторінкауроку. Це вікно представлено на рис. 1. 3 (стор. 8).

    У правому нижньому куті вікна поміщено три кнопки SpeedButton:
    Перехід до попередньої сторінки

    Перехід на наступну сторінку

    Вихід з поточного уроку (з'являється вікно вибору уроків).

    1. 3 Опис команд формату. LES

    Як вже було сказано вище, дана програма має спеціальну системукоманд. Вони діляться на три типи:
    . Текстові
    . Графічні
    . Логіка.

    Всі команди передує символами /:, щоб їх можна було відрізнитивід звичайного тексту, що виводиться на екран.

    Все, що не має на початку символів /: буде виведено!

    Малюнок 1. 3 - Вікно уроку

    1. 3. 1 Текстові команди

    Таблиця 1. 1 - Текстові команди

    | /: size | Встановлює розмір шрифту. Розмір вводиться відразу після |
    | розмір шрифту | команди. |
    | | Приклад: |
    | | Таблиця 1. 1 - Текстові команди (продовження) |
    | | /: Size |
    | | 750 |
    | /: color | Встановлює колір виведеного тексту. Підтримує основні |
    | колір | кольори: red, blue, black, yellow, green, grey. |
    | | Приклад: |
    | | /: Color |
    | | Red |
    | /: style | Встановлює стиль виведеного тексту: |
    | стиль | 1 - нормальний, |
    | | 2 - напівжирний, |
    | | 3 - підкреслений, |
    | | 4 - курсив, |
    | | 5 - перекреслений. |
    | | Приклад: |
    | | /: Style |
    | | 5 |
    | /: font | Завантажує інший шрифт. |
    | ім'я | Приклад: |
    | | /: Font |
    | | Times New Roman |
    | /: newpage | Дає знати системі, що далі слід нова сторінка. |

    1. 3. 2 Графічні команди

    У даній версії програми є тільки одна графічна команда -
    /: picture, яка завантажує і поміщає за вказаними координатами картинкуз файлу у форматі. BMP.

    Синтаксис:

    /: Picture

    X-координата малюнка.

    Y-координата. малюнка. назва файлу малюнка

    На одну сторінку можна помістити до трьох картинок. Цього вбільшості випадків достатньо.

    1. 3. 3 Логічні команди

    Логічна команда в даній версії теж один. Це /: question.

    Синтаксис:

    /: question текст запитання правильну відповідь (1 - "Так" 2 - "Ні")

    Результатом виконання є присутність на сторінці питання,обведеного подвійною червоною рамкою. Праворуч, після тексту питання, знаходятьсядві кнопки - «Так» і «Ні». Користувач натискає на кнопку, якасимволізує, за його, юзера, мненеію, правильну відповідь і кнопки відразустають неактивними. Програма посчітивает кількість правильних інеправильних відповідей і в кінці роботи виставляє оцінку.

    На сторінці не допускається розміщувати більше одного питання!

    Версія програми, представлена в курсовій роботі є DEMO -версією, тому взагалі в уроці допускається лише одна логічна команда.

    4 Опис внутрішньої структури програми

    1. 4. 1 Загальна організація

    Програма має чотири вікна: frmMain, frmRun, frmLesson і frmRes. Утабл. 1. 2 представлені функції, що виконуються кожним з них:

    Таблиця 1. 2 Функції, що виконуються вікнами у програмі
    | Назва вікна | Функції, які виконує в програмі |
    | frmMain | Дане вікно з'являється, коли користувач запускає |
    | | Програму. Воно служить ніби запрошенням до роботи. |
    | | Показано дане вікно на рис. 1. 1. |
    | FrmRun | Після frmMain користувач потрапляє у вікно frmRun. Тут |
    | | Він може вибрати потрібний урок і завантажити його або вийти з |
    | | Програми. Показано воно на рис. 1. 2. |
    | FrmLesson | Основне вікно для навчання. У ньому виводиться текст уроку, |
    | | Всі картинки і питання. У модулі цього вікна описані всі |
    | | Підпрограми для обробки файлів уроків. Показано це |
    | | Вікно на рис. 1. 3. |
    | FrmRes | Після проходження уроку користувач повинен знати, як |
    | | Він засвоїв матеріал. В даному вікні поміщена таблиця з |
    | | Числом питань і правильних відповідей. Це очнь просте |
    | | Вікно, тому не представлено на малюнках. |

    1. 4. 2 Алгоритми, гідні розгляду

    Одним з вдало реалізованих алгоритмів автор вважає реалізаціюрозпізнавання команд. У додатку А, в кінці записки представлений вихіднийкод програми, в якому можна розглянути ці процедури. Текст виводиться ввікні за допомогою об'єкта Canvas. Це викликано необхідністю поміщати картинкиупереміж з текстом. Простіше за все реалізується така ідея з застосуванням
    Canvas'a. Під час тестування виникла проблема: при перемальовуванні вікна (вразі тимчасового перекриття іншим вікном і т. п.) об'єкти, виведені здопомогою Canvas'a, не перемальовували. Зникали великі фрагменти тексту. УВрешті-решт проблема вирішена: запускається обробник події OnPaint.

    Кожна сторінка уроку завантажується в спеціальну змінну (процедура
    LoadPage), а потім виводиться на екран процедурою DrawPage. При цьому ірозпізнаються команди.

    4. 3 Перспективи

    Дана програма, як мені здається, є досить перспективним
    «Прожектом». У наступних версіях програми, які, поза сумнівом, з'являться,будуть вдосконалені можливості тестування, додадуться кількалогічних і графічних команд, а трохи пізніше - і спеціальний редактор дляспрощення створення уроків.

    Крім того, використовуючи можливості Windows, можна буде «примусити»Обучалки взаємодіяти з системою програмування Delphi, що підвищитьнаочність прикладів і тоді Learn Delphi здатна буде готувати непоганихфахівців в галузі комп'ютерних технологій.

    Але і це ще не все! LD - універсальна система, в файл уроку можназаписати що-завгодно, так що застосовувати цей засіб можна і для навчанняінших предметів, навіть дещо віддаленим від інформатики, як, наприклад,історія, іноземні мови.

    2 типізовані константи

    2. 1 Загальна характеристика

    Мова Паскаль, і, відповідно, Делфі, має спеціальний видконстант - типізовані. На відміну від звичайних, констант, вони можутьмістити масиви, покажчики, записи і значення процедурних типів. Привстановленої директиви компілятора ($ J +) вони ведуть себе як звичайніпочаткові змінні. При ($ J-) значення не можуть змінюватися.

    Синтаксис: Const імя_константи: тип = значення

    Приклад: Const Max: integer = 200

    2. 2 Константи-масиви

    Щоб задати будь-яку константу-масив, потрібно описати значення всіхелементів. Значення описуються в круглих дужках, через кому. Наприклад:

    Const Digits: array [1 .. 5] of byte = (1, 2, 3, 4, 5)

    У даному прикладі оголошується константа-масив Digits типу Byte . Їйвідразу присвоюються числа від 1 до 5.

    Константи-масиви часто використовуються для того щоб визначити строк,закінчуються символом # 0. У цьому випадку опис виглядає так:

    Const Stroka: array [1 .. 5] of char = ( 'Hello')

    константою може бути і багатовимірний масив. Для цього кожен йоговимір поміщається в круглі дужки. Приклад:

    type TCube = array [0 .. 1, 0 .. 1, 0 .. 1] of Integer; const Maze: TCube = (((0, 1), (2, 3) ), ((4, 5), (6,7 )))

    Створюється масив Maze, де:

    Maze [0,0,0] = 0

    Maze [0,0,1] = 1

    Maze [0,1,0] = 2

    Maze [0,1,1] = 3

    Maze [1,0,0] = 4

    Maze [1,0,1] = 5

    Maze [1,1,0] = 6

    Maze [1,1,1] = 7

    Всі константи-масиви не можуть містити файлових змінних ні наякому рівні.

    2. 3 Константи-запису

    Для завдання константи-запису необхідно заповнити її поля згідносинтаксису: ім'я_поля: значення. Значення розділяються крапками з комою івсі вираз поміщається в круглі дужки. Значення повинні бутипредставлені константами. Поля повинні бути перераховані в тому порядку, вякому вони розміщені в описі запису. Поле-описувач, якщо така є,має бути заповненим; у разі записи з варіантами тільки варіант,вибраний описувачем може використовуватися.

    Приклади:

    type
    TPoint = record

    X, Y: Single; end;
    TVector = array [ 0 .. 1] of TPoint;
    TMonth = (Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec);
    TDate = record < p> D: 1 .. 31;

    M: TMonth;

    Y: 1900 .. 1999; end;const
    Origin: TPoint = (X: 0.0; Y: 0.0);
    Line: TVector = ((X: -3.1; Y: 1.5), (X: 5.8; Y: 3.0));
    SomeDay: TDate = (D: 2; M: Dec; Y: 1960);

    Всі константи-записи не можуть містити файлових змінних ні наякому рівні.

    2. 4 Процедурні константи

    Для визначення процедурної константи потрібна процедура з відповіднимипараметрами. Наприклад:

    function Calc (X, Y: Integer): Integer;begin
    ...end;type TFunction = function (X, Y: Integer): Integer;const MyFunction: TFunction = Calc;

    Після такого опису, функція викликається:

    I: = MyFunction (5, 7)

    Ви також можете давати константі значення nil.

    2. 5 Константи-покажчики

    Такі константи містять адреса в пам'яті змінної або підпрограми.
    При їх оголошення констант потрібно стежити за тим, щоб адресу, на якувона вказує, використовувався. Приклади:

    Константа містить адресу змінної:

    const PI: ^ Integer = @ I;

    Константа містить адресу підпрограми:

    const PF: Pointer = @ MyFunction;

    Ви можете оголосити константу типу PChar з рядковим значенням, тому щолітерали зберігаються в пам'яті як глобальні константи.

    Адреса локальних (розміщених у стеку) і динамічних змінних неможуть бути поміщені в подібну константу.

    2. 6 Приклади програм

    Нижче наведені приклади програм, що використовують типізованіконстанти. Вони написані в Delphi, але у вигляді консольного програми - щобне захаращувати текст програм описом форм та інших об'єктів, до якихдана задача не має відношення.

    Тексти програм-прикладів поміщені на дискеті з курсовою роботою вдиректорії EXAMPLES.

    Приклад 1.

    program Example1;
    ($ APPTYPE CONSOLE)
    (Дана програма-приклад демонструє застосування констант-масивів.
    Перетворює чисельний формат дати в звичайний, з назвою місяця)uses
    SysUtils;

    const month: array [1 .. 12] ofstring [20] = ( 'January', 'February', 'March', 'April', 'May',
    'June', 'July', 'August', 'September', 'October', 'November', 'December');var d: string [10];s: string [30];s1: string [3];begin write ( 'Enter date (dd: mm: yyyy):'); readln (d); s :=''; if copy (d, 1,1) '1 'then begin if copy (d, 2,1 ) = '1 'then s1: =' `st 'else if copy (d, 2,1) = '2' then s1: = '` nd' else if copy (d, 2,1) = '3 'then s1: = ' `rd' end else s1: = '` th'; s: = copy (d, 1,2) + s1 + 'of' + month [strtoint (copy (d, 4,2 ))]+' '+ copy (d, 7,4); writeln (s); readlnend.

    Приклад 2.

    unit Example2frm;

    (Цей приклад показує, як застосовуються константи-запису. Тут будуєтьсябагатокутник (із застосуванням методу Polyline об'єкта Canvas), а координативершин багатокутника містяться в масиві констант-записів.)

    interface

    uses
    Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
    StdCtrls;

    type
    TForm1 = class (TForm)

    Button1: TButton; procedure Button1Click (Sender: TObject); private

    (Private declarations) public

    (Public declarations) end;

    var
    Form1: TForm1;
    PolyLines: array [1 .. 4] of tpoint = ((x: 170; y: 20), (x: 320; y: 320), (x: 20; y: 320),
    (x: 170; y: 20 ));

    implementation

    ($ R *. DFM)

    procedure TForm1.Button1Click (Sender: TObject);begin form1.Canvas.Pen.Width: = 3; form1.canvas.Polyline (polylines)end;

    end.

    Вікно цієї програми-прикладу наведено на рис. 2. 1 (стор. 20):

    Малюнок 2. 1 - Вікно програми-прикладу

    Висновки

    У даній роботі представлена освітня програма, розробленав середовищі програмування Borland Delphi 5. До неї додається файл уроку,описує основи Delphi. Але взагалі, цю систему навчання можна
    «Примусити» навчати який-завгодно дисципліні - для цього досить створитифайли уроків і записати їх імена в файл конфігурації.

    У процесі розробки програми детально вивчені графічніможливості Делфі і об'єкта Canvas.

    У другій частині роботи розглянуті типізовані константи в
    Паскалі, їх застосування. Дано приклади програм.

    Перелік посилань


    1. Культин Н. Delphi 4. Програмування на Object Pascal. BHV, Санкт-
    Петербург, 1999. - 480 с., Іл.

    2. Ден Оузьер та ін Delphi 3. Освой самостійно. М.: "Видавництво
    БИНОМ ", 1998 р. - 560 с.: Ил.

    3. Бондарєв В. М., Рублінецкій В. І., Качко Є. Г. Основи програмування.
    Харків: Фоліо; Ростов н/Д: Фенікс, 1998 - 368 с.

    4. Довідкова система Delphi

    5. Фаронов В. В. Delphi 4. Навчальний курс. М.: «Нолидж», 1999 - 464 с., Іл.

    Додаток А

    Нижче дан вихідний код усіх модулів програми

    unit Mainfrm;

    interface

    uses
    Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
    ExtCtrls, StdCtrls;

    type
    TfrmMain = class (TForm)

    Image1: TImage;

    Timer1: TTimer;

    Button1: TButton; procedure Timer1Timer (Sender: TObject); procedure FormCreate (Sender: TObject); procedure Button1Click (Sender: TObject); private

    (Private declarations) public

    (Public declarations) end;

    var frmMain: TfrmMain;

    implementation

    uses runfrm;

    ($ R *. DFM)

    var x: integer;

    procedure TfrmMain.Timer1Timer (Sender: TObject);var r: trect;begin r.Left: = x; r.Top: = 150; r.Bottom: = 170; r.Right: = frmmain.Width; frmmain.canvas.fillrect (r); frmmain.canvas.TextOut (x, 151, 'Ласкаво просимо до програми "Learn
    Delphi "!!!'); dec (x, 3); if x

         
     
         
    Реферат Банк
     
    Рефераты
     
    Бесплатные рефераты
     

     

     

     

     

     

     

     
     
     
      Все права защищены. Reff.net.ua - українські реферати ! DMCA.com Protection Status