Анализ и постановка задачи проектирование программы построение алгоритмов разработка структур данных

В соответствии с заданием на курсовое проектирование темой является «Программное средство «Web-браузер».

1.1 Анализ предметной области

Главной целью является создание быстрого, «легкого» и понятного в оформлении web-браузера. Он будет отличается небольшим размером, удобством в работе, хорошей скоростью работы, прекрасно подходит для работы на машинах с небольшим объемом ОЗУ и маломощным CPU. Как следствие, браузер вынужден придерживаться философии рабочей среды.

Она заключается в максимальном упрощении интерфейса, в оптимизации набора функций. Программа должна выполнять свою работу, только свою работу и делать все качественно. Задача заключается в отображении содержимого Всемирной паутины.

1.2 Функциональные требования к программе

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

1) открытие и просмотр файлов следующих форматов: *.htm,*.html,*.xml,*.mht

2) поиск информации в наиболее известных интернет сервисах (Google, Rambler, Яндекс, Yahoo)

Алгоритмы и структуры данных простыми словами. Зачем учить алгоритмы? #codonaft

3) масштабирование просматриваемой страницы

4) Редактирование загруженной страницы

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

6) Создание закладок

7) сведения о разработчике

8) сведения о программе

Языком программирования является Object Pascal. Среда разработки приложения — Borland Delphi. Выбор обосновывается тем, что в данной среде разработки предоставляется удобная система визуального программирования. Соответственно, разработчик уже не тратит много времени на построение интерфейса программы, так как ему предоставляются стандартные элементы оконного интерфейса в виде компонентов. Скорость разработки тем самым повышается.

ПРОЕКТИРОВАНИЕ ПРОГРАММЫ И РАЗРАБОТКА АЛГОРИТМА

2.1 Структурная схема программы

На рисунке 2.1 представлена структурная схема программы

Структурная схема программы

Рисунок 2.1 — Структурная схема программы

2.2 Блок-схема процедуры поиска

Блок-схема процедуры быстрого поиска информации на наиболее известных поисковых серверах находится в ПРИЛОЖЕНИИ А.

2.3 Проектирование интерфейса

По ходу построения интерфейса применены следующие компоненты: MainMenu, sSpeedButton, sEdit, WebBrowser, sListBox, sComboBox, sStatusBar, sGauge. На рисунке 2.2 показаны названия используемых компонентов

Вид главной формы (Unit 1)

Рисунок 2.2 — Вид главной формы (Unit 1)

Вид окна добавления закладок изображен на рисунке 2.3. Используемые компоненты: sLabel, sEdit, sSpeedButton.

Вид окна добавления закладок (Unit 3)

Рисунок 2.3 — Вид окна добавления закладок (Unit 3)

На рисунке 2.4 изображены данные о разработчике, а так же можно посетить официальный сайт УО «ПГАЭК».

Как БЫСТРО изучить АЛГОРИТМЫ и научиться решать задачи? Книги, сайты, инструменты

Вид формы о разработчике (Unit 2)

Рисунок 2.4 — Вид формы о разработчике (Unit 2)

На рисунке 2.5 отображены сведения о программе. Используемые компоненты: sLabel, sSpeedButton. Также нажав на кнопку «Инструкция по эксплуатации» можно будет просмотреть инструкцию выполнения действий над просмотром страниц.

Вид формы о программе (Unit 5)

Рисунок 2.5 — Вид формы о программе (Unit 5)

На рисунке 2.6 отображена инструкция выполнения действий над просмотром страниц. Используемые компоненты: sLabel, sSpeedButton.

Инструкция по эксплуатации (Unit 4)

Рисунок 2.6 — Инструкция по эксплуатации (Unit 4)

2.4 Компоненты Программного средства «Web-браузер»

В данном курсовом проекте использовались компоненты:

— sLabelFX, sEdit, sGauge, sComboBox, sPanel, sSpeedButoon со страницы Alphastandard;

— Image со страницы Addihional;

— MainMenu со страницы Standard;

— sOpenDialog, sSaveDialog, SkinManager со страницы AlphaTools;

sLabel — Служит для отображения текста на экране;

sEdit — Используется для ввода пользователем однострочных текстов. Может использоваться для отображения текста;

sGauge — Предназначенные для отображения в стиле Windows 95/98 хода процессов, занимающих заметное время, например, копирования больших файлов, настройку приложения, установку приложения на компьютере и т.п;

sComboBox — Компонент служащий для отображения списков строк;

sPanel — С их помощью компонуются различные элементы интерфейса;

sSpeedButoon — Имеют возможность отображения пиктограмм и могут использоваться как обычные управляющие кнопки или как кнопки с фиксацией нажатого состояния;

Image — Отображает графическое изображение на форме;

MainMenu — Позволяет конструировать и создавать полосу главного меню формы и выпадающие меню;

sOpenDialog — Предназначен для создания окна диалога «Открыть файл»;

sSaveDialog — Предназначен для создания окна диалога «Сохранить файл»

sSkinManager — компонент для запуска и отображения скинов;

При разработке программного средства был использован, дополнительный компанент (SkinManager)

Источник: studentopedia.ru

Интернет-программирование / Лекция1-4

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

В более широком смысле под программированием понимают весь спектр деятельности, связанный с созданием и поддержанием в рабочем состоянии программ — программного обеспечения ЭВМ. Более точен современный термин — «программная инженерия» (также иначе «инженерия ПО»).

Сюда входят анализ и постановка задачи, проектирование программы, построение алгоритмов, разработка структур данных, написание текстов программ, отладка и тестирование программы (испытания программы), документирование, настройка (конфигурирование), доработка и сопровождение. Программирование для ЭВМ основывается на использовании языков программирования, на которых записывается программа.

В настоящее время для того, чтобы программа могла быть понята и исполнена ЭВМ, требуется специальный инструмент — транслятор . В настоящее время активно используются так называемые интегрированные среды разработки программ, включающие в свой состав также редактор для ввода и редактирования текстов программ, отладчики для поиска и устранения ошибок в программах, трансляторы с различных языков программирования, компоновщики для сборки программы из нескольких модулей и другие служебные программы. Текстовый редактор среды программирования может иметь специфичную функциональность, такую как индексация имен, отображение документации, средства визуального создания пользовательского интерфейса. С помощью текстового редактора программист производит набор и редактиктирования текста содаваемой программы, который называют исходным кодом («исходник» — на профессиональном жаргоне). Язык программирования определяет синтаксис и изначальную семантику исходного кода, семантика языка программирования может расширяться текстом программы, дополнительными библиотеками и программно-аппаратным окружением, в котором выполняется программа. Компилятор преобразует текст программы в машинный код, непосредственно исполняемый электронными компонентами компьютера . Интерпретатор либо явно не преобразует текст программы в машинный код, либо неявно делает такое преобразование в процессе выполнения программы. Программирование в широком смысле можно разбить на несколько стадий: Анализ Проектирование — разработка комплекса алгоритмов Кодирование и компиляцию — написание исходного текста программы и преобразование его в исполнимый код с помощью компилятора Тестирование и отладку — выявление и устранение ошибок в программах, Испытания и сдачу программ Сопровождение

HTML (от англ. HyperText Markup Language — «язык разметки гипертекста ») — стандартный язык разметки документов во Всемирной паутине . Большинство веб-страниц создаются при помощи языка HTML (или XHTML ). Язык HTML интерпретируется браузерами и отображается в виде документа, в удобной для человека форме.

HTML является приложением («частным случаем») SGML (стандартного обобщѐнного языка разметки) и соответствует международному стандарту ISO 8879. XHTML же является приложением XML . Общее представление Язык HTML был разработан британским учѐным Тимом Бернерсом-Ли приблизительно в 1989 — 1991 годах в стенах Европейского совета по ядерным исследованиям в Женеве ( Швейцария ). HTML создавался как язык для обмена научной и технической документацией, пригодный для использования людьми, не являющимися специалистами в области вѐрстки . HTML успешно справлялся с проблемой сложности SGML путѐм определения небольшого набора структурных и семантических элементов — дескрипторов . Дескрипторы также часто называют « тегами ». С помощью HTML можно легко создать относительно простой, но красиво оформленный документ.

Читайте также:
Что программа которая скачивает информацию с айфона на Андроид

Помимо упрощения структуры документа, в HTML внесена поддержка гипертекста. Мультимедийные возможности были добавлены позже. Изначально язык HTML был задуман и создан как средство структурирования и форматирования документов без их привязки к средствам воспроизведения (отображения). В идеале, текст с разметкой HTML должен был без стилистических и структурных искажений воспроизводиться на оборудовании с различной технической оснащѐнностью (цветной экран современного компьютера, монохромный экран органайзера, ограниченный по размерам экран мобильного телефона или устройства и программы голосового воспроизведения текстов). Однако современное применение HTML очень далеко от его изначальной задачи. Например, тег

, несколько раз использованный для форматирования страницы, которую вы на даный момент читаете, предназначен для создания в документах самых обычных таблиц, но, как можно убедиться, здесь нет ни одной таблицы. С течением времени, основная идея платформонезависимости языка HTML была отдана в своеобразную жертву современным потребностям в мультимедийном и графическом оформлении. Браузеры Текстовые документы, содержащие разметку на языке HTML (такие документы традиционно имеют расширение .html или .htm ), обрабатываются специальными приложениями , которые отображают документ в его форматированном виде. Такие приложения, называемые «браузерами» или «интернет-обозревателями», обычно предоставляют пользователю удобный интерфейс для запроса веб-страниц , их просмотра (и вывода на иные внешние устройства) и, при необходимости, отправки введѐнных пользователем данных на сервер. Наиболее популярными на сегодняшний день браузерами являются Internet Explorer , Mozilla Firefox , Apple Safari , Google Chrome и Opera (см.: Браузер#Рыночные доли ). Версии RFC 1866 — HTML 2.0, одобренный как стандарт 22 сентября 1995 года ; HTML 3.2 [1] — 14 января 1997 года ;

HTML 4.0 [2] — 18 декабря 1997 года; HTML 4.01 [3] (изменения, причѐм более значительные, чем кажется на первый взгляд) — 24 декабря 1999 года ; ISO/IEC 15445:2000 [4] (так называемый ISO HTML, основан на HTML 4.01 Strict) — 15 мая 2000 года . HTML 5 [5] — в разработке. Конец разработки запланирован на 2014 год. Официальной спецификации HTML 1.0 не существует. До 1995 года существовало множество неофициальных стандартов HTML.

Чтобы стандартная версия отличалась от них, ей сразу присвоили второй номер. Версия 3 была предложена Консорциумом всемирной паутины (W3C) в марте 1995 года и обеспечивала много новых возможностей, таких как создание таблиц, «обтекание» изображений текстом и отображение сложных математических формул . Даже при том, что этот стандарт был совместим со второй версией, реализация его была сложна для браузеров того времени. Версия 3.1 официально никогда не предлагалась, и следующей версией стандарта HTML стала 3.2, в которой были опущены многие нововведения версии 3.0, но добавлены нестандартные элементы, поддерживаемые браузерами Netscape Navigator и Mosaic . В версии HTML 4.0 произошла некоторая «очистка» стандарта. Многие элементы были отмечены как устаревшие и нерекомендованные ( англ. deprecated ). В частности, элемент font , используемый для изменения свойств шрифта , был помечен как устаревший (вместо него рекомендуется использовать таблицы стилей CSS ). В 1998 году консорциум Всемирной паутины начал работу над новым языком разметки, основанном на HTML 4, но соответствующим синтаксису XML. Впоследствии новый язык получил название XHTML . Первая версия XHTML 1.0 одобрена в качестве Рекомендации консорциума Всемирной паутины 26 января 2000 года . Планируемая версия XHTML 2.0 должна была разорвать совместимость со старыми версиями HTML и XHTML, но 2 июля 2009 года консорциум Всемирной паутины объявил, что полномочия рабочей группы XHTML2 истекают в конце 2009 года . Таким образом, была приостановлена вся дальнейшая разработка стандарта XHTML 2.0 [6] . Перспективы В настоящее время Консорциум всемирной паутины разрабатывает HTML версии 5 . Черновой вариант спецификации языка появился в Интернете 20 ноября 2007 года . Сообществом WHATWG ( англ. Web Hypertext Application Technology Working Group ), начиная с 2004 года , разрабатывается спецификация Web Applications 1.0, часто неофициально называемая «HTML 5», которая расширяет HTML (впрочем, имея и совместимый с XHTML 1.0 XML-синтаксис) для лучшего представления семантики различных типичных страниц, например форумов , сайтов аукционов , поисковых систем , онлайн-магазинов и т. д., которые не очень удачно вписываются в модель XHTML 2.

Тип элемента документа Имя тега определяет тип элемента. В HTML имя тега определяет лишь правила разметки, так, имя тега «i» (например Курсивный текст ) определяет, что между тегами расположен текст, который следует отображать в браузере в курсивном начертании. XML представляет собой более гибкий стандарт.

Имена тегов в нем не регламентируются жестко: пользователи могут вводить и использовать для своих нужд новые теги (см. XML ). Например, мы сами для себя можем определить, что элементом с именем тега «person» мы определяем тип этого XML элемента, как фамилия имя и отчество.

И скажем, год рождения, как часть информации по данному человеку: XML : Иванов Иван Иванович 1984 Можно даже задать дополнительно в таблицах CSS , что все теги будут определенного цвета. HTML : Иванов Иван Иванович, 1984 Тут уже нет возможности сформировать элемент документа для анализа текста, но оформить можно. Таким образом, HTML представляет собой неструктурированный текст, а XML — документ с иерархической структурой, что дает возможность обработки документа: трансформацию данных, поиск нужных элементов документа и т. д. Структура элемента В SGML и основанных на нем языках ( HTML версий 2—4.01, языки семейства XML и т.д.) элементы должны быть строго вложенными друг в друга, «перехлест» элементов недопустим [6] : неправильно: правильно : Имя Фамилия Распространенное заблуждение, что SGML и HTML разрешают «перехлест» элементов, основанно на нарушающем стандарты [7] поведении старых версий браузеров , пытавшихся «исправлять» ошибки разметки по собственным алгоритмам. Однако SGML (и HTML) допускают применение ряда сокращенных синтаксических конструкций, в том числе необязательные (опциональные) закрывающие и даже открывающие теги (автоматически достраиваемые при разборе документа на основе указанной схемы документа и текущего контекста). В XML, напротив, все теги должны быть открыты и закрыты явным образом, что значительно упрощает алгоритм его разбора и снижает требования к аппаратному обеспечению для него. Примечания 1. ↑ Написание через е (а не э ) регламентировано орфографическим словарем, см. [1] . Элементы могут быть пустыми , то есть не содержащими никакого текста и других данных (например, тег перевода строки
). В этом случае обычно не указывается закрывающий

Строгий ( Strict ): не содержит элементов, помеченных как «устаревшие» или «не одобряемые» ( deprecated ).

Переходный ( Transitional ): содержит устаревшие теги в целях совместимости и упрощения перехода со старых версий HTML. С фреймами ( Frameset ): аналогичен переходному, но содержит также теги для создания наборов фреймов.

Читайте также:
Топ 10 программ для записи экрана на ПК

Варианты DOCTYPE для HTML 5 В HTML 5 используется только один вариант DOCTYPE: Браузерные войны Основная статья : Война браузеров В середине 1990-х годов основные производители браузеров — компании Netscape и Microsoft — начали внедрять собственные наборы элементов в HTML-разметку. Создалась путаница из различных конструкций для работы во Всемирной паутине, доступных для просмотра то в одном, то в другом браузере.

Особенно большие трудности были при создании кросс-браузерных программ на языке JavaScript . Веб-мастерам приходилось создавать несколько вариантов страниц или прибегать к другим ухищрениям. На какое-то время проблема потеряла актуальность по двум причинам: Из-за вытеснения браузером Internet Explorer всех остальных браузеров.

Соответственно, проблема веб-мастеров становилась проблемой пользователей альтернативных браузеров. Благодаря усилиям производителей других браузеров, которые либо следовали стандартам W3C (как Mozilla и Opera ), либо пытались создать максимальную совместимость с Internet Explorer. На современном этапе можно констатировать рост популярности браузеров, следующих рекомендациям W3C (это Mozilla Firefox и другие браузеры на движке Gecko ; Safari , Google Chrome и другие браузеры на движке WebKit ; Opera с движком Presto ). Доля Internet Explorer на данный момент составляет менее 50 %. В современной практике существует возможность упростить разработку кросс-браузерных программ на языке JavaScript, с помощью различных библиотек и фреймворков. Например таких как jQuery , sIFR и др.

Элемент HTML — это основная структурная единица веб-страницы , написанная на языке HTML Структура HTML-документа HTML — это теговый язык разметки документов, то есть любой документ на языке HTML представляет собой набор элементов, причем начало и конец каждого элемента обозначается специальными пометками, называемыми тегами . Регистр, в котором набрано имя тега, в HTML значения не имеет. Элементы могут быть пустыми , то есть не содержащими никакого текста и других данных (например, тег перевода строки
). В этом случае обычно не указывается закрывающий тег. Кроме того, элементы могут иметь атрибуты , определяющие какие-либо их свойства (например, размер шрифта для тега ). Атрибуты указываются в открывающем теге. Вот пример части разметки HTML-документа:

Текст между двумя тегами — открывающим и закрывающим.

Здесь элемент содержит атрибут href. А вот пример пустого элемента:
Каждый HTML-документ, отвечающий спецификации HTML какой-либо версии, обязан начинаться со строки декларации версии HTML , которая обычно выглядит примерно так: Если эта строка не указана, то добиться корректного отображения документа в браузере становится труднее. Далее обозначается начало и конец документа тегами и соответственно. Внутри этих тегов должны находиться теги заголовка ( ) и тела ( ) документа. Варианты DOCTYPE для HTML 4.01 Строгий (Strict): не содержит тегов, помеченных как «устаревшие» или «не одобряемые» (deprecated). Переходный (Transitional): содержит устаревшие теги в целях совместимости и упрощения перехода со старых версий HTML.

Источник: studfile.net

Представление основных структур программирования

Программи́рование — в обычном понимании, это процесс создания компьютерных программ. Программированием также называют настройку электронных устройств и программно-аппаратных комплексов (например, программирование цифровых АТС, программирование бытовых приборов конечным пользователем, запись информации в ПЗУ). Разработку логической схемы для ПЛИС тоже называют программированием.

Введение……………………………………………………………………………..5
1.Основные примеры программирования. 7
1.1.Разновидности структур программирования………………………..………. 7
1.2.Программирование линейных и разветвляющихся процессов……. ……. 9
1.3.Программирование циклических процессов ………………………………. 12
2.Представление основных структур программирования: итерация, ветвление и процедуры в различных языках задач……………………………………………18
2.1.Итерация.………………………………. …………………………………….18
2.2.Ветвление.……………………………………………………………………. 18
2.3Оператор ветвления(Условная инструкция, условный оператор) ………. 19
2.4.Процедура……………………………………………………………………. 20
2.5.Процедуры и функции методы класса…………………………………….…20
Заключение……………………………………………………………………..….23
Список используемых источников……………………………………………….33

1.Основные примеры программирования. . . 7

1.1.Разновидности структур программирования………………………..……… . 7

1.2.Программирование линейных и разветвляющихся процессов……. ..……. 9

1.3.Программирование циклических процессов ………………………………. 12

2.Представление основных структур программирования: итерация, ветвление и процедуры в различных языках задач…………………………………………… 18

2.3Оператор ветвления( Условная инструкция, условный оператор) ………. 19

2.5.Процедуры и функции методы класса…………………………………….… 20

Список используемых источников………………………………………………. 33

Программи́рование — в обычном понимании, это процесс создания компьютерных программ. Программированием также называют настройку электронных устройств и программно-аппаратных комплексов (например, программирование цифровых АТС, программирование бытовых приборов конечным пользователем, запись информации в ПЗУ). Разработку логической схемы для ПЛИС тоже называют программированием. В общем понимании, программирование — это процесс описания функционирования устройства, который может быть выражен либо в структуре самого устройства, либо в виде набора инструкций. Программирование сочетает в себе элементы науки (логика, математика, информатика, кибернетика), инженерной дисциплины, и искусства (авторской творческой деятельности).

В узком смысле (так называемое кодирование) под программированием понимается написание инструкций на конкретном языке программирования, часто по уже имеющемуся алгоритму (плану, методу решения задачи). Соответственно, люди, которые этим занимаются, называются программистами (на жаргоне — кодерами), а те, кто разрабатывает алгоритмы — алгоритмистами, специалистами предметной области, математиками.

В более широком смысле под программированием понимают весь спектр активностей, связанных с созданием и поддержанием в рабочем состоянии программ (программного обеспечения ЭВМ). Более точный и современный термин — программная инженерия, или инженерия ПО. Сюда входят анализ и постановка задачи, проектирование программы, построение алгоритмов, разработка структур данных, написание текстов программ, отладка и тестирование программ (испытания программ), документирование, настройка (конфигурирование), доработка и сопровождение.

Программирование для ЭВМ основывается на использовании языков программирования, на которых записывается программа. Для того, чтобы программа могла быть понята и исполнена ЭВМ, требуется специальный инструмент — транслятор. Основными разновидностями трансляторов являются компилятор и интерпретатор.

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

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

На практике редко встречаются задачи, алгоритм решения которых является линейным. Часто оказывается, что алгоритм решения даже элементарной задачи не является линейным.

Выбор в точке разветвления алгоритма очередного шага программы может быть реализован при помощи инструкций if и case. Инструкция if позволяет выбрать один из двух возможных вариантов, инструкция case — один из нескольких.

Инструкция (цикл) while используется в том случае, если некоторую последовательность действий (инструкций программы) надо выполнить несколько раз, причем необходимое число повторений во время разработки программы неизвестно и может быть определено только во время работы программы.

Типичными примерами использования цикла while являются вычисления с заданной точностью, поиск в массиве или в файле.

Читайте также:
Каково назначение констант в программе 1с бухгалтерия

Инструкция repeat, как и инструкция while, используется в программе в том случае, если необходимо выполнить повторные вычисления (организовать цикл), но число повторений во время разработки программы неизвестно и может быть определено только во время работы программы, т. е. определяется ходом вычислений.

1 ОСНОВНЫЕ ПРИЕМЫ ПРОГРАММИРОВАНИЯ

1.1. Разновидности структур программирования

Программирование представляет собой процесс разработки алгоритма решения задачи и его реализацию на одном из языков программирования.

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

В процессе выполнения алгоритма производятся различные преобразования информации. Эти преобразования осуществляются заданной последовательностью операторов.

Одним из основных понятий в программировании являются термин переменная и принцип следования.

Переменная – это величина, которая при выполнении алгоритма изменяет свое значение. Когда переменной присваивается новое значение, старое – стирается.

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

Поясним сказанное на примере. Пусть требуется составить структурограмму вычисления функции

где у = sin x; значения коэффициента b и аргумента х вводятся.

Структурограмма вычисления будет иметь вид, представленный на рис. П.3.1, где t, z – вспомогательные переменные.

Логическая структура программы может быть выражена комбинацией трех базовых структур: СЛЕДОВАНИЕ, РАЗВЕТВЛЕНИЕ, ЦИКЛ.

Характерной особенностью этих структур является наличие в них одного входа и одного выхода.

Важнейшей базовой структурой, вытекающей из принципа обеспеченности переменной, является структура СЛЕДОВАНИЕ, означающая, что два действия должны быть выполнены друг за другом. Каждое действие может означать одно единственное действие или включать в себя несколько действий. Алгоритм, содержащий только структуры СЛЕДОВАНИЕ, называется линейным алгоритмом.

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

Рис. П.3.1. Структурограмма СЛЕДОВАНИЕ

Структура РАЗВЕТВЛЕНИЕ (рис. П.3.2) обеспечивает в зависимости от результата проверки условия выбор одного из альтернативных путей работы алгоритма. Каждый из путей ведет к общему выходу, так что работа алгоритма продолжается независимо от того, какой путь выбран.

Рис. П.3.2. Структурограмма РАЗВЕТВЛЕНИЕ

В символах псевдокодов структура РАЗВЕТВЛЕНИЕ соответствует структуре IF- THEN-ELSE или в частном случае – IF-THEN, когда для одного из путей никаких действий предпринимать не надо.

Алгоритм, соответствующий второй базовой структуре, называется разветвляющимся алгоритмом.

Структура ЦИКЛ обеспечивает повторное выполнение (циклическую работу) оператора или группы операторов, находящихся в теле цикла.

Различают две разновидности этой структуры: ЦИКЛ-ПОКА (рис. П.3.3,а) и ЦИКЛ-ДО (рис. П.3.3,б).

Рис. П.3.3. Структура ЦИКЛ: а – ПОКА, б – ДО

В псевдокодах это циклы WHILE-DO и REPEAT-UNTIL соответственно.

При входе в структуру ЦИКЛ-ПОКА проверяется условие. Если оно истинно, то выполняется действие «процесс», и снова проверяется условие. При ложности условия действие «процесс» не выполняется и происходит выход из структуры.

При входе в структуру ЦИКЛ-ДО сначала выполняется действие «процесс», а затем проверяется условие. Ложность условия обеспечивает возврат в тело цикла, истинность – выход из структуры.

Основное отличие структур в том, что в зависимости от условия тело цикла в структуре ЦИКЛ-ПОКА может не выполниться ни разу, а в структуре ЦИКЛ-ДО должно обязательно выполниться хотя бы один раз.

Для управления количеством повторений символ «процесс» должен включать действие, изменяющее значение условия.

Алгоритмы, имеющие в своем составе базовую структуру ЦИКЛ, называются циклическими.

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

1.2. Программирование линейных и разветвляющихся процессов.

Линейным называется процесс, в котором каждое составляющее его действие имеет только одного возможного преемника, не зависящего ни от исходных данных, ни от промежуточных результатов.

Представление линейного процесса производится с помощью только структур СЛЕДОВАНИЕ. Любой вычислительный процесс может быть представлен линейным. Это определяется степенью детализации этапов процесса. Чаще всего представление процесса линейным используется на начальных стадиях разработки программ в целях выделения основных этапов вычислительного процесса.

Так, укрупненный алгоритм установления междугородного телефонного соединения может быть описан с помощью структурограммы, представленной на рис. П.3.4.

Рис. П.3.4. Алгоритм международной автоматической связи

Линейность алгоритма устанавления соединения объясняется лишь отсутствием детализазации процесса коммутации. Детализация алгоритма приведет уже на начальном ее этапе к включению в него символа РАЗВЕТВЛЕНИЕ, определяющего в зависимости от состояния линии «свободно- занято» – ввод кода города либо повторный набор индекса соединений.

Таким образом, алгоритм сразу перестает быть линейным.

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

Для программирования по выбору ветвей процесса используется базовая структура РАЗВЕТВЛЕНИЕ. Разветвление на два пути реализуется одной базовой структурой, а на три и более путей — совокупностью базовых структур, вложенных одна в другую. Их число должно быть на единицу меньше числа возможных ветвей процесса.

В качестве примера изобразим структурограмму (рис. П.3.5) вычисления некоторой функции

Рис. П.3.5. Структурограмма вложенного ветвления

В случае если число точек ветвления достаточно велико (больше трех) и условия ветвления могут быть записаны не в виде неравенств, определяющих принадлежность аргумента тому или иному диапазону, а в виде точно определенных значений, целесообразно использовать в программировании конструкцию CASE.

Для иллюстрации программирования в случае большого числа точек ветвления построим структурограммы вычисления функции

сначала с использованием структуры РАЗВЕТВЛЕНИЕ (рис. П.3.6, а), а затем конструкции CASE (рис. П.3.6, б).

Рис. П.3.6. Структурограмма ветвления с большой степенью
вложенности с использованием структур:
а – РАЗВЕТВЛЕНИЯ, б – конструкции CASE

Сравнение двух структурограмм показывает, что использование конструкции CASE в случае точного определения значений селектора, задающего условия ветвления, явно предпочтительней.

1.3. Программирование циклических процессов

Вычислительный процесс называется циклическим, если некоторые действия, составляющие процесс, повторяются многократно при однократном выполнении всего процесса, объемлющего этот цикл.

Число повторений цикла может быть либо известно заранее, либо неизвестно. Циклы с известным количеством повторений принято называть арифметическими (цикл с параметром), а с неизвестным – итерационными.

В арифметических циклах вводится специальная переменная, называемая счетчиком цикла, и задаются ее начальное и конечное значения. После каждого выполнения тела цикла значение счетчика изменяется на единицу, и выход из цикла осуществляется после достижения счетчиком его конечного значения.

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

Источник: www.myunivercity.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru