Задание : Создать диалоговые окна для примеров
1 Вывести на экран 1 или 0 в зависимости от того, имеют три заданных целых числа одинаковую четность или нет.
2. Найти сумму цифр заданного четырехзначного числа.
3. Определить число, полученное выписыванием в обратном порядке цифр заданного трехзначного числа.
4. Вывести на экран 1 или 0 в зависимости от того, равна ли сумма двух первых цифр заданного четырехзначного числа сумме двух его последних цифр.
5. Вывести на экран 1 или 0 в зависимости от того, равен ли квадрат заданного трехзначного числа кубу суммы цифр этого числа.
6. Вывести на экран 1 или 0 в зависимости от того, есть ли среди первых трех цифр дробной части заданного положительного вещественного числа цифра ноль.
7. Вывести на экран 1 или 0 в зависимости от того, есть ли среди цифр заданного трехзначного числа одинаковые.
8. Присвоить целой переменной k третью от конца цифру в записи положительного целого числа n.
9. Присвоить целой переменной k первую цифру из дробной части положительного вещественного числа.
10. Целой переменной S присвоить сумму цифр трехзначного целого числа k.
11. Идет k-я секунда суток. Определить, сколько полных часов (h) и полных минут (m) прошло к этому моменту.
12. Определить f – угол (в градусах) между положением часовой стрелки в начале суток и ее положением в h часов, m минут и s секунд (0<=h<=11, 0<=m, s<=59).
13. Определить h – полное количество часов и m – полное количество минут, прошедших от начала суток до того момента( в первой половине дня), когда часовая стрелка повернулась на f градусов(0<=f<360, f – вещественное число).
14. Пусть k – целое от 1 до 365. Присвоить целой переменной n значение 1,2,…6 или 7 в зависимости от того, на какой день недели ( понедельник, вторник,…, суббота или воскресенье) приходится k- й день невисокосного года, в котором 1 января - понедельник.
15. Поменять местами значения целых переменных x и y, не используя дополнительные переменные.
Лабораторная работа №24 Использование операторов обработки исключений.
Цель работы: Применение теоретических навыков на практике. Ознакомить студентов с применением исключительных ситуации. Закрепить полученные на лекции знания. Написать и отладить программу
Теория: Структурная обработка исключительных ситуаций - это система, позволяющая программисту при возникновении ошибки (исключительной ситуации) связаться с кодом программы, подготовленным для обработки такой ошибки.
Новое ключевое слово, добавленное в язык Object Pascal - try. Оно используется для обозначения первой части защищенного участка кода. Существует два типа защищенных участков:
try..except, try..finally
Первый тип используется для обработки исключительных ситуаций. Его синтаксис:
try
Statement 1;
Statement 2;
...
except
on Exception1 do Statement;
on Exception2 do Statement;
...
else
Statements; {default exception-handler}
end;
Для уверенности в том, что ресурсы, занятые вашим приложением, освободятся в любом случае, Вы можете использовать конструкцию второго типа. Код, расположенный в части finally, выполняется в любом случае, даже если возникает исключительная ситуация. Соответствующий синтаксис:
try
Statement1;
Statement2;
...
finally
Statements; { These statements always execute }
end;
Задания : Вычислить значение Y, используя операторы «try-except-end» или «try-finally-end». Проверка на неверный ввод данных, подкоренное выражение не отрицательное и при делении на «ноль».
Вариант №1 Вариант №2
Вариант №3 Вариант №4
Вариант №5 Вариант №6
Вариант №7 Вариант №8
Вариант №9 Вариант №10
Вариант №11 Вариант №12
Вариант №13 Вариант №14
Вариант №15
Контрольные вопросы:
- Назначение оператора try..except ?
- Назначение оператора try..finally ?
- Что такое «исключительная ситуация»?
Лабораторная работа №25 Создание главного и контекстного меню.
Цель работы: Применение теоретических навыков на практике. Ознакомить студентов с компонентами вывода меню и его использование на форме приложения. Закрепить полученные на лекции знания. Написать и отладить программу
Теория:
· TMainMenu позволяет Вам поместить главное меню в программу. При помещении TMainMenu на форму это выглядит, как просто иконка. Иконки данного типа называют "невидимыми компонентом", поскольку они невидимы во время выполнения программы. Создание меню включает три шага: (1) помещение TMainMenu на форму, (2) вызов Дизайнера Меню через свойство Items в Инспекторе Объектов, (3) определение пунктов меню в Дизайнере Меню.
·TPopupMenu позволяет создавать всплывающие меню. Этот тип меню появляется по щелчку правой кнопки мыши.
Вызов приложения командой :
WinExec(‘ путь до файла’, sw_restore);
Например : WinExec(‘c:\work\ron.exe’, sw_restore);
Задания: Используя компоненту MainMenu создать меню следующего вида:
Лабораторные | Задания | Информация | ||
Лабораторная №1 | Лабораторная №1 | О программе | ||
Лабораторная №2 | Лабораторная №2 | Инструкция пользователю | ||
Лабораторная №3 | Лабораторная №3 |
Контрольные вопросы:
- Какие виды меню вы знаете?
- Назначение компоненты TPopupMenu.
- Назначение компоненты TMainMenu.
Лабораторная работа №26 Создание текстового файла, ввод и вывод данных. (Без и с использованием методов компонентов Delphi).
Цель работы: Ознакомить студентов с компонентами вывода текста и работы с файлами на форме приложения. Закрепить полученные на лекции знания. Написать и отладить программу
Теория:
Файлы- множество упорядоченных элементов одного типа. Процедуры над файлами:
1. Assign – связь логического и физического файла
2. Reset – открытие существующего файла
3. ReWrite –создание и открытие нового файла
4. CloseFile – закрытие файла
5. EOF – истина если достигнут конец файла
Различают 3 вида файлов: текстовые, типизированные и нетипизированные
1. Текстовые
Var <имя файловой переменной> : TextFile;
Процедуры:
Write – запись данных в файл
Read – чтение из файла
Существует множество стандартных диалоговых окон в Windows. Delphi поддерживает работу с такими окнами через следующие системные диалоги:
1. OpenDialog –открытие стандартного окна открытия файлов;
2. SaveDialog –стандартное окно сохранения файлов.;
3. FontDialog – диалог выбора шрифта;
4. ColorDialog- диалог выбора цвета;
Пример: Работа с текстовым файлом.
1. Открыть текстовый файл и вывести его содержимое в окно редактирования Memo1
If OpenDialog1.Execute then
Memo1.Lines.LoadFromFile(OpenDialog1.FileName);
2.Сохранить изменения
Memo1.Lines.SaveToFile(OpenDialog1.FileName);
3.Создание текстового файла
SaveDialog1.FileName:=F;
If SaveDialog1.Execute then
Memo1.Lines.SaveToFile(OpenDialog1.FileName);
4. Открыть файл
If OpenDialog1.Execute then
Memo1.Lines.LoadFromFile(OpenDialog1.FileName);
5. Изменить шрифт текста
if FondDialog1.Execute then
Memo1.Font.Assign(FontDialog1.Font);
- Изменить цвет фона компоненты Memo
if ColorDialog1.Execute then
Memo1.Color:=ColorDialog1.Color;
Задание №1 :
Создать приложение с использованием диалоговых компонент, компоненты Memo и «Главного меню» следующего вида:
Файл | Задание | Форматирование | Выход |
Открыть (создать) | Цвет фона | ||
Сохранить | Стиль текста |
Вариант №1
Ввести файл символов, предшествующую символу "пробел" и выяснить: есть ли среди них буква А, сколько раз встретился символ "." , заменить букву В на *
Вариант №2
Ввести файл символов и выяснить, - сколько среди них точек, сколько среди них пробелов, сколько среди них букв Д.
Вариант №3
Ввести файл символов, предшествующую символу ! и выяснить, есть ли среди них буквы, входящие в слово КУРС и сколько раз какая из этих букв встретилась.
Вариант №4
Ввести файл символов, предшествующих точке и выяснить, встретились ли среди них буквы, входящие в слово ТУР
Вариант №5
Ввести файл символов, заканчивающихся * выяснить: сколько пробелов, сколько букв А, сколько букв С, все буквы А заменить на точку
Вариант №6
Ввести файл символов, предшествующих точке и выяснить, есть ли среди них буквы, входящие в слово ЭВМ и сколько раз они встречались.
Вариант №7
Ввести файл символов, предшествующих символу * и выяснить сколько среди них букв S, A, R. Все буквы S заменить на точку
Вариант №8
Ввести файл символов, предшествующую символу “.“ и определить: сколько символов введено, есть ли среди них символ пробел, все встретившиеся буквы “A“ заменить символом “*“.
Вариант №9
Вывести файл символов и определить, есть ли среди них буквы, входящие в слово «Мера». Если они найдены, заменить их символом пробел.
Вариант №10
Ввести файл символов, состоящую из N слов, разделённых пробелом и определить, сколько слов введено, кроме того, вывести все слова отдельно «столбцом».
Вариант №11
Ввести файл символов и определить, есть ли среди них буквы входящие в слово “ШИНА” и сколько среди символов пробелов
Вариант №12
Ввести файл символов, предшествующую символу "пробел" и выяснить: есть ли среди них буква Н, сколько раз встретился символ «=» , заменить букву «Н» на «?»
Вариант №13
Ввести файл символов и выяснить, - сколько среди них точек, сколько среди них пробелов, сколько среди них букв Ш.
Вариант №14
Ввести файл символов, предшествующих точке и выяснить, встретились ли среди них буквы, входящие в слово МИР
Вариант №15
Ввести файл символов, предшествующих символу « - » и выяснить сколько среди них букв Н, Ю, Х. Все буквы Ю заменить на точку
Задание № 2: Выполнить задачи используя системные диалоги
Вариант№1
Дана строка символов, среди которых есть одна открывающаяся и одна закрывающаяся скобка. Вывести на экран все символы, расположенные внутри этих скобок.
Вариант№2
Дана строка. Указать те слова, которые содержат хотя бы одну букву k.
Вариант№3
Дана строка, содержащая английский текст. Найти количество слов, начинающихся с буквы Ь.
Вариант№4
Дана строка. Подсчитать в ней количество вхождений букв г, k,t.
Вариант№5
Дана строка, содержащая текст. Найти длину самого короткого слова и самого длинного слова.
Вариант№6
Дана строка, содержащая текст, заканчивающийся точкой. Вывести на экран слова, содержащие три буквы.
Вариант№7
Дан файл . Удалить из него все лишние пробелы, оставив между словами не более одного. Результат поместить в новый файл.
Вариант№8
Дан файл и некоторое слово. Напечатать те предложения файла, которые содержат данное слово.
Вариант№9
Дан файл . Напечатать в алфавитном порядке все слова из данного файла, имеющие заданную длину N..
Вариант№10
Дан файл , содержащий текст на русском языке. Подсчитать количество слов, начинающихся и заканчивающихся на одну и ту же букву.
Вариант№11
Дан файл, содержащий текст на русском языке. Найти слово, встречающееся в каждом предложении, или сообщить, что такого слова нет.
Вариант№12
Дан файл, содержащий текст, включающий русские и английские слова. Подсчитать, каких букв в тексте больше — русских или латинских.
Вариант№13
Дан файл, содержащий текст. Сколько слов и цифр в тексте?
Вариант№14
Дан файл, содержащий текст, включающий русские и английские слова. Получить новый файл, заменив в исходном, все заглавные буквы строчными и наоборот.
Вариант№15
Дан файл, содержащий зашифрованный русский текст. Каждая буква заменяется на следующую за ней (буква Я заменяется на А). Получить в новом файле расшифровку данного текста.
Контрольные вопросы:
1. Какие бывают файлы?
2. Процедуры для текстовых файлов.
3. Какие системные диалоги вы знаете?
4. Опишите компоненту OpenDialog?
5. Опишите компоненту SaveDialog?
6. Опишите компоненту FontDialog и ColorDialog?
Лабораторная работа №27 Создание типизированного файла, ввод и вывод данных.
Цель работы: Ознакомить студентов с компонентами вывода данных и работы с файлами на форме приложения. Закрепить полученные на лекции знания. Написать и отладить программу
Теория:
Файлы- множество упорядоченных элементов одного типа. Процедуры над файлами:
7. Assign – связь логического и физического файла
8. Reset – открытие существующего файла
9. ReWrite –создание и открытие нового файла
10. CloseFile – закрытие файла
11. EOF – истина если достигнут конец файла
Различают 3 вида файлов: текстовые, типизированные и нетипизированные
Типизированные
Var <имя файловой переменной> : File of <тип или запись>;
Процедуры:
Seek – поиск нужной записи в файле
FilePos - - возвращает текущую позицию в файле
Нетипизированные
Var <имя файловой переменной> : File;
Существует множество стандартных диалоговых окон в Windows. Delphi поддерживает работу с такими окнами через следующие системные диалоги:
5. OpenDialog –открытие стандартного окна открытия файлов;
6. SaveDialog –стандартное окно сохранения файлов.;
7. FontDialog – диалог выбора шрифта;
8. ColorDialog- диалог выбора цвета;
Пример: Работа с типизированным файлом.
1. Открыть типизированным файл и вывести его содержимое в окно редактирования Memo1
If OpenDialog1.Execute then
Memo1.Lines.LoadFromFile(OpenDialog1.FileName);
2.Сохранить изменения
Memo1.Lines.SaveToFile(OpenDialog1.FileName);
3.Создание типизированным файла
SaveDialog1.FileName:=F;
If SaveDialog1.Execute then
Memo1.Lines.SaveToFile(OpenDialog1.FileName);
4. Открыть файл
If OpenDialog1.Execute then
Memo1.Lines.LoadFromFile(OpenDialog1.FileName);
5. Изменить шрифт текста
if FondDialog1.Execute then
Memo1.Font.Assign(FontDialog1.Font);
6Изменить цвет фона компоненты Memo
if ColorDialog1.Execute then
Memo1.Color:=ColorDialog1.Color;
Задание №1 :
Создать приложение с использованием диалоговых компонент, компоненты Memo и «Главного меню» следующего вида:
Файл | Задание | Форматирование | Выход |
Открыть (создать) | Цвет фона | ||
Сохранить | Стиль текста |
Задание
1. Дан файл f, элементы которого являются действительными числами. Найти:
а) сумму элементов файла f;
б) произведение элементов файла f;
в) сумму квадратов элементов файла f;
г) модуль суммы и квадрат произведения элементов файла f;
д) последний элемент файла.
2. Дан файл f, элементы которого являются действительными числами. Найти:
а) наибольшее из значений элементов;
б) наименьшее из значений элементов с четными номерами;
в) наибольшее из значений модулей элементов с нечетными номерами;
г) сумму наибольшего и наименьшего из значений элементов;
д) разность первого и последнего элементов файла.
3. Дан файл f, элементы которого являются целыми числами. Найти:
а) количество четных чисел среди элементов;
б) количество удвоенных нечетных чисел среди элементов;
в) количество квадратов нечетных чисел среди элементов.
4. Дан файл f. Получить копию файла f в файле g.
5. Дан файл f, элементы которого являются целыми числами. Получить в файле g все элементы файла f:
а) являющиеся четными числами:
б) делящиеся на 3 и не делящиеся на 7;
в) являющиеся точными квадратами.
1. Дан файл f, элементы которого являются целыми числами. Записать в файл g все четные числа файла f, а в файл h - все нечетные. Порядок следования чисел сохраняется.
2. Дан файл f, элементы которого являются целыми числами. Получить файл g, образованный из файла f исключением повторных вхождений одного и того же числа.
3. Дан файл f, элементы которого являются целыми числами. Никакой из элементов файла не равен нулю. Файл f содержит столько же отрицательных чисел, сколько и положительных. Используя вспомогательный файл h, переписать элементы файла f в файл g так, чтобы в файле g:
а) не было двух соседних чисел с одним знаком;
б) сначала шли положительные, потом отрицательные числа;
9. Дан файл f, элементы которого являются целыми числами. Число элементов файла делится на 10. Записать в файл g наибольшее значение первых десяти элементов файла f, затем - слелуших десяти элементов и т.д.
10. Дан файл f, элементы которого являются целыми числами .Описать функцию отриц(£), подсчитывающую сумму отрицательных элементов в файле f.
11. Даны следующие описания переменных:
type время = record час:0..23; мин, сек:0..59 end;
ФВ = file of время;
Описать логическую функцию eq( f, g), проверяющую на равенство файлы/ и g типа ФВ.
12. Даны следующие описания переменных:
type FB = file of real;
Описать функцию предпосл(/). значением которой является предпоследний элемент файла / имеющего тип FR и содержащего не менее двух элементов.
13. Даны следующие описания переменных:
vype ietters=file of ...;
Описать процедуру append(f, g, h) от трех файлов типа letters, которая записывает в файл f сначала все элементы файла g, a затем - все элементы файла h.
Контрольные вопросы:
1. Какие бывают файлы?
2. Процедуры для типизированных файлов.
3. Нетипизированные файлы.
4. Какие системные диалоги вы знаете?
5. Опишите компоненту OpenDialog?
6. Опишите компоненту SaveDialog?
7. Опишите компоненту FontDialog и ColorDialog?
Лабораторная работа №28 Создание инструментальных панелей.
Лабораторная работа №29 Создание графика с помощью компонента Chart. Рисование на холсте Canvas.
Цель работы: Применение теоретических навыков на практике. Ознакомить студентов с компонентами вывода фигур на форме приложения. Закрепить полученные на лекции знания. Написать и отладить программу
Теория:
В стандартную библиотеку визуальных компонент Delphi входит несколько объектов, с помощью которых можно придать своей программе совершенно оригинальный вид. Это - TImage (TDBImage), TShape,
TImage позволяет поместить графическое изображение в любое место на форме. Этот объект очень прост в использовании - выберите его на странице Additional и поместите в нужное место формы. Собственно картинку можно загрузить во время дизайна в редакторе свойства Picture (Инспектор Объектов). Картинка должна храниться в файле в формате BMP (bitmap), WMF (Windows Meta File) или ICO (icon).
TShape - простейшие графические объекты на форме типа круг, квадрат и т.п. Вид объекта указывается в свойстве Shape. Свойство Pen определяет цвет и вид границы объекта. Brush задает цвет и вид заполнения объекта. Эти свойства можно менять как во время дизайна, так и во время выполнения программы.
У ряда объектов из библиотеки визуальных компонент есть свойство Canvas (канва), которое предоставляет простой путь для рисования на них. Canvas является в свою очередь объектом, объединяющим в себе поле для рисования, карандаш (Pen), кисть (Brush) и шрифт (Font). Используя Canvas, Вы можете воспроизводить на форме любые графические объекты - картинки, многоугольники, текст и т.п
Свойства Canvas :
Brush -кисть, является объектом со своим набором свойств:
Bitmap - картинка размером строго 8x8, используется для заполнения (заливки) области на экране.
Color - цвет заливки. Style - предопределенный стиль заливки; это свойство конкурирует со свойством Bitmap - какое свойство Вы определили последним, то и будет определять вид заливки.
ClipRect - (только чтение) прямоугольник, на котором происходит графический вывод.
Font - шрифт, которым выводится текст (метод TextOut). Pen - карандаш, определяет вид линий; как и кисть (Brush) является объектом с набором свойств:
Color - цвет линии Mode - режим вывода: простая линия, с инвертированием, с
выполнением исключающего или и др.
Style - стиль вывода: линия, пунктир и др. Width - ширина линии в точках
PenPos - текущая позиция карандаша, карандаш рекомендуется перемещать с помощью метода MoveTo, а не прямой установкой данного свойства. Pixels - двухмерный массив элементов изображения (pixel), с его помощью Вы получаете доступ к каждой отдельной точке изображения
Методы Canvas:
Методы для рисования простейшей графики - Arc, Chord, LineTo, Pie, Polygon, PolyLine, Rectangle, RoundRect. При прорисовке линий в этих методах используются карандаш (Pen) канвы, а для заполнения внутренних областей - кисть (Brush).
Методы для вывода текста - TextOut и TextRect. При выводе текста используется шрифт (Font) канвы. При использовании TextRect текст выводится только внутри указанного прямоугольника.
Пример: Нарисовать круг и прямоугольник с рамкой .
- Расположите компоненты :Image(Addition), Button.
- Обработчик события:
begin
with Image1 do
begin
{рисуется рамка}
Canvas.MoveTo(2,2);
Canvas.LineTo(2,150);
Canvas.LineTo(315,150);
Canvas.LineTo(315,2);
Canvas.LineTo(2,2);
Canvas.Rectangle(10,10,250,120);
Canvas.Ellipse(30,30,100,100);
Canvas.TextOut(120,20,'Рисунок ');
end; end;
Рисование по пикселям.
Свойства Canvas компоненты Image – представляет собой область компонента на которой можно рисовать или отображать готовые изображения. Каждая точка канвы имеет координаты X и Y. Максимальное значение по X и по Y находится так:
X:=Image1.Width;
Y:=Image1.Height;
Рисовать по канве можно используя свойство Pixels. Это свойство представляет собой двухмерный массив, который отвечает за цвета канвы. К каждому пикселю можно обращаться по координатам и задавать его определенный цвет:
Image1.Canvas.Pixels[10,20]:=0; {Черная точка с координатой 10,20}
Image1.Canvas.Pixels[10,20]:=clBlack; {Черная точка с координатой 10,20}
Пример: Нарисовать график функции y=sin x
- Разместить компоненту Image.
- Кнопка «нарисовать».
- В обработчик событий кнопки записать:
var x,y:Real; PX,PY:LongInt;
Begin
For PX:=0 To Image1. Width Do
Begin
X:=PX*4*Pi/ Image1.Width;
Y:=sin(x);
PY:=Trunc(Image1.Height-(Y+1)* Image1.Height/2);
Image1.Canvas.Pixels[PX,PY]:=0;
End;
End;
Задание1:
Вариант №1
Нарисовать следующий предмет: круг и квадрат
Вариант №2
Нарисовать следующий предмет: круг в квадрате
Вариант №3
Нарисовать следующий предмет: квадрат в эллипсе
Вариант №4
Нарисовать следующий предмет: круг в эллипсе
Вариант №5
Нарисовать следующий предмет: прямоугольник в квадрате
Вариант №6
Нарисовать следующий предмет: 2 круга в эллипсе
Вариант №7
Нарисовать следующий предмет: круг в круге и квадрате
Вариант №8
Нарисовать следующий предмет: 3 круга друг в друге
Вариант №9
Нарисовать следующий предмет: снеговика
Вариант №10
Нарисовать следующий предмет: 10 кругов разного размера
Вариант №11
Нарисовать следующий предмет: 2 круга с квадратами внутри
Вариант №12
Нарисовать следующий предмет: 10 кубиков с прямоугольником внутри
Вариант №13
Нарисовать следующий предмет: работа
Вариант №14
Нарисовать следующий предмет: дыня в движении
Вариант №15
Нарисовать следующий предмет: бублик в движении
Задание2: Нарисовать график с координатными осями и нумерацией
Вариант №1
Нарисовать график следующей функции : y = x+4
Вариант №2
Нарисовать график следующей функции : y = 2x+5
Вариант №3
Нарисовать график следующей функции : y = 7-5x
Вариант №4
Нарисовать график следующей функции : y = x2
Вариант №5
Нарисовать график следующей функции : y = x2+4
Вариант №6
Нарисовать график следующей функции : y = sin (x+3)
Вариант №7
Нарисовать график следующей функции : y = cos (x+3)
Вариант №8
Нарисовать график следующей функции : y = 3x+6x2
Вариант №9
Нарисовать график следующей функции : y = 1-x3
Вариант №10
Нарисовать график следующей функции : y = 5+x3
Вариант №11
Нарисовать график следующей функции : y = cos (2x)
Вариант №12
Нарисовать график следующей функции : y = x3+3
Вариант №13
Нарисовать график следующей функции : y =x2+3+x
Вариант №14
Нарисовать график следующей функции : y =x2+10-4x
Вариант №15
Нарисовать график следующей функции : y =sin (x+3)+5x
Контрольные вопросы:
- Какие компоненты предназначены для вывода графической информации?
- Назначение компоненты TImage?
- Назначение компоненты TShape?
4. Как найти максимальное значение по X и Y?
5. Назначение свойства Pixels.
6. Назначение свойства Canvas.
Лабораторная работа №30 Создание таблиц базы данных и установка параметров таблиц. Создание приложения для работы с таблицей базы данных.
Цель работы: Изучить создание таблицы базы данных с помощью утилиты Database Desktop. Применение теоретических навыков на практике
Теория:
Database Desktop - это утилита, во многом похожая на Paradox, которая поставляется вместе с Delphi для интерактивной работы с таблицами различных форматов локальных баз данных . Для запуска Database Desktop – в главном меню пункт Tools|DataBase DeskTop.
Для создания таблицы необходимо сначала определить свой алиас (название каталога ваших БД ). Tools|Alias Manager в диалоговом окне и нажмите на кнопку New (создание нового алиаса). В поле DataBase Alias наберите необходимое название нашего алиаса (например: Gruppa). Для определения пути нажмите на Browse(выберите путь). Для сохранения KeepNew и Ok.
Выберите команду меню File|New|Table для создания новой таблицы. Перед Вами появится диалоговое окно выбора типа таблицы (Paradox 7).
После выбора типа таблицы Database Desktop представит Вам диалоговое окно, специфичное для каждого формата, в котором Вы сможете определить поля таблицы и их тип.
Имя поля в таблице формата Paradox представляет собой строку, написание которой подчиняется следующим правилам:
1. Имя должно быть не длиннее 25 символов.
2. Имя не должно начинаться с пробела, однако может содержать пробелы.
3. Имя не должно содержать квадратные, круглые или фигурные скобки [], () или {}, тире, а также комбинацию символов “тире” и “больше” (->).
4. Имя не должно быть только символом .
5. Имя должно быть не длиннее 10 символов.
6. Пробелы в имени недопустимы.
Следующий (после выбора имени поля) шаг состоит в задании типа поля. Для получения списка типов полей перейдите к столбцу “Type”, а затем нажмите пробел или щелкните правой кнопкой мышки. Поля таблиц формата Paradox могут иметь следующий тип (для ввода типа поля можно набрать только подчеркнутые буквы или цифры):
Alpha | строка длиной 1-255 байт, содержащая любые печатаемые символы |
Number | числовое поле длиной 8 байт, значение которого может быть положительным и отрицательным. Диапазон чисел - от 10-308 до 10308 с 15 значащими цифрами |
$ (Money) | числовое поле, значение которого может быть положительным и отрицательным. По умолчанию, является форматированным для отображения десятичной точки и денежного знака |
Short | числовое поле длиной 2 байта, которое может содержать только целые числа в диапазоне от -32768 до 32767 |
Long Integer | числовое поле длиной 4 байта, которое может содержать целые числа в диапазоне от -2147483648 до 2147483648 |
Date | поле даты длиной 4 байта, которое может содержать дату от 1 января 9999 г. до нашей эры - до 31 декабря 9999 г. нашей эры. Корректно обрабатывает високосные года и имеет встроенный механизм проверки правильности даты |
Memo | поле для хранения символов, суммарная длина которых более 255 байт. Может иметь любую длину. При этом размер, указываемый при создании таблицы, означает количество символов, сохраняемых в таблице (1-240) - остальные символы сохраняются в отдельном файле с расширением .MB |
Logical | поле длиной 1 байт, которое может содержать только два значения - T (true, истина) или F (false, ложь). Допускаются строчные и прописные буквы |
Bytes | строка цифр длиной 1-255 байт, содержащая любые данные |
После ввода всех полей БД, необходимо сохранить таблицу Save As.., ввести имя БД(File Name), в Alias выбрать алиас который вы создали и Save. Для заполнения данных – File| Open| Table.. Затем для редактирования полей нажать F9 или Table|Edit data. Введите 5 записей и закройте окно. БД готова. Затем закрываем Database Desktop.
Задания: Создать Б/Д следующей структуры:
Вариант 1«магазин продуктовый»
- ФИО рабочего
- наименование продукта
- цена продукта
- время продажи
- количество (масса)
Вариант 2 «учёт библиотеки»
- № карточки студента
- наименование книги
- дата выдачи
- ФИО студента
- дата сдачи
Вариант 3 «аэропорт»
- дата
- количество проданных билетов
- страна
- ФИО пассажира
- цена билета
Вариант 4 «железнодорожный вокзал»
- ФИО рабочего
- № рабочего
- время выезда поезда
- направление
- дата приезда
Вариант 5 «автобусный парк»
- № автобуса
- район маршрута
- количество рабочих часов
- ФИО контроллёра
- цена билета
Вариант 6 «карточка медицинских услуг»
- ФИО обследуемого
- анализы
- заболевание
- дата обследования
- направление врача
Вариант 7 «место начальника цеха»
- ФИО начальника
- количество подчинённых
- дата сдачи работ
- сумма премиальных рабочего
- зарплата рабочего
Вариант 8 «бланк бухгалтера»
- наименование предприятия
- сумма выплаченных налогов
- количество рабочих
- зарплата рабочего
- налог с заработной платы
Вариант 9 «ветеринарная клиника»
- дата поступления
- ФИО хозяина
- сведения о питомце
- диагноз
- сумма оплаты
Вариант 10 «плавательный бассейн»
- ФИО тренера
- группа
- количество человек в группе
- время проведения занятий
- стоимость одного часа
Вариант 11 «столовый чек»
- дата
- № кассира
- сумма оплаты
- время
- остаток кредита
Вариант 12 «оплата за обучение»
- ФИО студента
- дата приёма
- сумма оплаты
- № кассира
- № группы
Вариант 13 «преподаватель колледжа»
- ФИО преподавателя
- должность
- количество часов
- оплата за 1 час
- сумма всего
Вариант 14 «приёмная комиссия»
- ФИО абитуриента
- адрес абитуриента
- общие сведения
- отметка на экзаменах
- дата поступления
Вариант 15 «туристическая фирма»
- ФИО клиента
- тип труда
- страна
- отель
- сумма стоимости тура
Контрольные вопросы:
- C помощью какой программы можно создать таблицу БД?
- Какого типа могут быть поля БД?
Лабораторная работа №31 Создание вычисляемых полей и полей выбора.
Цель работы: Ознакомить студентов с компонентами БД и методами навигации по БД, а так же создать вычисляемое поле для приложения. Закрепить полученные на лекции знания. Написать и отладить программу
Теория:
Создание вычисляемого поля. Вычисляемое поле – это поле БД значение, которого вычисляется на основании значений других полей записи.
1. Сделать двойной щелчок на Table1(вызвать редактор полей)
2. В редакторе полей правой кнопкой мыши в всплывающем меню выбрать раздел New (добавление нового поля)
3. В разделе Fields Properties (свойство поля) указать имя поля, тип данных, компоненту и размер
4. Переключить группу радиокнопок на Calculated и <Ok>
5. В окне редактора появится новое поле, в инспекторе объектов установите значение DisplayLabel равным «имя на русском»
6. Выйдите из редактора полей и в инспекторе объектов компоненты Table1 на событии OnCalcFields щелкните (это событие наступает каждый раз как надо обновить значение вычисляемых полей таблицы)
7. В обработчике событий необходимо ввести оператор, вычисляющий значение нового поля
Например: Вычисляемое поле Vozrast , а поле Year – год рождения тогда :
Table1Vozrast.Value:=2003 – Table1Year.Value;
Пример: Перемещение на первую запись.
Разместить кнопку с надписью «На первую запись» и написать обработчик события: Table1.First;
Задания: Создать БД следующей структуры и создать вычисляемое поле
Вариант 1«Аэропорт»
- Дата
- Количество проданных билетов
- Страна
- ФИО пассажира
- Цена билета
Создать вычисляемое поле «Сумма» равная « 2 * 5»
Вариант 2 «Железнодорожный вокзал»
- ФИО рабочего
- № рабочего
- Время выезда поезда
- Направление
- Время приезда
Создать вычисляемое поле «Время в движении» равная « 5 - 3»
Вариант 3 «Автобусный парк»
- № автобуса
- Район маршрута
- Количество рабочих часов
- ФИО контролера
- Цена билета
Создать вычисляемое поле «Сумма» равная « 3 * 5»
Вариант 4«Карточка медицинских услуг»
- ФИО обследуемого
- Диагноз
- Количество дней лечения
- Дата обследования
- Цена услуги
Создать вычисляемое поле «Сумма» равная « 3 * 5»
Вариант 5 «Магазин продуктовый»
- ФИО рабочего
- Наименование продукта
- Цена продукта
- Время продажи
- Количество (масса)
Создать вычисляемое поле «Сумма» равная « 3 * 5»
Вариант 6«Учет библиотеки»
- № карточки студента
- Наименование книги
- Дата выдачи
- ФИО студента
- Дата сдачи
Создать вычисляемое поле «Время использования» равная « 5 - 3»
Вариант 7 «Столовая»
- Дата
- № кассира
- Сумма оплаты
- Время
- Остаток кредита
Создать вычисляемое поле «Сумма» равная « 3 – 5 »
Вариант 8«Оплата за обучение»
- ФИО студента
- Дата приема
- Сумма оплаты
- № кассира
- № группы
Создать вычисляемое поле «Сумма» равная «55300тг - 3»
Вариант 9«Место начальника цеха»
- ФИО начальника
- Количество подчиненных
- Дата сдачи работ
- Оплата 1 дня рабочего
Создать вычисляемое поле «Зарплата» равная « 2*4»
Вариант 10 «Бланк бухгалтера»
- Наименование предприятия
- Сумма выплаченных налогов
- Количество рабочих
- Зарплата рабочих
- Налог с заработной платы
Создать вычисляемое поле «Зарплата 1 рабочего» равная «4 / 3»
Вариант 11«Преподаватель колледжа»
- ФИО преподавателя
- Должность
- Количество часов
- Оплата за 1 час
Создать вычисляемое поле «Сумма» равная « 3 * 4»
Вариант 12 «Приемная комиссия»
- ФИО абитуриента
- Адрес абитуриента
- Начальная сумма
- Отметка на экзаменах
- Дата поступления
Создать вычисляемое поле «Сумма» равная «55300тг - 3»
Вариант 13 «Ветеринарная клиника»
- Дата поступления
- ФИО хозяина
- Сведения о питомце
- Диагноз
- Стоимость лечения за 1 день
Создать вычисляемое поле «Сумма» равная « дата – 1 * 5»
Вариант 14«Плавательный бассейн»
- ФИО тренера
- Количество человек в группе
- Время проведения занятий
- Стоимость 1-го часа
Создать вычисляемое поле «Сумма» равная «2 * 4»
Вариант 15 «Денежные переводы»
- Дата перевода
- ФИО получателя
- ФИО отправителя
- Сумма переводов
- Процент от перевода
Создать вычисляемое поле «Итоговая сумма» равная «4 + 5»
Контрольные вопросы:
1.Какие методы навигации в компоненте DBNavigator?
2.Какие методы навигации существуют?
3.Что такое вычисляемое поле и как его создать?
Лабораторная работа №32 Навигационный способ доступа к данным
Цель работы: Ознакомить студентов с компонентами БД и методами навигации по БД. Закрепить полученные на лекции знания. Написать и отладить программу
Теория: Для навигации по БД используют компоненту DbNavigator или методы навигации.
Методы навигации, позволяющие осуществлять навигацию – перемещение по таблице:
1.First– перемещение к 1 записи
2.Prior– перемещение на 1 запись назад
3.Next– перемещение к следующей записи
4.Last– перемещение к последней записи
5.MoveBy(i) - – перемещение на i записей вперед (i>0) или назад (i<0)
6.EOF – конец файла
Пример: перемещение по БД
Table1. First;
While not Table1.EOF do
Begin
…
Table1.Next;
End;
Пример: Перемещение на первую запись.
Разместить кнопку с надписью «На первую запись» и написать обработчик события: Table1.First;
Задания: Создать БД следующей структуры и осуществить навигацию (на 1 запись, на последнюю, на следующую, на предыдущую, на I записей вперед или назад ) по БД не используя DBNavigator.
Вариант 1«Аэропорт»
- Дата
- Количество проданных билетов
- Страна
- ФИО пассажира
- Цена билета
Вариант 2 «Железнодорожный вокзал»
- ФИО рабочего
- № рабочего
- Время выезда поезда
- Направление
- Время приезда
Вариант 3 «Автобусный парк»
- № автобуса
- Район маршрута
- Количество рабочих часов
- ФИО контролера
- Цена билета
Вариант 4«Карточка медицинских услуг»
- ФИО обследуемого
- Диагноз
- Количество дней лечения
- Дата обследования
- Цена услуги
Вариант 5 «Магазин продуктовый»
- ФИО рабочего
- Наименование продукта
- Цена продукта
- Время продажи
- Количество (масса)
Вариант 6«Учет библиотеки»
- № карточки студента
- Наименование книги
- Дата выдачи
- ФИО студента
- Дата сдачи
Вариант 7 «Столовая»
- Дата
- № кассира
- Сумма оплаты
- Время
- Остаток кредита
Вариант 8«Оплата за обучение»
- ФИО студента
- Дата приема
- Сумма оплаты
- № кассира
- № группы
Вариант 9«Место начальника цеха»
- ФИО начальника
- Количество подчиненных
- Дата сдачи работ
- Оплата 1 дня рабочего
Вариант 10 «Бланк бухгалтера»
- Наименование предприятия
- Сумма выплаченных налогов
- Количество рабочих
- Зарплата рабочих
- Налог с заработной платы
Вариант 11«Преподаватель колледжа»
- ФИО преподавателя
- Должность
- Количество часов
- Оплата за 1 час
Вариант 12 «Приемная комиссия»
- ФИО абитуриента
- Адрес абитуриента
- Начальная сумма
- Отметка на экзаменах
- Дата поступления
Вариант 13 «Ветеринарная клиника»
- Дата поступления
- ФИО хозяина
- Сведения о питомце
- Диагноз
- Стоимость лечения за 1 день
Вариант 14«Плавательный бассейн»
- ФИО тренера
- Количество человек в группе
- Время проведения занятий
- Стоимость 1-го часа
Вариант 15 «Денежные переводы»
- Дата перевода
- ФИО получателя
- ФИО отправителя
- Сумма переводов
Контрольные вопросы:
4.Какие методы навигации в компоненте DBNavigator?
5.Какие методы навигации существуют?
6.Что такое вычисляемое поле и как его создать?
Лабораторная работа №33 Применение фильтрацией данных и методов установки диапазона допустимых значений.
Цель работы: Ознакомить студентов с компонентами БД и свойствами фильтрации в БД приложения. Закрепить полученные на лекции знания. Написать и отладить программу Применение теоретических навыков на практике
Теория:
Фильтрацию можно задавать свойствами:
1. Filtered
2. Filter
3. FilterOption
Filtered – если True включает использование фильтра, иначе выключает.
Например: включить использование фильтрации
Table1.Filtered:=true;
Filter - фильтр в виде строки, содержащей определенные ограничения на значения полей. Можно использовать шаблон «*» , операции отношения (> < = <>), логические операции (and, or, not).
Например: вывести записи фамилия которых начинается на «Иван»:
Table1.Filter:=’Fam= ‘’’+’Иван’+’’’’;
Вывести записи в которых возраст с 1945 по 1950 годы:
Table1.Filter:=’ (Voz>=1945) and(Voz<=1950)’;
FilterOptions – опции, которые бывают 2 видов:
FoCaseInsensitive – фильтрация без учета разницы в высоте букв
FoNoPartialCompare – поиск производится на точное соответствие.
Например: произвести поиск без учета высоты букв:
Table1. FilterOptions:= FoCaseInsensitive;
Задание: Создать БД следующей структуры:
Вариант 1«Аэропорт»
- Дата
- Количество проданных билетов
- Страна
- ФИО пассажира
- Цена билета
Отфильтровать данные по 1-му полю.
Вариант 2 «Железнодорожный вокзал»
- ФИО рабочего
- № рабочего
- Время выезда поезда
- Направление
- Время приезда
Отфильтровать данные по 5-му полю.
Вариант 3 «Автобусный парк»
- № автобуса
- Район маршрута
- Количество рабочих часов
- ФИО контролера
- Цена билета
Отфильтровать данные по 1-му полю.
Вариант 4«Карточка медицинских услуг»
- ФИО обследуемого
- Диагноз
- Количество дней лечения
- Дата обследования
- Цена услуги
Отфильтровать данные по 2-му полю.
Вариант 5 «Магазин продуктовый»
- ФИО рабочего
- Наименование продукта
- Цена продукта
- Время продажи
- Количество (масса)
Отфильтровать данные по 3-му полю.
Вариант 6«Учет библиотеки»
- № карточки студента
- Наименование книги
- Дата выдачи
- ФИО студента
- Дата сдачи
Отфильтровать данные по 4-му полю.
Вариант 7 «Столовая»
- Дата
- № кассира
- Сумма оплаты
- Время
- Остаток кредита
Отфильтровать данные по 2-му полю.
Вариант 8«Оплата за обучение»
- ФИО студента
- Дата приема
- Сумма оплаты
- № кассира
- № группы
Отфильтровать данные по 4-му полю.
Вариант 9«Место начальника цеха»
- ФИО начальника
- Количество подчиненных
- Дата сдачи работ
- Оплата 1 дня рабочего
Отфильтровать данные по 1-му полю.
Вариант 10 «Бланк бухгалтера»
- Наименование предприятия
- Сумма выплаченных налогов
- Количество рабочих
- Зарплата рабочих
- Налог с заработной платы
Отфильтровать данные по 1-му полю.
Вариант 11«Преподаватель колледжа»
- ФИО преподавателя
- Должность
- Количество часов
- Оплата за 1 час
Отфильтровать данные по 2-ому полю.
Вариант 12 «Приемная комиссия»
- ФИО абитуриента
- Адрес абитуриента
- Начальная сумма
- Отметка на экзаменах
- Дата поступления
Отфильтровать данные по 5-му полю.
Вариант 13 «Ветеринарная клиника»
- Дата поступления
- ФИО хозяина
- Сведения о питомце
- Диагноз
- Стоимость лечения за 1 день
Отфильтровать данные по 4-му полю.
Вариант 14«Плавательный бассейн»
- ФИО тренера
- Количество человек в группе
- Время проведения занятий
- Стоимость 1-го часа
Отфильтровать данные по 1-му полю.
Вариант 15 «Денежные переводы»
- Дата перевода
- ФИО получателя
- ФИО отправителя
- Сумма переводов
- Процент от перевода
Отфильтровать данные по 1-ому полю.
Контрольные вопросы :
1. Какие свойства используются для фильтрации данных?
2. Что означает свойство Filter?
3. Что означает свойство Filtered?
4. Что означает свойство FilterOptions?