Характеристика управляющих структур программирования, компонентов и возможностей Delphi, путем решения задач. Особенности расчета значений функции и числового ряда, построение графика функции с помощью TChart. Анализ методов преобразования массивов.
Аннотация к работе
Для создания программы использовались компоненты из вкладок Standard и Additional: Button - кнопка; Создаем форму и изменяем необходимые свойства главной формы в окне свойств: Height - ширина формы; Добавляем на главную форму необходимые элементы управления: Button - запуск вычислений, открытие окна графика, выход из программы; Добавляем на главную форму необходимые элементы управления: Button - запуск вычислений, открытие окна графика, выход из программы; begin form7.showmodal; // показывает форму задание №3 end;Преимущества: В данной курсовой работе были приведены три задачи при решении которых были рассмотрены различные управляющие структуры программирования, разные компоненты и возможности Delphi. В первой программе было реализовано табулирование, расчет значений функции и числового ряда и построен график функции с помощью компоненты TCHART. Эта программа может быть реализована в разных сферах экономики для подсчета погрешности и построения графика по определенным критериям. Во второй программе был использован массив.
План
Содержание
Введение
Минимальные системные требования для использования Delphi
План работы для первой задачи
Главная программа
Свойства и структура главной программы
Код главной программы
Задание №1
Алгоритм первой программы: Свойства и структура первой программы
Код первой программы
Задание №2
Свойства и структура второй программы
Код второй программы
Результат выполнения программы
Задание № 3
Алгоритм третьей программы
Свойства и структура третьей программы
Код третьей программы
Инструкция по применению программы
Заключение
Список литературы
Введение
Целью данной курсовой работы является выполнение заданий на Delphi по предмету “программирование на языках высокого уровня».
Данная работа содержит три задачи, написанные на Delphi. Это задачи на разные темы, в которых применяются различные элементы языка программирования и компоненты Delphi.
В первой задаче вычисляется сумма ряда, значение функции, погрешность и строится график функции. Во второй задаче вводим, выводим и преобразуем элементы массива. В третьей задаче используется графика, движение фигуры по определенному контуру.
Для создания программы использовались компоненты из вкладок Standard и Additional: Button - кнопка;
STRINGGRID - таблица для отображения каких-либо значений;
Label - компонента, для отображения не редактируемого текста;
Edit - компонент ввода-вывода текстовой строкиж
Panel - панель с надписью;
TCHART - компонента для прорисовки графика.
Первые пять компонентов наиболее часто применяются при написании программ. Изменяя их свойства можно писать большое количество программ с разным содержанием задачи. Последний компонент из данного списка очень полезны при решении конкретных задач.
Помимо этого для решения третей задачи были использованы функции API, позволяющие управлять интерфейсом приложений Windows.
Минимальные системные требования для использования Delphi
Процессор - Intel Pentium 233 МГЦ и выше
Операционная система - Microsoft Windows XP, Windows 2000
Оперативная память - 64 Мбайт (рекомендуется 128 Мбайт)
Пространство на жестком диске - 450 Мбайт
Монитор - SVGA или выше
Другое аппаратное обеспечение - CD-ROM, мышь
План работы для первой задачи
Создаем форму и изменяем необходимые свойства главной формы в окне свойств: Height - ширина формы;
Width - длина формы;
Caption - название формы.
Добавляем на главную форму необходимые элементы управления: Button - запуск вычислений, открытие окна графика, выход из программы;
STRINGGRID - отображение таблицы значений x, y, s.
Label - отображение не редактируемого текста;
Edit - ввод данных для вычислений.
Прописываем в компонентах Edit текст по умолчанию в свойство Text.
Изменяем свойства добавленного элемента управления STRINGGRID: - COLCOUNT
- ROWCOUNT
- FIXEDCOLS
- FIXEDROWS
Пишем для кнопок алгоритмы, которые будут выполнять различные действия. Прописываем действие на открытие формы на главной форме работы.
Создаем отдельную форму для графика, на нее помещаем компонент TCHART. Пишем команду ее открытия на одну из кнопок.
Запускаем программу с целью проверки ее работоспособности. Сохраняем проект.
План работы для второй задачи
Создаем форму и изменяем необходимые свойства главной формы в окне свойств: Height - ширина формы;
Width - длина формы;
Caption - название формы.
Добавляем на главную форму необходимые элементы управления: Button - запуск вычислений, открытие окна графика, выход из программы;
STRINGGRID - отображение таблицы значений x, y, s.
Label - отображение не редактируемого текста;
Edit - ввод данных для формирования массивов и вывода полученных числовых рядов.
Изменяем свойства добавленного элемента управления STRINGGRID: - COLCOUNT
- ROWCOUNT
- FIXEDCOLS
- FIXEDROWS
Пишем для кнопок алгоритмы, которые будут выполнять различные действия. Прописываем действие на открытие формы на главной форме работы. Запускаем программу с целью проверки ее работоспособности. Сохраняем проект.
План работы для третьей задачи
Создаем форму и изменяем необходимые свойства главной формы в окне свойств: Height - ширина формы;
Width - длина формы;
Caption - название формы.
Задаем для формы регион, в который она будет вписана.
Пишем алгоритм движения по кромке экрана. Запускаем программу с целью проверки ее работоспособности. Сохраняем проект.
begin form3.SHOWMODAL; //показывает форму графика end;
end.
Задание №2
Дана матрица размера n*(n 1), числа а1, …, an 1, b1, …, bn 1, натуральные числа р, g (p <= n, g <= n 1). Образовать новую матрицу размера (n 1)*(n 2) вставкой после строки с номером р данной матрицы новой строки с элементами a1, …, an 1 и последующей вставкой после столбца с номером g нового столбца с элементами b1, …, bn 1.
Во второй программе использовались компоненты: Edit - для ввода параметров заполнения и вывода числовых рядов;
Button1-кнопка для заполнения числовых рядов и массивов;
Button2-кнопка для закрытия формы;
STRINGGRID1-таблица для вывода начального массива a[i;j];
STRINGGRID2-таблица для вывода конечного массива b[i;j];
Компоненты, которые использовались для оформления: Label- компонента для отображения текста.
for i:=1 to n 1 do begin a[i]:=random(98) 1; // формируем значения первого числового ряда edit4.Text:=edit4.Text inttostr(a[i]) " "; // выводим значения первого числового ряда b[i]:=random(98) 1; // формируем значения второго числового ряда edit5.Text:=edit5.Text inttostr(b[i]) " "; // выводим значения второго числового ряда end;
// задаем количество сток и столбцов таблиц stringgrid1.COLCOUNT:=n 2;
stringgrid1.ROWCOUNT:=n 1;
stringgrid2.COLCOUNT:=n 3;
stringgrid2.ROWCOUNT:=n 2;
// нумеруем строки и столбцы таблиц for i:=1 to n do stringgrid1.Cells[0,i]:=inttostr(i);
for i:=1 to n 1 do stringgrid1.Cells[i,0]:=inttostr(i);
for i:=1 to n 1 do stringgrid2.Cells[0,i]:=inttostr(i);
for i:=1 to n 2 do stringgrid2.Cells[i,0]:=inttostr(i);
for i:=1 to n do for j:=1 to n 1 do begin mas1[i,j]:=random(98) 1; // формируем значения исходного массива stringgrid1.Cells[j,i]:=inttostr(mas1[i,j]); // выводим значения исходного массива в таблицу end;
// формируем промежуточный массив вставкой строки в исходный массив for i:=1 to p do for j:=1 to n 1 do mas[i,j]:=mas1[i,j];
for j:=1 to n 1 do mas[p 1,j]:=a[j];
for i:=p 2 to n 1 do for j:=1 to n 1 do mas[i,j]:=mas1[i-1,j];
// формируем конечный массив вставкой столбца в промежуточный массив for j:=1 to q do for i:=1 to n 1 do mas2[i,j]:=mas[i,j];
for i:=1 to n 1 do mas2[i,q 1]:=b[i];
for j:=q 2 to n 2 do for i:=1 to n 1 do mas2[i,j]:=mas[i,j-1];
for i:=1 to n 1 do for j:=1 to n 2 do stringgrid2.Cells[j,i]:=inttostr(mas2[i,j]); // выводим в таблицу конечный массив end;
procedure TFORM4.Button2Click(Sender: TOBJECT);
begin form4.close; // закрывает форму задания №2 end;
end.
Результат выполнения программы
Задание № 3
Движение закрашенного круга по кромке экрана с изменением цвета при изменении направления движения.
{$R *.dfm} procedure TFORM7.FORMCLICK(Sender: TOBJECT); //движении круга по экрану var i, j : integer;
begin for i:=1 to screen.Width-r do // пока не достигнут конец экрана begin form7.Color:=CLGREEN; //задаем форме зеленый цвет form7.Left:=i; //задаем отступ формы слева sleep(5); //задержка времени
//form7.Top:=j;
end;
for j:=1 to screen.Height-r do // пока не достигнут низ экрана begin form7.Color:=CLRED; // задаем форме красный цвет form7.Top:=j; //задаем отступ сверху sleep(5); // задержка времени end;
for i:=screen.Width-r downto 1 do // пока не достигнуто начало экрана begin form7.Color:=CLBLUE; // задаем форме синий цвет form7.Left:=i; // задаем отступ слева sleep(5); //задержка времени
//form7.Top:=j;
end;
for j:=screen.Height-r downto 1 do // пока не достигнут верх экрана begin form7.Color:=CLYELLOW; // задаем форме желтый цвет form7.Top:=j; //задаем отступ сверху sleep(5); // задержка времени end;
end;
procedure TFORM7.FORMCREATE(Sender: TOBJECT); // задаем визуальную форму формы задания №3 var
FORMRGN : HRGN;
//i, j : integer;
begin
FORMRGN:=CREATEELLIPTICRGN(0,0,r,r);
SETWINDOWRGN(Handle, FORMRGN, True);
end;
procedure TFORM7.FORMDBLCLICK(Sender: TOBJECT);
begin close;
end;
procedure TFORM7.FORMSHOW(Sender: TOBJECT);
begin form7.Left:=1;
form7.Top:=1;
end;
end.
Инструкция по применению программы
Для запуска курсовой работы нужно в папке «Туктаров» двойным щелчком запустить файл «Project» с расширением .ехе. На экране появится главное окно. На нем находятся три кнопки, каждая из которых соответствует одному из трех заданий.
При нажатии на первую кнопку - «Задание 1» появится форма на которой будут находиться текст задания, таблица результатов расчета, управляющие кнопки. График строится автоматически при выполнении расчетов. Расчеты производятся при нажатии кнопки «Старт». Для просмотра графика необходимо воспользоваться кнопкой «График». Для возврата в основное окно работы предназначена кнопка «Финиш».
При нажатии на вторую кнопку - «Задание 2» на экране появится форма с полями задания значений формирования массивов, таблицами для вывода массивов и управляющими кнопками. Заполнение массивов в соответствии с заданием происходит по нажатии кнопки «Старт». Возврат к основному окну предусматривает кнопка «Финиш».
При нажатии на третью кнопку «Задание 3» на экране появляется круг. Для начала движения необходимо кликнуть на нем. После полного оборота по экрану станет доступным возврат в основное окно программы нажатием клавиш Alt F4.
Вывод
Преимущества: В данной курсовой работе были приведены три задачи при решении которых были рассмотрены различные управляющие структуры программирования, разные компоненты и возможности Delphi.
В первой программе было реализовано табулирование, расчет значений функции и числового ряда и построен график функции с помощью компоненты TCHART. Эта программа может быть реализована в разных сферах экономики для подсчета погрешности и построения графика по определенным критериям.
Во второй программе был использован массив. Преобразуя исходный массив, был создан новый массив. Данная программа также может применена в различных информационных сферах.
В третьей программе реализована возможность изменения интерфейса формы при помощи стандартных функций Windows API. Данные возможности широко применяются в мультимедийных приложениях.
Возникновение ошибочных ситуаций при работе программы: При запуске программы могут возникнуть ошибочные ситуации. Например, если в первом задании нажать кнопку просмотра графика до выполнения расчета, то график будет пустым. Также могут возникнуть ошибки при задании параметров вычисления.
Во втором задании к ошибке может привести попытка сформировать массивы без задания их величины.
В третьем задании существует недостаток невозможности остановить движения круга до прохождения полностью экрана, а также может возникнуть ошибка при попытке использовать основную форму программы без закрытия формы задания 3.
Список литературы
1. Архангельский А. Я. Программирование в Delphi г. Москва: издательство «Бином», 2005г. - 332 с.;
2. Ахметов А. Р. Программирование в Delphi 7 . г.Москва: издательство «Бином-Пресс», 2003 г. - 780 с.;
3. Бобровский С.И. Delphi7 - Учебный курс. г. Санкт-Петербург: издательство «Питер», 2004 г. - 736 с.;
4. Глушаков С. В. Delphi 2007 г. Москва: издательство «Хранитель», 2008 г. - 635 с.;
5. Жуков А. В. Изучаем Delphi. г. Санкт-Петербург: издательство «Питер», 2001 г. - 352 с.;
6. Маслобоев А. В. Delphi г. Санкт-Петербург: издательство «БХВ-Петербург», 2005 г. - 496 с.;
7. Стивенс Р.А. Delphi. Готовые алгоритмы. г. Москва: издательство «ДМК пресс», 2001 г. - 384 с.;
8. Фаронов В. В. Delphi. Программирование на языке высокого уровня г. Санкт-Перетбург: издательство «Питер», 2007 г. - 640 с.;
9. Хузятов Ш. Ш. Delphi 7. Основные компоненты и элементы языка программирования г. Набережные Челны: издательство КАМПИ, 2005г. - 116 с.;