Шпаргалка по "Программированию"

Автор работы: Пользователь скрыл имя, 25 Декабря 2013 в 18:28, шпаргалка

Описание работы

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

Содержание работы

1. Понятие алгоритма. Способы записи алгоритмов.
2. Свойства алгоритма.
3. Ветвящийся алгоритм.
4. Циклический алгоритм с предусловием (схема).
5. Циклический алгоритм с постусловием (схема).
28.Событийное программирование.
29. События связанные с объектом Form.

Файлы: 1 файл

ответы.docx

— 76.44 Кб (Скачать файл)

1. Понятие алгоритма. Способы записи алгоритмов.

Алгоритм в информатике  – понятие фундаментальное, потому невозможно дать абсолютно точное определение  алгоритма. Существует несколько различных  определений, учитывающих те или  иные исходные положения и цели. Для практических целей, связанных  с разработкой компьютерных программ, возможно следующее определение:

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

Способы записи алгоритмов.

Существует несколько  способов описания алгоритмов:

1.  словесный способ – описание алгоритма средствами естественного языка;

2. структурно-стилизованный способ – описание с помощью словесных конструкций алгоритмического языка;

3.  язык графических символов – запись на языке блок-схем.

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

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

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

          В последующем изложении используются  блоки, приведенные на рисунке  1. Обратите внимание, что любой  блок (за исключением блока начала  и блока конца) имеет хотя  бы один вход и хотя бы  один выход. Никакой блок в блок-схеме не может «висеть», т.е. не иметь входа и выхода.

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

2. Свойства алгоритма.

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

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

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

Один и тот же алгоритм должен решать однотипные задачи с  различными исходными данными. Различные  исходные данные позволяют получить разные решения. Вместе с тем, в соответствии с первым свойством, свойством детерминированности, при одних и тех же исходных данных алгоритм всегда дает один и  тот же результат. Это свойство алгоритма  есть массовость.

Вычислительный процесс, определяемый алгоритмом, должен допускать  разделение на отдельные этапы, которые, в свою очередь,  также могут  разделяться на этапы, что в итоге  приведет к разделению алгоритма  на элементарные операции. Это свойство – «дискретность» алгоритма.

3. Ветвящийся алгоритм.

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

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

Условие указывается в  блоке ветвления. При такой структуре  алгоритма он исполняется в каждый момент времени только по одной ветви, а выполнение по другим ветвям не выполняется. Например, при выпонении условия (истина) может выполняться Действие 1, а при невыполнении условия (ложь) будет выполнено Действие 2.

4. Циклический алгоритм с предусловием (схема).

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

Если цикл начинается с проверки истинности условия, то цикл называется циклом с предусловием. При истинности условия выполняется один шаг цикла, затем изменяются значения переменных, после чего вновь проверяется условие. Цикл завершается, если условие ложно, или выполнется следующий шаг, если условие истинно. И так до тех пор, пока очередная проверка покажет ложность условия. Цикл с предусловием представлен на рисунке «а».

 

 

 

 

 

 

 

 

 

5. Циклический алгоритм с постусловием (схема).

Если после установки  начальных условий цикл начинается с выполнения шага цикла, а только после этого изменяются значения переменных  и выполняется проверка условия, то такой цикл называется циклом с постусловием. Цикл завершается, если условие ложно. При истинном условии выполняется следующий шаг цикла с изменением значенией переменных. Схема цикла с постусловием приведена на рисунке «b».

10. Понятие программы на языке высокого уровня

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

11. Трансляция программы.

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

12. Понятие среды программирования

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

  • редактор с подсветкой синтаксиса конкретного языка программирования. В нем программист пишет текст программы, так называемый программный код;
  • компилятор. Он, как мы уже с вами знаем, транслирует программу, написанную на высокоуровневом языке программирования в машинный язык (машинный код), непосредственно понятный компьютеру. Язык С++ относится к компилируемым языкам, поэтому для обработки текстов его программ служит компилятор, иногда вместо компилятора (либо вместе с ним) используется интерпретатор, для программ, написанных на интерпретируемых языках программирования;
  • отладчик. Служит для отладки программ. Как мы все знаем, ошибки в программах допускают абсолютно все: и новички, и профессионалы - они могут быть синтаксическими (обычно они выявляются еще на стадии компиляции) и логическими. Для тестирования программы и выявления в ней логических ошибок служит отладчик.

13. Визуальное программирование.

Разработка современных  программ основана на ряде особенностей организации операционной системы (ОС) Windows. Программы, разрабатываемые в этой среде, принято называть Windows-приложениями. Для дальнейшего рассмотрения важными являются следующие особенности ОС:

  1. Многозадачность. Допускается одновременное выполнение нескольких приложений.
  2. Графический интерфейс. Взаимодействие с пользователем осуществляется в графическом режиме. Кроме программирования логики работы программы, программисту приходится заботиться об обеспечении интерфейса. Правда, его работа существенно облегчается использованием библиотек интерфейсных компонентов, входящих в состав систем программирования. Программист проектирует окна, используя визуальный стиль программирования. Интерфейсные компоненты используют API-функции (Application Program Interface – программный интерфейс приложения), которые находятся в динамических библиотеках системы (Dynamic Link Library, DLL). Функции не включаются в состав каждого приложения. Интерфейсные компоненты обращаются к ним в момент выполнения приложения.
  3. Принцип событийного управления. После запуска приложения устанавливается интерактивный режим работы. Обеспечивается своеобразный диалог пользователя и приложения. Пользователю предоставлена возможность различных действий с помощью мышки (нажатие кнопок, выбор полей, установка флажков и т.п.), а приложение реагирует на эти действия как на события. Разумеется, обеспечение реакции приложения также лежит на программисте.

Разработка программ под  Windows отличается от разработки программ под DOS. Вместо одного «черного» окна, где отображаются исходные, промежуточные и окончательные данные, может использоваться несколько окон с различными выделенными полями для ввода данных и выдачи результатов. Результаты исполнения могут быть не только численными или текстовыми – могут быть картинки, средства включения музыки или видео. В окнах могут быть различные элементы управления процессом исполнения программы – кнопки, флажки, переключатели и прочее. Пользователь работает и с клавиатурой, и с мышкой. Для того, чтобы работа пользователя стала именно такой, программист должен обеспечить эти возможности специфическими средствами языка программирования.

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

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

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

Примером объекта может  служить объект «кнопка». Его назначение понятно. Кнопка имеет надпись, которая  говорит пользователю о том, что  произойдет, если он выполнит нажатие  с помощью мышки. Организуя отображение  кнопки, программист не занимается рисованием этого объекта на экране. Он использует встроенную в систему  программирования возможность. Он просто выбирает на панели инструментов образ  кнопки (вместо рисования), переносит  его в нужное место окна (вместо описания координат), мышкой растягивает  или сжимает образ, устанавливает  надпись. Весь этот процесс выполняется  очень быстро – визуально.

Поскольку в разных программах используются типовые объекты, то в  системах программирования имеются  встроенные библиотеки типовых объектов. Их принято называть инструментами. Доступ к ним обеспечен через панели инструментов. Это и есть визуальный способ построения программы. При использовании панелей программист не только выстраивает нужные ему структуры объектов – попутно автоматически строится и программный код, обеспечивающий типовую обработку данных, связанную с объектом. Этот код включается в создаваемую программу. При необходимости программист может доработать этот код, внеся в него специфические добавки.

Информация о работе Шпаргалка по "Программированию"