Автор работы: Пользователь скрыл имя, 04 Марта 2013 в 17:45, курсовая работа
Алгоритм - это точная последовательность предписаний, исполнение которых позволяет посредством конечного числа шагов получить решение задачи, однозначно определяемое исходными данными.
Тема актуальна, так как в любой среде программирования реализуются основные алгоритмические конструкции, развивающий алгоритмический стиль мышления, важность которого отмечена многими учёными. Ими подчёркивалась необходимость разработки алгоритмов.
Цель данного курсового проекта заключается в изучении основных алгоритмических конструкций и описании разработки программы в среде Delphi.
Введение 3
1. Основные алгоритмические конструкции: 6
1.1 Циклический алгоритм. 6
1.2 Линейный алгоритм. 14
1.3 Разветвляющийся алгоритм. 14
2. Разработка программы в среде Delphi, показывающая информацию об учениках 16
2.1 Постановка задачи 16
2.2 Блок-схема 16
2.3 Программный код 17
2.4 Результаты работы 18
Выводы и предложения: 20
Список используемой литературы: 20
янв, мар, май, июл, авг, окт, дек: Write('31');
апр, июн, сен, ноя: Write('30');
фев: Write('28');
else Write ('это не месяц');
end;
End.
Циклические конструкции.
1. Цикл с предусловием.
Для реализации циклов с предусловием используется составной оператор, включающий оператор while, do, операторные скобки.
В общем виде цикл реализуется записью:
while <условие> do <действие>;
Если тело цикла содержит более одного действия, то необходимо использовать операторные скобки:
while <условие> do
begin
<оператор 1>;
<оператор 2>;
...
<оператор n>;
end;
2. Цикл с постусловием.
Для реализации цикла используется составной оператор, состоящий из операторов repeat и until.
В общем виде цикл записывается так:
Repeat
<действие>;
until <условие>;
Пример: задано целое число.
Вывести на печать все цифры введенного
числа.
1 способ:
|
var a,b:longint; |
2 способ:
|
var a,b:longint; |
3. Цикл с параметром.
Для реализации в языке
Pascal используется составной оператор,
состоящий из операторов for, to, downto, do и
при необходимости из операторных скобок.
Переменная параметр обязательно объявляется
в декларационной части программы и может
принадлежать одному из порядковых типов.
Если при изменении переменной параметра необходимо использовать переход к следующему значению, то используется оператор to; если переход необходимо осуществить к предыдущему значению, то используется оператор downto. Тогда в общем виде цикл записывается так:
for I:=I0 to In do
begin
<оператор 1>;
<оператор 2>;
...
<оператор n>;
end;
В алгоритмическом языке линейным является алгоритм, состоящий из
команд, выполняющихся одна за другой. Они в записи алгоритма располагаются
в том порядке, в каком должны быть выполнены предписываемые ими действия.
Такой порядок выполнения называется естественным. Последовательность команд образует составную команду «цепочка», которая в записи блок-схемой имеет вид, приведенный на рисунке 2.
Рис.2 Блок-схема линейной структуры.
В математике к линейным алгоритмам относятся алгоритмы, представленные формулами. Они наиболее просты для программирования. Заметим, что естественный способ кодировки формул делает программу легко читаемой, но нередко приводит к лишним вычислениям, поэтому, чтобы избежать повторных вычислений и сократить общее количество операций выполняйте тождественные преобразования выражений. С другой стороны, надо знать, что не всегда следует осуществлять оптимизацию, поскольку она является не правилом, а исключением. Этому есть три причины, главная из которых состоит в том, что оптимизация ухудшает наглядность программ, вторая - выгоды от оптимизации должны быть существенными и третья - современные системы, как правило, имеют удовлетворительные оптимизирующие компиляторы.
При исполнении алгоритмов приходится не только находить значения
величин, но и анализировать их свойства, сравнивать их друг с другом и в
зависимости от результата сравнения выбирать ту или иную ветвь алгоритма.
Алгоритмы, имеющие несколько ветвей, называются нелинейными. К таким
относятся разветвляющиеся и циклические алгоритмы. Для их записи
применяются составные команды.
Базовая структура "ветвление" определяет выполнение действий в
зависимости от выполнения условия. Каждый из путей ведет к общему выходу,
так что работа алгоритма будет продолжаться независимо от того, какой путь
будет выбран.
Язык блок-схем
|Язык QBasic
|Неполное
|IF Условие THEN действия
|Полное
|IF Условие THEN действия 1
|ELSE действия 2
Пример алгоритма ветвления на алгоритмическом языке QBasic:
INPUT «1 или 2?»
IF=1 OR I=2 THEN
PRINT “Ок”
ELSE
PRINT “Вне диапазона”
END IF
Разветвляющаяся блок-схема приведена на рисунке 3.
Рис. 3 Разветвляющаяся блок-схема
Полная форма ветвления.
If <условие>
Then <оператор 1>
Else <оператор 2>;
Неполная форма ветвления
If <условие>
Then <оператор 1>; [6]
Полное ветвление позволяет организовать две ветви в алгоритме (то или иначе), каждая из которых ведет к общей точке их слияния, так что выполнение алгоритма продолжается независимо от того, какой путь был выбран.
Неполное ветвление
Разработать программу для сохранения и обработки информации об учениках (ФИО, класс, адрес и т.д.). В программе сделать несколько отчётов:
|unit жихарева;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Data.DB, Data.Win.ADODB, Vcl.StdCtrls,
Vcl.ExtCtrls, Vcl.Grids, Vcl.DBGrids, Vcl.ComCtrls;
type
TForm1 = class(TForm)
ComboBox1: TComboBox;
PageControl1: TPageControl;
DBGrid1: TDBGrid;
PaintBox1: TPaintBox;
DataSource1: TDataSource;
Button1: TButton;
ADOConnection1: TADOConnection;
ADODataSet1: TADODataSet;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
ADODataSet1.Close;
case ComboBox1.ItemIndex of
0:ADODataSet1.CommandText:='
1:ADODataSet1.CommandText:='
2:ADODataSet1.CommandText:='
end;
ADODataSet1.Open;
end;
end.
Ученики, проживающие в одном доме
Учащиеся одного класса
Результат формирования всех учеников
В данной работе мы узнали, что такое алгоритм, и какое значение он имеет в повседневных задачах, и так алгоритм – это точная последовательность предписаний, исполнение которых позволяет посредством конечного числа шагов получить решение задачи, однозначно определяемое исходными данными. Значение его в решении повседневных задачах играет важную роль, так например информатика, как и арифметика, тоже дает явно необходимые знания для выживания человека в современном мире. Например, умение программировать домашнюю бытовую технику: видеомагнитофон (составление списка записываемых телепередач), магнитофон (составление списка записываемых дорожек аудио-CD), сотовый телефон (запоминание номеров, установка параметров, управление роумингом, управление голосовой почтой), часы и таймеры в любом бытовом приборе (выставление и корректировка времени), микроволновые печи, кофеварки, хлебопечки, телевизоры, наконец, компьютеры. Здесь необходимо составление алгоритма, запись которого осуществляется на языке прибора (кодирование в соответствии с прилагаемой инструкцией) с последующей загрузкой составленной программы в компьютер (домашнего) прибора.
Далее мы выяснили, что существуют 3 вида алгоритмов: линейный, разветвляющийся с полным и неполным ветвлением и циклический, который в свою очередь делится на цикл с постусловием и предусловием.
Впоследствии написания данной работы, было необходимо решить задачу на языке Delphi и описать этапы её разработки. В результате чего получилась программа, в которой представлена информация об учениках: все ученики одного класса; проживают в одном доме.