Основы программирования 1 семестр
Введение
Программирование – это процесс составления компьютерной программы на основе некоторого алгоритма.
Структурное программирование основывается на двух важнейших принципах:
последовательной детализации алгоритма;
использовании набора базовых структур (отсюда и название метода) для построения алгоритма любой степени сложности.
В теории структурного программирования доказывается, что алгоритм любой степени сложности можно построить с помощью следующих базовых структур:
линейной (последовательной) структуры;
разветвляющейся (ветвящейся) структуры;
циклической структуры.
Каждая из этих структур имеет только один вход и только один выход, что позволяет соединять между собой в процессе разработки алгоритма любое количество элементов базовых структур в необходимом для решения задачи порядке. Сложные для понимания и реализации блоки заменяют на последовательность более простых базовых конструкций. При этом количество шагов детализации алгоритма в принципе не ограничено. Структурное программирование широко применяется, поскольку созданы специальные языки программирования, например Паскаль или версии Бейсика (QBasic) позволяющие структурировать программу. Метод структурного программирования дает возможность решать сложные задачи в самых разных областях профессиональной деятельности.
Языки программирования. Компиляция и интерпретация
Программа – это набор машинных команд, которые следует выполнить компьютеру для реализации того или иного алгоритма. Иными словами, программа – это форма представления алгоритма для исполнения его машиной.
При таком подходе необходимо:
создать строгую систему условных обозначений для записи команд в понятной для человека форме (язык программирования),
создать программу-посредника, которая переводила бы такие команды на язык, понятный машине.
После этого на языке программирования можно писать множество программ, пользуясь единственной программой-переводчиком. «Грамматические» правила языка программирования формулируются предельно четко и не допускают вольного расположения отдельных элементов команды и знаков препинания (иначе программа-посредник «не поймет» ваши указания). Каждая команда имеет строго определенный синтаксис (правила записи). Например, если установлено, что условие «если» надо писать по-английски (if) и после условия (a[i]>m) нельзя ставить запятую, то всякая иная запись такой команды будет воспринята программой-посредником как ошибка. Команды на языке программирования часто называют операторами или инструкциями. Операнд – это элемент, над которыми выполняются действия операторов. Последовательность таких команд, реализующих тот или иной алгоритм, называют программой на исходном языке или просто исходным текстом. Кроме исходного текста, конкретная программа может иметь еще и машинный код, который непосредственно исполняется на машине. Исходные тексты помещают в текстовые файлы. Существует два типа программ-посредников, работающих с исходными текстами: компилятор и интерпретатор. Программа-компилятор (от слова compile– составлять, собирать) переводит исходный текст в машинный код и записывает его на диск в форме исполняемого (загрузочного) файла. После этого программа выполняется независимо от исходного текста. Раньше программы-компиляторы называли– трансляторами (переводчиками). Программа-интерпретатор всегда работает совместно с исходным текстом. Она разбирает каждую команду исходного текста (интерпретирует ее) и немедленно исполняет т.е. файл на машинном языке не создается. Программа в режиме интерпретации работает гораздо медленнее, чем такая же программа в машинном коде. Это связано с тем, что каждую инструкцию приходится разбирать во время выполнения, а не заранее, как при компиляции. Многие инструкции в программе выполняются многократно, – и при каждом выполнении интерпретируются заново. Поэтому всюду, где возможно, стремятся заменить режим интерпретации режимом компиляции. Правда, интерпретация имеет и свои преимущества: с ее помощью проще отлаживать программу. Иногда пользуются режимом «псевдокомпиляции»: ускоряют интерпретацию за счет предварительного запоминания тех или иных элементов разобранных команд в памяти машины. В настоящее время машинные коды не используются, и каждая программа для компьютера составляется на том или ином языке программирования. Существует очень много языков, все они, как правило, содержат средства описания данных, арифметические операторы (подобные с = а+b), средства управления и организации циклов, средства ввода и вывода информации.
Классификация языков программирования
Общепринятой и строгой классификации языков программирования не существует. Поэтому представим классификацию наиболее распространенных в настоящее время языков:
языки Ассемблера;
универсальные языки высокого уровня BASIC и FORTRAN;
языки более «низкого» уровня Pascal и С (и их объектно-ориентированные расширения, в частности, C++);
командные языки баз данных и Clipper;
объектно-ориентированные языки четвертого поколения
Особое место занимают такие языки высокого уровня, как COBOL, Ada, Prolog. Они менее универсальны, чем перечисленные выше средства, но каждый из них в своем роде, по своему весьма эффективен. Каждая команда на языке ассемблера чаще всего представляет собой одну машинную команду, записанную символическим кодом. Язык ассемблера позволяет создавать наиболее эффективные программы, однако процесс очень трудоемок и требует высокой квалификации программиста. Программирование на этом языке часто называют программированием на низком уровне (хотя программы получаются высокого качества). _Каждой команде на языке высокого уровня обычно соответствует либо несколько машинных команд, либо целая подпрограмма в машинном коде. К языкам высокого уровня (их часто называют алгоритмическими) относятся FORTRAN (formula translator), BASIC (beginner's all purpose symbolic instruction code), COBOL (Common Business-Oriented Language), C, Pascal, Prolog (programming in logic) и многие другие. Раньше тот или иной язык использовался только в той предметной области, для которой он изобретался (например, FORTRAN – для математических расчетов, COBOL – для коммерческих расчетов, С – для системного программирования и т.д.). В настоящее время возможности языков сглажены, и теперь многие из них теперь считаются универсальными. С помощью VBA можно создавать собственные программные модули, собственные интерфейсы для офисных приложений Word, Excel, Access.
Имя и значение переменной в программировании
В математике переменные – это данные, которые меняют свои значения. В программировании переменная – это небольшая область в оперативной памяти компьютера, куда во время работы программы можно занести и хранить в закодированном виде некоторое значение (целое или действительное число либо символьный текст), которым при необходимости можно пользоваться и которое можно изменять.
