Рассмотрим запись основных алгоритмических конструкций с помощью языка блок-схем.
Блок-схема – это ориентированный граф, указывающий порядок исполнения команд алгоритма; вершины такого графа могут быть одного из трех типов
вершина, имеющая один вход и один выход, может соответствовать одной команде или группе команд;
«альтернатива» — выполнение операций, изменяющих команды (группы команд)
«предикатная» вершина, имеющая один вход и два выхода (управление передается в зависимости от значения условия)
«узел», вершина слияния, передающая управление от одного из
двух входов к следующему оператору
вызов вспомогательного алгоритма
I. Линейный алгоритм Пример. Даны две простые дроби. Составить
алгоритм получения дроби, являющейся результатом их деления.
Решение . В алгебраической форме решение задачи выглядит следующим образом:
Исходными данными являются четыре целые величины: а, b, с, d. Результат – два целых числа m и n .
Правильное создание блок схемы (часть2) в delphi 7
Здесь под серией понимается одна или несколько последовательных команд; кв – конец ветвления.
Циклическая структура обеспечивает повторное выполнение последовательности команд (тела цикла) по некоторому условию.
Различают циклы с предусловием, с постусловием и с параметром (или с известным числом повторений).
Цикл с предусловием – цикл, выполнение которого повторяется, пока истинно условие цикла.
На блок-схеме команда изображается следующим образом:
Команда имеет формат:
Цикл с параметром – повторное выполнение тела цикла, пока целочисленный параметр пробегает множество всех значений от начального (ln) до конечного (lk).
Команда имеет формат:
для i от ln до lk, повторять нц кц
Запишем с помощью блок-схем алгоритм Евклида.
Тема: Объектно-ориентированное программирование. Визуальное программирование
1. Основные понятия ООП
3. Визуальное программирование
Delphi — одна из самых мощных систем, позволяющих на самом современном уровне создавать как отдельные прикладные программы Windows, так и разветвленные комплексы, предназначенные для работы в корпоративных сетях и в Интернет.
Объектно-ориентированное программирование (сокращенно ООП) — это в наше время совершенно естественный подход к построению сложных (и не очень сложных) программ и систем. Когда вы открываете любую программу Windows, вы видите окно с множеством кнопок, разделов меню, окон редактирования, списков и т.п. Все это объекты. Причем сами по себе они ничего не делают.
Они ждут каких-то событий — нажатия пользователем клавиш или кнопок мыши, перемещения курсора и т.д. Когда происходит подобное событие, объект получает сообщение об этом и как-то на него реагирует: выполняет некоторые вычисления, разворачивает список, заносит символ в окно редактирования. Вот такая программа Windows и есть объектно-ориентированная программа или приложение .
Приложение, построенное по принципам объектной ориентации — это не последовательность каких-то операторов, не некий жесткий алгоритм.
Правильное создание блок схемы (часть1) в delphi 7
Объектно-ориентрованная программа — это совокупность объектов и способов их взаимодействия.
Отдельным (и главным) объектом при таком подходе во многих случаях можно считать пользователя программы. Он же служит и основным, но не единственным, источником событий, управляющих приложением.
Основное понятием ООП — объект. Для начала можно определить объект как некую совокупность данных и способов работы с ними . Данные можно рассматривать как поля записи. Это характеристики объекта. Пользователь и объекты программы должны, конечно, иметь возможность читать эти данные объекта, как-то их обрабатывать и записывать в объект новые, значения.
Здесь важнейшее значение имеют приниипы инкапсуляиии и скрытия данных .
Принцип скрытия данных заключается в том, что внешним объектам и пользователю прямой доступ к данным, как правило, запрещен. Делается это из двух соображений.
— Во-первых, для надежного функционирования объекта надо поддерживать целостность и непротиворечивость его данных. Если не позаботиться об этом, то внешний объект или пользователь могут
занести в объект такие неверные данные, что он начнет
функционировать с ошибками.
— Во-вторых, необходимо изолировать внешние объекты от особенностей внутренней реализации данных. Для внешних потребителей данных должен быть доступен только пользовательский интерфейс —
описание того, какие имеются данные и функции и как их использовать. А внутренняя реализация — это дело разработчика объекта. При таком подходе разработчик может в любой момент модернизировать объект, изменить структуру хранения и форму представления данных, но, если при этом не затронут интерфейс,
внешний потребитель этого даже не заметит. И, значит, во внешней программе и в поведении пользователя ничего не придется менять.
Чтобы выдержать принцип скрытия данных, в объекте обычно определяются процедуры и функции, обеспечивающие все необходимые операции с данными: их чтение, преобразование, запись. Эти функции и процедуры называются методами и через них происходит общение с данными объекта.
Совокупность данных и методов их чтения и записи называется
Свойства можно устанавливать в процессе проектирования, их можно изменять программно во время выполнения вашей прикладной программы. Причем внешне это все выглядит так, как будто объект имеет какие-то данные, например, целые числа, которые можно прочитать, использовать в каких-то вычислениях, заложить в объект новые значения данных.
В процессе проектирования вашего приложения с помощью Delphi вы можете видеть значения некоторых из этих данных в окне Инспектора Объектов, можете изменять эти значения. В действительности все обстоит иначе. Все общение с данными происходит через методы их чтения и записи. Это происходит и в процессе проектирования, когда среда Delphi запускает в нужный момент эти методы, ив процессе выполнения приложения, поскольку компилятор Delphi незримо для разработчика вставляет в нужных местах программы вызовы этих методов.
Помимо методов, работающих с отдельными данными, в объекте имеются методы, работающие со всей их совокупностью, меняющие их структуру. Таким образом,
Объект является совокупностью свойств и методов . Но это пока нельзя считать законченным определением объекта поскольку прежде, чем дать полное определение, надо еще рассмотреть взаимодействие объектов друг с другом.
Средой взаимодействия объектов (как бы силовым полем, в котором существуют объекты) являются сообщения, генерируемые в результате различных событий. События наступают, прежде всего, вследствие действий пользователя — перемещения курсора мыши, нажатия кнопок мыши или клавиш клавиатуры. Но события могут наступать и в результате работы самих объектов. В каждом объекте определено множество событий, на
которые он может реагировать. В конкретных экземплярах объекта могут быть определены обработчики каких-то из этих событий, которые и определяют реакцию данного экземпляра объекта. К написанию этих обработчиков, часто весьма простых, и сводится, как будет видно Далее, основное программирование при разработке графического интерфейса пользователя с помощью Delphi.
Теперь можно окончательно определить объект как совокупность свойств и методов, а также событий, на которые он может реагировать .
Внешнее управление объектом осуществляется через обработчики событий. Эти обработчики обращаются к методам и свойствам объекта. Начальные значения данных объекта могут задаваться также в процессе проектирования установкой различных свойств. В результате выполнения методов объекта могут генерироваться новые события, воспринимаемые другими объектами программы или пользователем.
Представление о программе как о некоторой фиксированной совокупности объектов не является полным. Чаще всего сложная программа
— это не просто какая-то предопределенная совокупность объектов. В процессе работы объекты могут создаваться и уничтожаться. Таким образом, структура программы является динамическим образованием, меняющимся в процессе выполнения. Основная цель создания и уничтожения объектов — экономия ресурсов компьютера и, прежде всего, памяти.
Несмотря на бурное развитие вычислительной техники, память, наверное, всегда будет лимитировать возможности сложных приложений. Это связано с тем, что сложность программных проектов растет теми же, если не более быстрыми, темпами, что и техническое обеспечение. Поэтому от объектов, которые не нужны на данной стадии выполнения программы, нужно освобождаться.
При этом освобождаются и выделенные им области памяти, которые могут использоваться вновь создаваемыми объектами. Простой пример этого — окно-заставка с логотипом, появляющееся при запуске многих приложений. После начала реального выполнения приложения эта заставка исчезает с экрана и никогда больше не появится в данном сеансе работы.
С целью организации динамического распределения памяти во все объекты заложены методы их создания — конструкторы и уничтожения — деструкторы . Конструкторы тех объектов, которые изначально должны присутствовать в приложении (прикладной программе), срабатывают при запуске программы. Деструкторы всех объектов, имеющихся в данный момент в приложении, срабатывают при завершении его работы. Но нередко и в процессе выполнения различные новые объекты (например, новые окна документов) динамически создаются и уничтожаются с помощью их конструкторов и деструкторов.
Принципы ООП Инкапсуляция
Инкапсуляция (encapsulation) — объединение в классе данных и подпрограмм для их обработки. Инкапсуляция — это то, что объект хранит в
себе: данные, определяющие его свойства, и методы для обработки этих данных. Инкапсуляция позволяет поддерживать целостность класса.
Наследование (inheriting) — порождение класса от другого класса с наследованием полей, методов и свойств своего родителя. Наследование означает, что любой класс может быть порожден другим классом.
Новый класс создается от класса-родителя при помощи следующего кода:
TNewClass = class (TParentClass)
Здесь TNewClass — новый, созданный класс, TParentClass — класс-родитель.
При этом новый класс наследует поля, свойства и методы родительского класса. Это дает возможность создавать новые классы на основе имеющихся стандартных классов.
Так как все классы являются потомками класса TObject, то можно создать класс, являющийся непосредственным потомком класса TObject. В этом случае при написании кода можно не указывать имени класса-родителя:
Полиморфизм (polymorphism) — свойство классов решать схожие задачи различными способами. Допускаются одноименные методы в классеродителе и классе потомке, имеющие разные алгоритмы обработки данных и придающие объектам разные свойства.
Включать объекты в свою программу можно двумя способами: вручную включать в нее соответствующие операторы (это приходится делать не очень часто) или путем визуального программирования, используя заготовки —
Визуальное программирование интерфейса
Сколько существует программирование, столько существуют в нем и тупики, в которые оно постоянно попадает и из которых, в конце концов, доблестно выходит. Один из таких тупиков или кризисов был не так уж давно связан с разработкой графического интерфейса пользователя. Программирование вручную всяких привычных пользователю окон, кнопок, меню, обработка событий мыши и клавиатуры, включение в программы изображений и звука требовало все больше и больше времени программиста. В ряде случаев весь этот сервис начинал занимать до 80-90% объема программных кодов. Причем весь этот труд нередко пропадал почти впустую, поскольку через год — другой менялся общепринятый стиль графического интерфейса, и все приходилось начинать заново.
Выход из этой ситуации обозначился благодаря двум подходам. Первый из них — стандартизация многих функций интерфейса, благодаря чему появилась возможность использовать библиотеки, имеющиеся, например, в Windows. В частности, появился API Windows — интерфейсов котором описано множество функций, причем от версии к версии набор функций расширяется, внутреннее описание функций совершенствуется, но формы вызова функций не изменяются. В итоге, при смене стиля
графического интерфейса (например, при переходе от Windows 3.x к Windows 95, а затем к Windows 2000) приложения смогли автоматически приспосабливаться к новой системе без какого-либо перепрограммирования. На этом пути создались прекрасные условия для решения одной из важнейших задач совершенствования техники программирования — повторного использования кодов. Однажды разработанные вами формы, компоненты, функции могли быть впоследствии неоднократно использованы вами или другими программистами для решения их задач. Каждый программист получил доступ к наработкам других программистов’ и к огромным библиотекам, созданным различными фирмами. Причем была обеспечена совместимость программного обеспечения, разработанного на разных алгоритмических языках.
Вторым революционным шагом, кардинально облегчившим жизнь программистов, явилось появление визуального программирования, возникшего в Visual Basic и нашедшего блестящее воплощение в Delphi и C++Builder фирмы Borland.
Визуальное программирование позволило свести проектирование пользовательского интерфейса к простым и наглядным процедурам, которые дают возможность за минуты или часы сделать то, на что ранее уходили месяцы работы. В современном виде в Delphi это выглядит так.
Вы работаете в Интегрированной Среде Разработки (ИСР или Integrated development environment — IDE) Delphi. Среда предоставляет вам формы (в
приложении их может быть несколько), на которых размещаются компоненты. Обычно это оконная форма, хотя могут быть и невидимые формы. На форму с помощью мыши переносятся и размещаются пиктограммы компонентов, имеющихся в библиотеках Delphi. С помощью простых манипуляций вы можете изменять размеры и расположение этих компонентов.
При этом вы все время в процессе проектирования видите результат — изображение формы и расположенных на ней компонентов. Вам не надо мучиться, многократно запуская приложение и выбирая наиболее удачные размеры окна и компонентов. Результаты проектирования вы видите, даже не компилируя программу, немедленно после выполнения какой-то операции с помощью мыши.
Но достоинства визуального программирования не сводятся к этому. Самое главное заключается в том, что во время проектирования формы и размещения на ней компонентов Delphi автоматически формирует коды программы, включая в нее соответствующие фрагменты, описывающие данный компонент. А затем в соответствующих диалоговых окнах пользователь может изменить заданные по умолчанию значения каких-то свойств этих компонентов и, при необходимости, написать обработчики каких-то событий. То есть проектирование сводится, фактически, к размещению компонентов на форме, заданию некоторых их свойств и написанию, при необходимости, обработчиков событий.
Компоненты могут быть визуальные, видимые при работе приложения, и невизуальные, выполняющие те или иные служебные функции. Визуальные
Компоненты сразу видны на экране в процессе проектирования в таком же виде, в каком их увидит пользователь во время выполнения приложения. Это позволяет очень легко выбрать место их расположения и их дизайн — форму, размер, оформление, текст, цвет и т.д. Невизуальные компоненты видны на форме в процессе проектирования в виде пиктограмм, но пользователю во время выполнения они не видны, хотя и выполняют для него за кадром весьма полезную работу.
В библиотеки визуальных компонентов Delphi включено множество типов компонентов и их номенклатура очень быстро расширяется от версии к версии. Имеющегося уже сейчас вполне достаточно, чтобы построить практически любое самое замысловатое приложение, не прибегая к созданию новых компонентов. При этом даже неопытный программист, делающий свои первые шаги на этом поприще, может создавать приложения, которые выглядят совершенно профессионально.
Компоненты библиотек Delphi и типы других объектов оформляются в виде классов. Классы — это типы, определяемые пользователем. В классах описываются свойства объекта, его методы и события, на которые он может реагировать. Язык программирования Object Pascal, который используется в Delphi, предусматривает только инструментарий создания классов.
А сами классы создаются разработчиками программного обеспечения. Создатели Delphi уже разработали для вас множество очень полезных классов и включили их в библиотеки системы. Этими классами можно пользоваться при работе в Интегрированной Среде Проектирования. Впрочем, это нисколько не мешает создавать свои новые классы.
Если бы при создании нового класса пришлось все начинать с нуля, то эффективность этого занятия была бы под большим сомнением. Да и разработчики Delphi вряд ли создали бы в этом случае такое множество классов. Действительно, представьте себе, что при разработке нового компонента, например, какой-нибудь новой кнопки, вам пришлась бы создавать все: рисовать ее изображение, описывать все свойства, определяющие ее место расположения, размеры, надписи и картинки на ее поверхности, цвет, шрифты, описывать методы, реализующие ее поведение
— изменение размеров, видимость, реакции на сообщения, поступающие от клавиатуры и мыши.
К счастью, в действительности все обстоит гораздо проще, благодаря одному важному свойству классов — наследованию. Новый класс может наследовать свойства, методы, события своего родительского класса, т.е. того класса, на основе которого он создается. Например, при создании новой кнопки можно взять за основу один из уже разработанных классов кнопок и только добавить к нему какие-то новые свойства или отменить какие-то свойства и методы родительского класса.
Благодаря визуальному объектно-ориентированному программированию была создана технология, получившая название быстрая разработка приложений, по-английски RAD — Rapid Application Development. Эта технология характерна для нового поколения систем
программирования, к которому относится и Delphi-Delphi базируется на языке Object Pascal (впрочем, начиная с версии Delphi 7 разработчики назвали его языком Delphi). Компиляторы с языков семейства Паскаль фирмы Borland (начиная с Turbo Pascal 1.0) были одними из самых быстрых компиляторов. В настоящее время Object Pascal — это объектноориентированный язык с твердой опорой в виде хорошего компилятора.
Надо иметь в виду, что ориентация приложений Delphi на Object Pascal нисколько не сужает возможностей разработчика. Приложения Delphi прекрасно могут использовать разработки на других языках, включая C++ и даже ассемблер. Можно использовать библиотеки, созданные другими фирмами, в частности, Microsoft или независимыми разработчиками. Можно реализовывать свои разработки в виде самостоятельных выполняемых файлов или в виде пакетов, поддерживающих выполнение ряда приложений.
Отдельно надо сказать об одной из главных задач Delphi — разработке приложений для работы с базами данных. В этой области Delphi занимает самые передовые позиции, работая с любыми системами управления базами данных.
Источник: studfile.net
DiamFC 1.12.020 — построитель блок-схем
Новый адрес сайта http://diamfc.ucoz.ru Там же есть форум, где я могу построить для вас блок-схему бесплатно.
Более новая версия представленной ранее программы. Для Delphi, Pascal отрабатывает практически все конструкции языка (по крайней мере, те, которые я знаю)
Программа строит блок-схемы по исходному коду программ Pascal/Delphi. Блок-схема создается в MS Excel, с последующим переносом в MS Word, JPG. Можно обрабатывать текст программы, сохраненный в буфере обмена! Обрабатываются ВСЕ операторы языка. Единственное требование-программа должна соответствовать синтаксису языка Pascal, Delphi. Программа позволяет без регистрации построить блок-схему для исходного кода, содержащего меньше 31 символов «; «.
Смотрите также
Автосхема v.2.2
- формат exe
- размер 519.58 КБ
- добавлен 15 сентября 2008 г.
Программа, предназначенная для построения блок-схем по готовому коду. Может анализировать файлы *.pas (Turbo Pascal, Delphi), *.txt с выводом готовых блок-схем в формат *.bmp Программа экономит массу времени при создании курсовых работ по программированию на языках Pascal и Delphirn
Построитель блок-схем
- формат exe
- размер 755.12 КБ
- добавлен 08 ноября 2009 г.
Простенькая программа, самодельная программа, строящая блок-схемы по *. раs-файлам, не требует установки. Вставляешь текст программы, она рисует блок-схему. Программа поддерживает не более 3-х уровней вложенности.rn
AFCE Редактор блок-схем 11.05
- формат exe
- размер 4.32 МБ
- добавлен 10 сентября 2011 г.
Вашему вниманию представляется программа, которая предназначена для создания, редактирования и экспорта блок-схем алгоритмов. Пользователю не нужно заботиться о размещении и выравнивании объектов, программа автоматически разместит все блоки. Редактор позволит экспортировать блок-схему в исходный текст программы для разных языков программирования (Pascal, C/C++, Алгоритмический язык). Редактор блок-схем позволяет экспортировать изображение схемы в.
BlockShem v.3.0.0 — Редактор блок-схем
- формат exe
- размер 442.24 КБ
- добавлен 17 октября 2010 г.
Редактор блок-схем – программа, предназначенная для создания и редактирования блок-схем. Блок-схемы дают возможность наглядного представления алгоритма, это упрощает понимание его структуры и дает возможность оптимизировать алгоритм на взгляд. Еще одним существенным плюсом блок-схем является то, что, разрабатывая алгоритм, Вы не привязаны к синтаксису определенного языка, Вы можете работать на С, а Ваши друзья на Паскале, Java или Бейсике, но соз.
BS v1.0 — Построитель блок-схем для Pascal
- формат exe
- размер 284.47 КБ
- добавлен 16 декабря 2009 г.
BS v1.0 — Программа анализирует код на Pascal, и строит блок-схему. Есть возможность сохранения в BMP. Автор — Артем Тишаков.rn
Code Visual to Flowchart v.6 build 0823
- формат exe
- размер 1.41 МБ
- добавлен 13 сентября 2009 г.
Программа построения блок-схем по исходному коду. Поддерживаются следующие языки программирования: C, C++, VC++(Visual C++ .NET), VB(Visual Basic), VBA, Qbasic(quickbasic), GWBasic, VBScript(VBS), ASP, Visual C# (C sharp), Visual Basic .NET(VB.NET), Visual J# .NET, VC++.NET, ASP.NET, Java, JSP, JavaScript(JScript), Delphi(Object Pascal), PowerBuilder(PowerScript), PHP, Perl, Unix Bourne shell Script ( sh ), Bourne Again shell(Bash), Korn shell (K.
DiamFC
- формат exe
- размер 352.63 КБ
- добавлен 06 марта 2010 г.
Новый адрес сайта Там же есть форум, где я могу построить для вас блок-схему бесплатно. Программа строит блок-схемы по исходному коду программ Pascal/Delphi. Блок-схема создается в MS Excel, с последующим переносом в MS Word, JPG. Можно обрабатывать текст программы, сохраненный в буфере обмена! Обрабатываются ВСЕ операторы языка.
Единственное требование-программа должна соответствовать синтаксису языка Pascal, Delphi. Программа позволяет без ре.
EDraw. Flowchart Software v1.5.8
- формат exe
- размер 5.21 МБ
- добавлен 11 сентября 2009 г.
EDraw — новое программное обеспечение предназначенное для создания блок-схем и бизнес-диаграмм с минимальной потерей Вашего времени. Поддерживает основные блок-схемы, организационные диаграммы, бизнес-диаграммы, hr диаграммы, рабочие блок-схемы, программные блок-схемы и диаграммы сетевого дизайна. Особенности EDraw: — Его легко выучить, легко использовать. Рисунок не нужно снова открывать. Нужно всего только перетащить готовые формы из библиотек.
FCEditor
- формат txt
- размер 538.95 КБ
- добавлен 06 декабря 2009 г.
Назначение программы: редактирование блок-схем и конвертация из кода программы (C, Delphi, Pascal) в блок-схему.rn
Portable Code Visual To Flowchart 5.3.1030
- формат exe
- размер 3.59 МБ
- добавлен 11 января 2010 г.
Code Visual to Flowchart — это программа — генератор Блок-схем для представления кода в виде блок-схемы и его визуализации. Данная программа может осуществлять автоматизированное реконструирование программного кода в блок-схемы. Предлагаемая программа также поможет программистам документировать, визуализировать и понимать исходный код. Генератор Документации данной программы поддерживает Visio, Word, Excel, PowerPoint, PNG и BMP. Code Visual to.
Источник: www.studmed.ru
DelphiComponent.ru — бесплатно видеоуроки по Delphi, статьи, исходники
Delphi — визуальная среда разработки программ. Она прячет от нас все сложности программирования, превращая его в увлекательный процесс. При создании обычных приложений, утилит и программ работы с базами данных вам не придется задумываться о регистрах, стеке и многом другом. Но это не значит, что время, затраченное на изучение внутреннего мира компьютера и принципов организации выполнения программ, пропало зря. Все это вам пригодится.
В первом издании этой книги в этой главе было много информации по установке среды разработки Delphi. Это отнимает очень много места, а многие не любят читать подобную информацию, предпочитая устанавливать полностью все. Да, когда вы только знакомитесь с продуктом, то никогда не знаешь, что может пригодиться, поэтому мы выбираем полную установку. Благо жесткие диски стали такими, что вмещают в себя все, что угодно.
Программирование машинной логики
Подошло время превратить нашу логику, описанную в блок-схеме на рис. 2.3, в настоящую программу. Пока эта программа будет существовать только на бумаге, но со временем ее можно превратить в настоящий исполняемый модуль.
Сначала напишем нашу программу на русском языке (листинг 2.2).
Переменные: F, R, Index — это целые числа;
От 1 до 5 выполнять
Вывести на экран переменную R.
Если не обращать внимания на то, что все написано русским языком, можно считать, что первая программа уже написана. В принципе, программа на любом языке программирования выглядит приблизительно так, как это показано выше, только при программировании действуют жесткие правила описания команд. В данном случае, все состоит из следующих блоков:
- начало программы;
- описание переменных;
- начало кода (учтите, что описание переменных — это не код программы);
- заполнение переменных начальными значениями;
- запуск цикла от 1 до 5;
- выполнение в цикле расчета;
- вывод результата.
В принципе, ничего нового здесь нет. Просто блок-схема описана словами, похожими на программный язык. В дальнейшем, когда вы сами начнете писать собственный программный код, действовать будете точно так же. Сначала постройте алгоритм программы в виде блок-схемы или хотя бы мысленно представьте алгоритм работы будущей программы и только потом переносите все это в компьютер.
Блок-схемы понадобятся только на начальном этапе, когда вы не можете сразу представить себе действия, которые нужно запрограммировать. Со временем блок- схемы отойдут сами собой, и уже через месяц практического программирования можно будет писать алгоритмы сразу же на Delphi. Все дело в практике.
В большинстве случаев машинный язык схож с человеческим, потому что его создавали люди. Но иногда разница чувствительна, потому что машина не всегда может мыслить как человек. В связи с этим необходимо научиться объяснять свои мысли понятным для машины языком.
Машинная логика и циклы
В любом языке программирования есть множество операций сравнения, которые позволяют реализовать машинную логику. Что понимается под логическими операциями? Это операции сравнения на «равенство», «больше» или «меньше». Как показано в табл. 2.3, таких операций может быть достаточно много.
Таблица 2.3. Логические операции
Больше либо равно
Меньше либо равно
Блок-схемы для программистов
Давайте сразу зададим какой-нибудь простой пример, на котором попробуем определить логику его решения компьютером. Допустим, нам надо получить сумму двух чисел. В логике человека мы должны выполнить следующие операции:
- Старт.
- Ввести число 1.
- Ввести число 2.
- Прибавить к числу 1 число 2.
- Вывести результат.
Это простейшая и подробная логика, которой оперирует человек. Но машина так не может мыслить, и по ее логике нужно рассуждать немного иначе. Для отображения машинной логики определение вычислительных шагов неудобно, потому что решение может быть извилистым, а не прямолинейным. Поэтому давайте знакомиться с блок-схемами на этой линейной задаче.
Блок-схемы принято чертить различными квадратами, овалами и прямоугольниками. Я особо не буду придерживаться стандартов, потому что это не принципиально в решении, но некоторых особенностей мы будем придерживаться. Основные типы блоков, которые можно увидеть на рис. 2.1.
Машинная математика
До начала перестройки в нашей стране практически не готовили программистов. Большинство программистов были выходцами с кафедр математики, на которых очень часто изучались определенные учебные курсы с уклоном в сторону информатики. На этих курсах учили писать блок-схемы, которые в свою очередь помогали понять логику работы программы.
С блок-схемами знакомятся на начальном этапе обучения программированию. Первое впечатление тех, кто столкнулся с блок-схемами,— абсолютно ненужная ерунда. Однако со временем становятся понятны их достоинства. Возможно, что и вам покажется это слишком просто, но все же желательно прочитать эту главу полностью.
Здесь рассматривается теория всего процесса программирования, что позволяет понять логику выполнения команд в процессе выполнения программы на процессоре. В дальнейшем останется только познакомиться с практикой.
Когда мне пришлось изучать информатику в институте, то нас тоже заставляли писать блок схемы. Самое страшное, что нас именно заставляли. Прежде чем начать что-то писать, мы должны были описать весь процесс в виде логики из блоков. Я не собираюсь вам говорить, что вы должны поступать так же.
Все равно таким образом можно описать только небольшой участок логики или простой алгоритм. В большинстве случаев можно приступать к программированию сразу, но если вы запутались или что-то не получается, попробуйте отложить клавиатуру, взять листок бумаги и набросать логику с помощью блоков. Очень часто это помогает.
Источник: delphicomponent.ru