Описание операторов, используемых в программе

      Комментарии к записи Описание операторов, используемых в программе отключены

ВВЕДЕНИЕ

Существуют различные классификации языков программирования.

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

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

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

К языкам программирования высокого уровня относят:

Фортран – переводчик формул, был разработан в середине 50–х годов программистами фирмы IBM, используется для программ, выполняющих естественно-научные и математические расчёты;

— Алгол;

— Кобол – коммерческий язык, используется для программирования экономических задач;

— Паскаль;

— Бейсик – разработан профессорами Дармутского колледжа Джоном Кемени и Томасом Курцом;

— Си – разработан Деннисом Ритчем в 1972 г.;

— Пролог – в основе языка лежит аппарат математической логики.

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

Программу, написанную на языке программирования высокого уровня, ЭВМ не понимает, поскольку ей доступен только машинный язык. Поэтому для перевода программы с языка программирования на язык машинных кодов используют специальные программы – трансляторы. Существует три вида трансляторов:

— интерпретатор – транслятор, который производит пооператорную обработку и выполнение исходного кода программы;

— компилятор – транслятор, который преобразует всю программу в модуль на машинном языке, после чего программа записывается в память компьютера и только потом исполняется;

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

Языки программирования также можно разделять на поколения:

— языки первого поколения – машинно-ориентированные с ручным управлением памяти на компьютерах первого поколения;

— языки второго поколения – с мнемоническим представлением команд, так называемые автокоды;

— языки третьего поколения – общего назначения, используемые для создания прикладных программ любого типа, например, Бейсик, Кобол, Си, Паскаль;

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

— языки программирования пятого поколения – декларативные, объектно-ориентированные и визуальные, например, Пролог, ЛИСП, Си++, Visual Basic, Delphi.

Языки программирования также можно классифицировать на процедурные и непроцедурные.

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

Среди процедурных языков выделяют в свою очередь структурные и операционные языки. В структурных языках одним оператором записываются целые алгоритмические структуры: ветвления, циклы и т.д. В операционных языках для этого используются несколько операций. Широко распространены следующие структурные языки: Паскаль, Си, Ада. Среди операционных известны Фортран, Бейсик, Фокал.

Непроцедурное (декларативное) программирование появилось в начале 70-х годов 20 века. К непроцедурному программированию относятся функциональные и логические языки.

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

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

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

Первый объектно-ориентированный язык программирования Simula был создан в 1960-х годах Кристеном Нигаардом и Оле-Йоханом Далом.

Ява – язык для программирования Internet, позволяющий создавать безопасные, переносимые, надёжные, объектно-ориентированные интерактивные программы. Язык Ява жёстко связан с Internet, потому что первой серьёзной программой, написанной на этом языке, был браузер Всемирной паутины.

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

С появлением системы Windows фирма Microsoft разработала графический вариант языка Basic – Visual Basic. Он предназначался для создания программ, работающих в режиме диалога с пользователем, т. е. в визуальном режиме. По мере развития компьютерной технологии VB постепенно превращался из простого языка для начинающих в мощный инструмент для разработки приложений.

Visual Basic – это среда программирования, предназначенная для написания программ, работающих под управлением операционной системы Windows. Используя VB, можно разрабатывать очень сложные приложения практически для любой области современных компьютерных технологий: бизнес-приложения, игры, мультимедиа, базы данных.

ПОСТАНОВКА ЗАДАЧИ

Составить алгоритм и программу для вычисления и вывода на печать в общепринятом виде элементов матрицы Zij по формуле:

,

где i=1, 2, …, 11; j=1, 2, …, 11; а=3.

После вычисления элементов матрицы определить среднее арифметическое значений отрицательных элементов в каждой строке этой матрицы.

БЛОК-СХЕМА

ОПИСАНИЕ БЛОК-СХЕМЫ

Блок 1 – ввод значений заданных элементов массивов Xi, Yj.

Блок 2 – ввод значения а.

Блок 3-6 – сложный цикл для вычисления элементов матрицы.

Блок 3 – начало внешнего цикла: вычисление матрицы по строкам.

Блок 4 – начало внутреннего цикла: вычисление элементов матрицы в текущей строке.

Блок 5 – вычисление элемента матрицы.

Блок 6 – печать вычисленных элементов матрицы.

Блок 7-12 – сложный цикл для вычисления среднего арифметического отрицательных значений матрицы по строкам.

Блок 7 – задание начального количества отрицательных значений матрицы.

Блок 8 – начало внешнего цикла: вычисление среднего арифметического отрицательных значений матрицы по строкам.

Блок 9 – начало внутреннего цикла: вычисление среднего арифметического отрицательных значений матрицы в текущей строке.

Блок 10 – проверка условия, является ли текущий элемент матрицы отрицательным.

Блок 11 – вычисление суммы отрицательных значений матрицы в текущей строке.

Блок 12 – вычисление количества отрицательных значений матрицы в текущей строке.

Блок 13 – проверка условия деления на 0.

Блок 14 – вычисление среднего арифметического отрицательных значений матрицы в текущей строке.

Блок 15 – печать вычисленных значений среднего арифметического отрицательных значений матрицы в текущей строке.

ПРОГРАММНЫЙ КОД

Private Sub Command1_Click()

‘ Описание массивов и переменных

Dim x(11) As Single, y(11) As Single, z(11, 11) As Single, E(11) As Single

Dim a As Single

Dim i As Byte, j As Byte, n As Single

‘ Ввод

Print Значение массива X

For i = 1 To 11

x(i) = Val(InputBox(Введите x(i), Массив X))

Print x(i);

Next i

Print

Print Значение массива Y

For j = 1 To 11

y(j) = Val(InputBox(Введите y(j), Массив Y))

Print y(j);

Next j

Print

a = Val(InputBox(Введите a, Значение a))

Print a =; a

Print

‘Вычисление и вывод

Print Элементы матрицы

For i = 1 To 11

For j = 1 To 11

z(i, j) = (Sin(x(i)) ^ 2 + 2 * a * y(j)) / (Sin((x(i) * y(j)) ^ 3) + (a + 2) ^ (1 / 3))

Print z(i, j);

Next j

Print

Next i

Print

‘ Вычисление варианта 92

Print (Среднее арифметическое отрицательных элементов по строкам)

For i = 1 To 11

n = 0

For j = 1 To 11

If z(i, j)0 Then ‘Проверка условия

E(i) = E(i) + z(i, j)

n = n + 1

End If

Next j

If n0 Then

E(i) = E(i) / n

End If

Print E(i)

Next i

End Sub

ОПИСАНИЕ ОПЕРАТОРОВ, ИСПОЛЬЗУЕМЫХ В ПРОГРАММЕ

Private Sub … End Sub – операторы начала и окончания процедуры соответственно.

DIM – оператор описывает тип используемых одномерных массивов Xi и Yj, двумерного массива Zij, среднего арифметического Ei и простых переменных i и j.

Single – тип переменной; вещественная переменная одинарной точности с плавающей десятичной точкой.

Byte – тип переменной; положительное целое число.

Val – тип переменной; указывает, что данные являются числом, а не текстом.

Print – оператор вывода на экранную форму проекта.

InputBox – системная функция получения данных от пользователя.

For … Next – операторы начала и окончания цикла соответственно.

If … Then – операторы условия.

‘ – оператор-комментарий, используется для пояснения отдельных фрагментов программного кода, непосредственного участия в работе программы не принимает.

Статьи к прочтению:

Стоит ли пользоваться оператором Yota?


Похожие статьи: