ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 03.04.2024
Просмотров: 4567
Скачиваний: 0
СОДЕРЖАНИЕ
2.1. Файловая структура, файлы, папки
2.2. Работа с программой Проводник
2.2.1. Навигация по файловой структуре
2.2.2. Запуск программ и открытие документов
2.2.4. Копирование и перемещение файлов и папок
2.2.5. Удаление файлов и папок
2.2.6. Создание ярлыков файлов, представление объектов
2.2. Содержимое стандартного набора вкладок
2.3. Ввод, редактирование, форматирование и рецензирование текста
2.4. Основы работы с таблицами
2.6. Сохранение и печать созданного документа
Основы работы с пакетом Microsoft Excel
2.2 Создание электронных таблиц пакетом Microsoft Excel
Ввод, редактирование и форматирование данных
Вычисления в электронных таблицах
Использование стандартных функций
Построение диаграмм и графиков
2.3 Сохранение и печать созданной книги
2.2. Основные этапы составления программы
2.3. Оформление окна программы (размещение компонентов на форме)
2.4. Назначение и основные свойства некоторых компонентов
Компонент Memo (Многострочный текстовый редактор)
Компонент ComboBox (Блок с комбинированным раскрывающимся списком)
2.2. Создание заготовок процедур-обработчиков событий. Текст модуля программы
2.2. Оформление окна программы
2.3. Изменение свойств компонентов. Получение заготовки процедуры
2.4. Программирование вычислений определенных интегралов
2.1.2. Сложение и вычитание матриц
2.1.3. Умножение матрицы на число
2.1.5. Транспонирование матрицы
2.1.6. Линейные преобразования
2.2 Массивы и переменные с индексами
2.3. Составление программ реализующих основные матричные операции
Оформление эскиза окна программы
3. Определяется начало раздела реализации модуля ключевым словом implementation (пер. Реализация). В этом разделе Delphi:
а) вписывает строку
{$R*.dfm},
которая является указанием (директивой) компилятору на необходимость подключения файла пользовательского интерфейса. Её запрещается удалять программистом;
б) размещает заготовки процедур- обработчиков событий, в которые программист вводит операторы, реализующие алгоритмы решения задачи, (записанные на языке Object Pascal).
4. Определяется конец текста модуля сочетанием ключевого слова end и символом ‘.’ (end.), которое иногда называется терминатором. Как только в тексте модуля встречается терминатор, компилятор прекращает анализ программы и игнорирует её оставшуюся часть.
Для выполнения задания 1, программистом вводятся в заготовки процедур только пять операторов.
Обычно в текстах модулей ключевые слова языка Object Pascal выделяются жирным шрифтом, а комментарии, поясняющие различные места программы и ничего не значащие для компилятора, записываются после // курсивом. Следует помнить, что ключевые слова не только приближают текст модуля к тексту на естественном английском языке, но каждое ключевое слово несет в себе условное сообщение для компилятора, который анализирует текст модуля слева направо и сверху вниз, как читаем его и мы.
Задание 2. Освоить основные свойства компонента Chart. Составить программу (приложение), которая строит график ‘затухающего’ синусоидального колебания:
где =0 c.– начальная граница отрезка;
=125 с – конечная граница отрезка;
t – текущее время;
e =2.7183 – основание натуральных логарифмов. В языке Object Pascal вычисление реализуется стандартной функцией exp(-k*t);
k=0.04 – коэффициент ‘затухания’ синусоидального колебания;
ω=2π*f=0.5 рад./с. – круговая частота синусоидального колебания;
f=0,08 Гц – частота;
T=1/f=12.5 c. – период колебания.
Компонент Chart (пер. Диаграмма)
Предназначен для построения диаграмм и графиков по наборам числовых данных. Chart находится на панели Additional (пер. Дополнительная) палитры компонентов, содержит большое число специфичных свойств, событий и методов. В частности, компонент Chart содержит объекты серий Series1, Series2,…, которые отображают наборы чисел в графическом виде и имеют тип TLineSeries. Иногда говорят, что Chart является контейнером объектов Series1, Series2,…. Стиль отображения данных (т.е. вид диаграммы) каждым объектом выбирается программистом в окне ‘TeeChart Gallery’(пер. Галерея диаграмм), которое открывается после ЩЛК на вкладке Series окна многостраничного Редактора диаграмм (Editing Chart).
Чтобы отобразить данные, нужно создать как минимум одну серию, например Series1. Реальный вид графика (диаграммы) зависит от фактических данных (в нашем случае от задаваемых значений t и вычисляемых значений, которые создаются в работающей программе и добавляются к серии с помощью метода AddXY (пер. Добавить по оси X и по оси Y) объекта Series1. Это реализуется оператором:
Series1.AddXY(t, y,’ ’,clRed);
В этом операторе: первым фактическим параметром, значения которого отображаются по оси 0X, является аргумент t; вторым фактическим параметром, значения которого отображаются по оси 0Y, является функция y; третий параметр является не обязательным; четвертый параметр (clRed) определяет цвет графика (Красный). Перед началом отображения графика следует очистить серию от занесенных в неё ранее данных, записав оператор:
Series1.Clear;
Без этого оператора повторное выполнение метода AddXY только добавит новые точки, не удалив прежние.
1. Оформление окна программы
Исходные данные этого задания определим в программе операторами присваивания. На форме Form1 разместим компонент Chart1 и командную кнопку Button1. При помощи маркеров Chart1 изменим его размеры так, чтобы он занимал большую часть Form1. Ниже Chart1 разместим Button1. Тогда эскиз окна программы примет вид, приведенный на рис. 5.2.
Рис. 5.2. Эскиз окна программы для задания 2.
2. Изменение свойств компонентов
Свойствам Caption компонентов Form1 и Button1 зададим значения ‘Задание 2’ и ‘Построить график’ соответственно.
Двойным щелчком левой кнопки мыши (2ЩЛК) на компоненте Chart1 вызовем Редактор компонента ‘Editing Chart1’. В появившемся многостраничном окне автоматически откроется страница с вкладкой Series.
Создадим первую серию Series1, для этого:
- ЩЛК на кнопке Add;
- в открывшемся окне ‘TeeChart Gallery’ (пер. Галерея диаграмм) ЩЛК на рисунке Line выбираем вид графика;
- сбросим флажок перед полем 3D (устраняя представление графика в трехмерном пространстве) и ЩЛК на кнопке OK;
- зададим название графика. Для этого ЩЛК на вкладке ‘Titles’ и в появившемся поле вместо слова Chart введем заголовок ‘График функции’;
- ЩЛК на кнопке Close закроем окно ‘Editing Chart1’. В компоненте Chart 1 появится примерный вид графика (см. рис. 5.3).
Рис. 5.3. Окно программы с примерным видом графика.
3. Создание заготовки процедуры обработчика события и её программирование.
Создадим заготовку процедуры-обработчика события OnClick командной кнопки ‘График функции’ двойным щелчком левой кнопки мыши на ней.
В полученную заготовку введем описания переменных и операторы, реализующие вычисления функции и отображение её графика. Для этого:
1. Между заголовком процедуры и операторной скобкой begin введем секцию var, в которой опишем типы переменных:
var
t0,tk,w,t,h,y:real;
n,i:integer;
2. В тело процедуры запишем операторы, реализующие:
- присваивание переменным начальных значений, приведенных в задании;
- очистку серии Series1 от данных;
- в цикле: вычисление значений аргумента, функции и отображения их в Chart1.
Текст процедуры может выглядеть так:
procedure TForm1.Button1Click(Sender: TObject);//Заголовок процедуры
var//Секция описания переменных
t0,tk,w,t,h,y:real;
n,i:integer;
begin//Начало тела процедуры
w:=0.5;
tk:=125;
n:=80;
h:=tk/80;
t:=0.0;
Series1.Clear;
for i:=0 to 80 do//Заголовок оператора цикла
begin
y:=exp(-0.04*t)*sin(w*t);
Series1.AddXY(t,y,' ',clTeeColor);
t:=t+h;
end;
end;//Конец описания процедуры
По мере оформления окна, создания заготовки процедуры-обработчика события OnClick, ввода описания переменных и операторов, система Delphi также будет формировать модуль, окончательный текст которого может выглядеть так:
unit Unit1;//Заголовок модуля
interface// Начало интерфейсного раздела
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls,
Forms, Dialogs, TeEngine, Series, ExtCtrls, TeeProcs, Chart, StdCtrls;
type
TForm1 = class(TForm) // Начало описания класса
Button1: TButton;
Chart1: TChart;
Series1: TLineSeries;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;//Конец описания класса
var
Form1: TForm1;
implementation//Начало раздела реализации
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);//Заголовок процедуры
var
t0,tk,w,t,h,y:real;
n,i:integer;
begin
w:=0.5;
tk:=125;
n:=80;
h:=tk/80;
t:=0.0;
Series1.Clear;
for i:=0 to 80 do
begin
y:=exp(-0.04*t)*sin(w*t);
Series1.AddXY(t,y,' ',clTeeColor);
t:=t+h;
end;
end;//Конец описания процедуры
end.//Терминатор
3. Выполнение работы
3.1. Включите ПК, создайте две папки для хранения двух проектов.
3.2. Запустите систему Delphi.
3.3. Выполните каждый пункт задания 1 и сохраните проект в 1-й папке. Откомпилируйте и запустите на выполнение составленную программу ЩЛК на командах:
<Run>→<Run>.
При необходимости, проведите отладку программы.
3.4. Повторите перечисленное в п. 3.3 для задания 2.
4. Форма отчета
Отчет должен содержать:
- основные положения по пунктам 2.1, 2.2;
- для каждого из двух заданий: условие задания; окно проекта и модуль с комментариями.
5. Контрольные вопросы
1. Поясните понятие ‘класс’ и ‘объект’.
2. Поясните текст описания класса (на конкретном примере).
3. Как создаются заготовки процедур- обработчиков событий?
4. Как определяются области локализации переменных?
5. Поясните текст модуля (на конкретном примере). Какие записи производит в модуле система Delphi?
6. Для чего нужен интерфейсный раздел модуля?
7. Для чего нужен раздел реализации модуля?
6. Литература
1. Фаронов В.В. Delphi. Программирование на языке высокого уровня. Учебник для вузов. СПб.: Питер, 2007. 640 с.
Лабораторная работа №6
Программирование вычислений определенных интегралов
в Delphi (метод трапеций)
1. Цель работы: изучить сущность метода трапеций для вычисления определенных интегралов; освоить основные этапы составления программы в системе Delphi; закрепить полученные знания на конкретных примерах.
2. Основные сведения
2.1. Вывод формулы трапеций
Известно, что если функция непрерывна на отрезке и известна её первообразная , то определенный интеграл от этой функции в пределах от a до может быть вычислен по формуле Ньютона-Лейбница:
где , штрихом вверху обозначен знак операции дифференцирования первообразной , по независимой переменной .
Однако во многих случаях первообразная не может быть найдена или не имеет смысла (если задана таблично). Поэтому важное значение имеют численные методы вычисления определенных интегралов. Численные методы являются приближенными, в основу их алгоритмов положен геометрический смысл определенного интеграла.