русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Виды алгоритмов.


Дата добавления: 2014-09-02; просмотров: 6633; Нарушение авторских прав


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

• линейные;

• ветвящиеся;

• циклические.

 

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

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

Направление ветвления выбирается логической проверкой, в результате кото­рой возможны два ответа: «да» — условие выполнено и «нет» — условие не выполнено. Любая ветвь, по которой осуществляются вычисления, должна приводить к завершению вычислительного процесса. (см. ВЕТВЛЕНИЕ 1,2,3,4)

 


Нет Да

Циклические - многократное повторение некоторой последовательности действий (участок программы).

Различают следующие виды циклов:

- цикл с предусловием (тело цикла может не выполниться ни разу в случае, если условие сразу не выполняется); (см. Цикл типа ПОКА).

- цикл с постусловием (тело цикла выполняется как минимум один раз, т.к. сначала производятся вычисления, а затем проверяется условие);

- цикл с параметром (задается конкретное число повторов цикла). (см. Цикл типа ДЛЯ).

 

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

 

 
 



 

 


Задача. Алгоритм нахождения суммы элементов массива Аi (i=1,10).

 

Урок № 4. Понятие системы программирования.Понятия языка программирования. Эволюция языков программирования.

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

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

Язык программирования – это способ записи программ решения различных задач на ЭВМ в «понятной» для компьютера форме.

В настоящее время в мире существует несколько сотен реально используемых языков программирования. Для каждого есть своя область применения.

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

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

машинные;

• машинно-ориентированные (ассемблеры);

• машинно-независимые (языки высокого уровня).

Машинные языки и машинно-ориентированные языки— это языки низкого уровня,требующие указания мелких деталей процесса обработки данных.

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

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

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

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

 

2. Классификация языков программирования

Языки высокого уровня делятся на:

процедурные (алгоритмические)(Basic, Pascal, С и др.), которые предназначены для однозначного описания алгоритмов; для решения задачи процедурные языки требуют в той или иной форме явно записать процедуру ее решения;

логические(Prolog, Lisp и др.), которые ориентированы не на разработку алгоритма решения задачи, а на систематическое и формализованное описание задачи с тем, чтобы решение следовало из составленного описания;

объектно-ориентированные(Delphi, C++, Java и др.), в основе которых лежит понятие объекта, сочетающего в себе данные и действия над ними.

Основные преимущества алгоритмических языков:

алфавит алгоритмического языка значительно шире алфавита машинного языка,что существенно повышает наглядность текста программы;

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

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

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

 

3. Эволюция языков программирования.

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

Первыми популярными языками программирования высокого уровня были Фортран, Кобол и Алгол. Языки Фортран и Алгол были ориентированы на научно-технические расчеты математического характера. Кобол – язык для программирования экономических задач. В нем хорошо были развиты средства обработки текстов, организация вывода данных в форме требуемого документа. Для первых языков программирования высокого уровня предметная ориентация языков была характерной чертой.

В 60-70-х гг. появилось большое количество языков программирования. В 1965 г. в Дартмутском университете был разработан язык Бейсик. Он представлял собой простой, легко изучаемый язык, предназначенный для программирования несложных расчетных задач. Однако Бейсик – неструктурный язык и потому плохо подходит для обучения качественному программированию.

В эпоху ЭВМ 3-го поколения получил большое распространение язык PL/1, разработанный фирмой IBM. Это был первый язык, претендовавший на универсальность, т.е. на возможность решать любые задачи: вычислительные, обработки текстов, накопления и поиска информации. Однако PL/1 оказался слишком сложным языком.

Значительным событием в истории языков программирования стало создание в 1971 г. язык Паскаль. Его автор – швейцарский профессор Н.Вирт разрабатывал Паскаль как учебный язык структурного программирования. Наибольший успех в распространении языка Паскаль обеспечили персональные компьютеры. Фирма Borland International разработала систему программирования Turbo Pascal. Турбо Паскаль – это не только язык, но еще и операционная оболочка, позволяющая пользователю удобно работать на Паскале. Транслятор с Турбо-Паскаля по оптимальности создаваемых им программ не уступает транслятору Фортрана. В силу этого Паскаль стал источником создания таких языков, как Ада, Модула-2, Си и др.

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

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

Delphi – это среда разработки программ, ориентированных на работу в Windows. В основе идеологии Delphi лежит технология визуального проектирования и методология объектно-ориентированного программирования. Первая версия, Delphi 1, работала в среде Windows 3.1. С появлением Windows 95 Borland выпустила сначала 16-разрядную версию, Delphi 2, а затем значительно более совершенную 32-разрядную – Delphi 3. С появлением Windows 98 была выпущена четвертая версия, а затем и пятая.

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

 



<== предыдущая лекция | следующая лекция ==>
Блок-схемы алгоритмов. Составление блок-схем. Графическое представления алгоритма в соответствии с ГОСТом. | Этапы технологического процесса создания программного продукта.


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.105 сек.