Решение задач и создание компонента в Delphi

 














ОТЧЕТ

по курсовой работе

по программированию и основам алгоритмизации

Решение задач и создание компонента в Delphi










Томск 2011 г.

РЕФЕРАТ


Всего страниц, приложение, рисунков.

Цель данной курсовой работы заключается в закреплении и расширении теоретических и практических знаний, в развитии навыков программирования на Delphi.

Для решения поставленных задач необходимо:

. Проанализировать каждую задачу.

. Выбрать наиболее рациональный метод решения задач, т. е применяемый алгоритм.


СОДЕРЖАНИЕ


1. Введение

. Решение поставленных задач

.1 Поставленные задачи

.2 Реализация поставленных задач

.2.1 Задача № 1

.2.2 Анализ полученных результатов

.3.1 Задача № 2

.3.2 Анализ полученных результатов

. Заключение

. Список литературы

. Приложение 1 (Листинг модуля задач № 1, 2 3)


1.Введение


Научно-технический прогресс стремительно увеличивает темпы обработки информации. В связи с этим, резко возрастает потребность в быстром и качественном решении сложных задач. Все это требует максимального упрощения и ускорения процесса разработки приложений и использование ранее произведенных программных фрагментов.

Cреда Delphi включает в себя полный набор визуальных инструментов для скоростной разработки приложений (RAD - rapid application development), поддерживающей разработку пользовательского интерфейса и подключение к корпоративным базам данных.- это греческий город, где жил дельфийский оракул. И этим именем был назван новый программный продукт с феноменальными характеристиками.- это комбинация нескольких важнейших технологий:

·Высокопроизводительный компилятор в машинный код

·Объектно-ориентированная модель компонент

·Визуальное (а, следовательно, и скоростное) построение приложений из программных прототипов

·Масштабируемые средства для построения баз данных.- библиотека визуальных компонент, включает в себя стандартные объекты построения пользовательского интерфейса, объекты управления данными, графические объекты, объекты мультимедиа, диалоги и объекты управления файлами, управление DDE и OLE. Визуальные компоненты в Delphi обладают большой гибкостью. [1]использует структурный объектно-ориентированный язык (Object Pascal), который сочетает с одной стороны выразительную мощь и простоту программирования, характерную для языков 4GL, а с другой стороны эффективность языка 3GL. Программисты немедленно могут начать производить работающие приложения, и им не придется для этого изучать особенности программирования событий в Windows. Delphi полностью поддерживает передовые программные концепции включая инкапсуляцию, наследование, полиморфизм и управление событиями.

В данном отчёте приведены результаты курсовой работы по программированию в среде Delphi. Во время этой работы было реализовано решение поставленных задач с использованием ЭВМ.

В отчете представлены: постановка задачи, листинг программы, схема алгоритма реализации, подробное описание решения поставленных задач.


2. РЕШЕНИЕ ПОСТАВЛЕННЫХ ЗАДАЧ


.1 Поставленные задачи


1. Целой переменной s присвоить сумму цифр трёхзначного целого числа k.

. Числа Фибоначчи (fn) определяются формулами f0=f1=1; fn-1+fn-2 при n=2,3… Определить 40-е число Фибоначчи.

Для решения поставленных задач использовался язык программирования Object Pascal. Программы написаны с использованием многих функций, процедур и компонентов Delphi.


.2 Реализация поставленных задач


.2.1 Задача №1

Целой переменной s присвоить сумму цифр трёхзначного целого числа k.

Для решения данной задачи необходимо написать программу которая находила бы количество сотен, десятков и единиц трёхзначного числа, и считала их сумму.

Приступим к созданию формы. Внешний вид формы, отвечающей за создание интерфейса пользователя для решения задачи, приведён на рис.1


Рис. 1. Интерфейс программы

На форме расположим окнa редактирования Edit1,Edit2. С помощью Label1,Label2 поясняются окна редактирования: «Введите число k», «S». При нажатии на кнопку Button1 «Вычислить» организуется захват события "Нажатие на кнопку", при котором происходит обработка информации, введённой в окно Edit1. В результате окно Edit2 выводит результат работы программы. Нажатие на кнопку Bitbtn1 "Close" позволяет прервать выполнение программы.

Блок-схема алгоритма решения задачи №1 приведена на рисунке 2:












Рис.2. Блок-схема алгоритма решения задачи №1


В блоке 1 вводится переменная. В блоке 2 происходит вычисление суммы. В блоке 3 происходит вывод результата.

Распечатка процедуры приведена в листинге 1:


Листинг 1

procedure TForm1.Button1Click(Sender: TObject);:=StrToInt(Edit1.Text);:=k div 100+k div 10 mod 10+k mod 10;:=IntToStr(s);.Text:=ResultStr;;

программирование delphi алгоритмическое

Подробная распечатка модуля, решающего поставленную задачу, представлена в приложении A (часть 1).


2.2.2Анализ полученных результатов

Для проверки правильности выполнения программы произведем расчет математически, полученные выражения сравним с результатом выполнения программы.

Математический расчет:


K=135

S=1+3+5=9


Результат работы программы приведены на рис3.


Рис.3.Результат работы программы

Полученные результаты совпадают. Из этого можно сделать вывод о правильности работы программы при вычислении суммы цифр трёхзначного целого числа k.


.3.1 Задача №2

Числа Фибоначчи (fn) определяются формулами f0=f1=1; fn-1+fn-2 при n=2,3… Определить 40-е число Фибоначчи.

Рассмотрим алгоритм решения задачи.

Числа Фибоначчи - это ряд чисел, в котором каждый последующий член равен сумме двух предыдущих. Любой n-ый член ряда можно найти по формуле Бине: (a1n - a2n)/?5. Где a1 = (1 +?5)/2; a2 = (1 - ?5)/2.

Теперь приступим к созданию формы. Внешний вид формы, отвечающей за создание интерфейса пользователя для решения задачи, приведён на рис. 4:


Рис.4. Интерфейс программы


Для удобства просмотра результатов выполнения поставленной задачи на форму был помещен стандартный компонент Edit1. Окно поясняется Label1 - «40-е число Фибоначчи». При нажатии на кнопку Button1 «Вычислить» организуется захват события "Нажатие на кнопку", при котором происходит обработка информации. В результате окно редактирования Edit1 выводит результат работы программы. Нажатие на кнопку BitBtn1 - "Close" позволяет прервать выполнение программы.


Блок-схема алгоритма решения задачи №2 приведена на рисунке 5:












Рис. 5. Блок-схема алгоритма решения задачи №2


В блоке 1 по формуле рассчитывается 40-е число Фибоначчи.

Распечатка процедуры представлена в листинге 2:


Листинг 2TForm1.Button1Click(Sender: TObject);:=40;

{Вычисляем}:=(1 + sqrt(5))/2;:=-(1 - sqrt(5))/2;:=(exp(N*ln(a1)) - exp(N*ln(a2)))/sqrt(5);

{Выводим рез-тат}.Text:=FloatToStr(f);;


Подробная распечатка модуля, решающего поставленную задачу, представлена в приложении 1 (часть 2).


.2.2 Анализ полученных результатов

Результат работы программы представлен на рисунке ниже:


Рис. 6.Результат работы программы.


По результатам работы программы, можно сделать вывод, что полученные данные полностью соответствуют действительности.

Заключение


Данные программы отвечают заданным требованиям. Вычислена сумма цифр трёхзначного целого числа k.; по формуле Бине определено 40-е число Фибоначчи.

В процессе выполнения курсовой работы были освоены многие особенности и тонкости программирования в среде Delphi. Также был освоен способ перехода от алгоритмического решения к непосредственной программной реализации на языке Object Pascal с использованием всех необходимых средств данного языка. После анализа полученных результатов можно сделать вывод о правильности решения поставленных задач.


Список литературы


1. Вебсайт #"justify">Приложения


Приложение 1

(Листинг модуля задач №1, 2,)


// ЧАСТЬ 1 (задача №1)


nit Unit22;


, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, StdCtrls, Buttons;

= class(TForm): TLabel;: TLabel;: TEdit;: TEdit;: TBitBtn;: TButton;: TButton;Button1Click(Sender: TObject);Button2Click(Sender: TObject);

{ Private declarations }

{ Public declarations };

,k:integer;:string;

: TForm1;



{$R *.dfm}

TForm1.Button1Click(Sender: TObject);:=StrToInt(Edit1.Text);:=k div 100+k div 10 mod 10+k mod 10;:=IntToStr(s);.Text:=ResultStr;;TForm1.Button2Click(Sender: TObject);.Text:=' ';.Text:=' ';;.


//ЧАСТЬ 2 ( задача № 2)Unit1;

, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, Buttons, StdCtrls;

= class(TForm): TEdit;: TLabel;: TButton;: TBitBtn;Button1Click(Sender: TObject);

{ Private declarations }

{ Public declarations };


var

{Переменная для хранения числа, тип real так как значение 40 член ряда Фидоначчи больше максимального значения типа real}

f: extended;

{a1 и a2 необходимы для вычисления}

a1, a2: real;

{Номер числа в ряду}

n: integer;: TForm1;


{$R *.dfm}TForm1.Button1Click(Sender: TObject);:=40;

{Вычисляем}:=(1 + sqrt(5))/2;:=-(1 - sqrt(5))/2;:=(exp(N*ln(a1)) - exp(N*ln(a2)))/sqrt(5);

{Выводим рез-тат}.Text:=FloatToStr(f);;


ОТЧЕТ по курсовой работе по программированию и основам алгоритмизации Решение задач и создание комп

Больше работ по теме:

КОНТАКТНЫЙ EMAIL: [email protected]

Скачать реферат © 2017 | Пользовательское соглашение

Скачать      Реферат

ПРОФЕССИОНАЛЬНАЯ ПОМОЩЬ СТУДЕНТАМ