Что такое программирование? Совокупность процессов, связанных с разработкой программ и их реализацией. В широком смысле к указанным процессам относят все технические операции, необходимые для создания программ, включая анализ требований, все стадии разработки, а также реализации в виде готового программного продукта. В узком смысле под программированием часто понимают только процессы выбора структуры, кодирования и тестирования программ.
ПРОГРАММА 2. Последовательность операций, в том числе нескольких параллельных, выполняемых ЭВМ для достижения поставленной цели или задачи. 3. Описание на языке программирования или в машинном коде действий, которые должна выполнить ЭВМ в соответствии с алгоритмом решения конкретной задачи или группы задач (синоним машинная программа). 1. Упорядоченная последовательность команд, подлежащих обработке.
Верификация программы 1. Установление любым корректным методом факта соответствия программы заданным целям ее создания или приобретения установление правильности программы. 2. Формализованный контроль или проверка работоспособности программы. Отладка программы обнаружение, локализация и устранение ошибок в компьютерной программе. Тестирование программы проверка программы в рабочих условиях с некоторым специально созданным (тестовым) массивом данных в целях определения ее работоспособности в соответствии с заданными критериями оценки.
ЯЗЫК ПРОГРАММИРОВАНИЯ Формализованный язык, предназначенный для описания программ и алгоритмов решения задач на ЭВМ. Языки программирования являются искусственными. В них синтаксис и семантика строго определены. Поэтому они не допускают свободного толкования выражения, что характерно для естественного языка. Языки программирования Различают также следующие виды языков программирования: Алгоритмический язык, Формальный язык, Исходный язык, Графический язык и другие. языки высокого уровня языки низкого уровня.
Язык высокого уровня язык программирования, средства которого обеспечивают описание задачи в наглядном, легко воспринимаемом виде, удобном для программиста. Он не зависит от внутренних машинных кодов ЭВМ любого типа, поэтому программы, написанные на нем, требуют перевода в машинные коды программами транслятора либо интерпретатора. К языкам высокого уровня относят Фортран, ПЛ/1, Бейсик, Паскаль, Си, Ада и др.
Язык низкого уровня язык программирования, предназначенный для определенного типа ЭВМ и отражающий его внутренний машинный код.
Алгоритмический язык совокупность символов, соглашений и правил, используемых для однозначного описания алгоритмов и обычно являющихся частью языка программирования. Формальный язык язык программирования, построенный по правилам некоторого логического исчисления формальной грамматики, представляющей собой систему правил построения в заданном алфавите конечных знаковых последовательностей, множество которых образует формальный язык. Исходный язык язык программирования, на котором написана программа, в отличие от машинного языка, на котором программы выполняются компьютером. Исходные языки классифицируются на языки высокого уровня и языки низкого уровня. Графический язык язык, предназначенный для написания программ машинной графики и пользования ими.
АЛГОРИТМ Формальные описания алгоритмов аналогичны представлениям основных частей программ, которые их реализуют, поэтому многое, что относят к описанию конкретных программ, применимо к алгоритму, и наоборот. Некоторые виды алгоритмов : 1. Последовательность действий (операций) и правил их выполнения или команд, предназначенных для решения определенной задачи или группы задач. 2. Предписание, определяющее ход вычислительного процесса, связанного с преобразованием данных от некоторого их исходного состояния к требуемому результату. алгоритм ветвления линейный алгоритм циклический алгоритм.
Линейный алгоритм алгоритм, не содержащий ветвей и циклов, все элементы которого выполняются последовательно. Пример
Циклический алгоритм алгоритм обслуживания в системах с разделением времени, при котором задача, использовавшая выделенный ей ресурс времени центрального процессора, прерывается и помещается в конец очереди. Пример Алгоритм циклической структуры с предусловием Алгоритм циклической структуры с постусловием Алгоритм циклической структуры без условия
Зная длины трех сторон треугольника, вычислить площадь и периметр треугольника. Пусть a, b, c - длины сторон треугольника. Необходимо найти S - площадь треугольника, P - периметр. Входные данные: a, b, c. Выходные данные: S, P. Блок-схема алгоритма представлена на рис. ПРИМЕР
Вычислить факториал числа N (N!=1 2 3 … N). Входные данные: N - целое число, факториал которого необходимо вычислить. Выходные данные: factorial - значение факториала числа N, произведение чисел от 1 до N, целое число. Промежуточные данные: i - целочисленная переменная, принимающая значения от 2 до N с шагом 1, параметр цикла. Блок-схема приведена на рис. Итак, вводится число N. Переменной factorial, предназначенной для хранения значения произведения последовательности чисел, присваивается начальное значение, равное единице. Затем организуется цикл, параметром которого выступает переменная i. Если значение параметра цикла меньше или равно N, то выполняется оператор тела цикла, в котором из участка памяти с именем factorial считывается предыдущее значение произведения, умножается на текущее значение параметра цикла, а результат снова помещается в участок памяти с именем factorial. Когда параметр i становится больше N, цикл заканчивается, и на печать выводится значение переменой factorial, которая была вычислена в теле цикла.
Алгоритм ветвления - алгоритм, в котором выбирается один из нескольких вариантов (путей). Пример
Известны коэффициенты и с квадратного уравнения. Вычислить корни квадратного уравнения. Входные данные: a, b, c. Выходные данные: x 1, x 2. Блок-схема представлена на рис. ПРИМЕР