- •1. Предмет курса. История возникновения и развития информатики. Объекты и составные части информатики. Информатика как наука
- •2 .Понятие об информации. Виды информации и ее свойства. Кодирование и носители информации
- •3.Информационные процессы в современном обществе: Информационная культура. Информационные процессы.
- •4.Роль и место языка в информатике. Формальные языки в информатике. Языки представления чисел: системы счисления.
- •5.Язык логики. Логические основы построения компьютера. Основные понятия формальной логики.
- •6.Создание простых и комплексных текстовых документов для строительного проектирования.
- •7.Обработка данных средствами электронных таблиц. Назначение и содержание электронных таблиц.
- •8.Работа с базами данных. Назначение, формирование и содержание баз данных. Работа с субд ms Access.
- •1) Классификация моделей по области использования:
- •2) Классификация моделей по фактору времени:
- •4) Классификация моделей по форме представления:
- •14.Основы численных методов. Точные и приближенные значения величин, точные и приближенные числа.
- •17. Технологии программирования.
- •18.Языки программирования. Обзор современных языков и систем программирования.
- •22. Компьютерные коммуникации. Компьютерные сети. Назначение компьютерных сетей.
- •23. Глобальная сеть Интернет. История Интернет. Подходы к сетевому взаимодействию. Структура сети.
18.Языки программирования. Обзор современных языков и систем программирования.
Язы́к программи́рования — формальная знаковая система, предназначенная для записи компьютерных программ. Язык программирования определяет набор лексических, синтаксических и семантических правил, задающих внешний вид программы и действия, которые выполнит исполнитель (компьютер) под её управлением.
Первые языки программирования начали появляться еще в далеких 1950-х.
Рассмотрим основные и популярные языки программирования.
Assembler Это ярчайший представитель языков низкого уровня, набор понятий которого основан на аппаратной реализации.Использование ассемблера целесообразно в случаях, когда необходимо напрямую взаимодействовать с оборудованием, либо получить большую эффективность для некоторой части программы за счет более высокого контроля над генерацией кода.
Кобол - Язык программирования высокого уровня, разработанный в конце 1950-х гг. ассоциацией КАДАСИЛ для решения коммерческих и экономических задач. Отличается развитыми средствами работы с файлами. В настоящее время используется для решения экономических, информационных и других задач.
Фортран - Язык программирования высокого уровня, разработанный фирмой IBM в 1956 г. для описания алгоритмов решения вычислительных задач. Относится к категории процедурно-ориентированных языков. Используется на всех классах ЭВМ.
Ада - Язык программирования высокого уровня, ориентированный на применение в системах реального времени и предназначенный для автоматизации задач управления процессами и/или устройствами, например, в бортовых (корабельных, авиационных и др.) ЭВМ.
BASIC Рожденный в 60-е годы в Америке. Бейсик был задуман как простой язык для быстрого освоения. Бейсик стал фактическим стандартом для МикроЭВМ именно благодаря своей простоте как в освоении так и в реализации. Пригоден для использования на начальном этапе обучения, как средство автоматизации (в случаях когда он встроен в соответствующие системы) либо как средство для быстрого создания приложений.
Pascal Разработанный известным теоретиком Н.Виртом на основе идей Алгола-68, Паскаль предназначался прежде всего для обучения программированию. Построенный по принципу "необходимо и достаточно", он располагает строгим контролем типов, конструкциями для описания произвольных структур данных, небольшим, но достаточным набором операторов структурного программирования. К сожалению, обратной стороной простоты и строгости является громоздкость описаний конструкций языка. Наиболее известная реализация - Turbo/Borland Pascal - несмотря на отличия от стандарта Паскаля, представляет из себя среду и набор библиотек, сделавшие из учебного языка промышленную систему для разработки программ в среде MS-DOS.
C и C++ В основе языка C - требования системного программиста: полный и эффективный доступ ко всем ресурсам компьютера, средства программирования высокого уровня, переносимость программ между различными платформами и операционными системами. С++, сохраняя совместимость с C, вносит возможности объектно-ориентированного программирования, выражая идею класса (объекта) как определяемого пользователем типа. Благодаря перечисленным качествам, C/C++ занял позицию универсального языка для любых задач. Но его применение может стать неэффективным там, где требуется получить готовый к употреблению результат в кратчайшие сроки, либо там, где невыгодным становится сам процедурный подход.
Delphi - это не продолжатель дела Borland Pascal / Borland C, его ниша - т.е. быстрое создание приложений (Rapid Application Developing, RAD). Подобные средства позволяют в кратчайшие сроки создать рабочую программу из готовых компонентов, не растрачивая массу усилий на мелочи. Особое место в таких системах занимают возможности работы с базами данных.
Лисп - Алгоритмический язык, разработанный в 1960 г. Дж. Маккарти и предназначенный для манипулирования перечнями элементов данных. Используется преимущественно в университетских лабораториях США для решения задач, связанных с искусственным интеллектом. В Европе для работ по искусственному интеллекту предпочитают использовать Пролог.
Пролог - Язык программирования высокого уровня декларативного, предназначенный для разработки систем и программ искусственного интеллекта. Относится к категории языков пятого поколения. Был разработан в 1971 г. в университете г. Марсель (Франция), относится к числу широко используемых и постоянно развиваемых языков. Последняя его версия Prolog 6.0
ЛОГО - Язык программирования высокого уровня, разработан в Массачусетском технологическом институте в ориентировочно 1970 г. для целей обучения математическим понятиям. Используется также в школах и пользователями ПЭВМ при написании программ для создания чертежей на экране монитора и управления перьевым графопостроителем.
Java Как яркий пример специализации, язык Java появился в ответ на потребность в идеально переносимом языке, программы на котором эффективно исполняются на стороне клиента WWW. В ввиду специфики окружения, Java может быть хорошим выбором для системы, построенной на Internet/Intranet технологии.
Алгол - Язык программирования высокого уровня, ориентированный на описание алгоритмов решения вычислительных задач. Был создан в 1958 г. специалистами западно-европейских стран для научных исследований. Хотя в настоящее время Алгол практически не используется, он послужил основой или оказал существенное влияние на разработку более современных языков, например, Ада, Паскаль и др.
Создатели языков по-разному толкуют понятие язык программирования. К наиболее распространённым утверждениям, признаваемым большинством разработчиков, относятся следующие:
Функция: язык программирования предназначен для написания компьютерных программ, которые применяются для передачи компьютеру инструкций по выполнению того или иного вычислительного процесса и организации управления отдельными устройствами.
Задача: язык программирования отличается от естественных языков тем, что предназначен для передачи команд и данных от человека к компьютеру, в то время как естественные языки используются для общения людей между собой. Можно обобщить определение «языков программирования» — это способ передачи команд, приказов, чёткого руководства к действию; тогда как человеческие языки служат также для обмена информацией.
19 Алфавит алгоритмического языка. Структура программы, форматы записи.
АЛГОРИТМИЧЕСКИЙ ЯЗЫК - формальный язык, предназначенный для описания вычислительных процессов, или, что то же, для записи алгоритмов, подлежащих выполнению на вычислительных машинах.
Способы записи алгоритмов:
1..графическая форма (блок-схемы );
2.Русский алгоритмический язык Ершова;
3.представление алгоритмов на языках программирования высшего ур.
Алгоритм, записанный с помощью псевдокода, представляет собой полуформализованное описание на условном алгоритмическом языке, включающее как основные элементы языка программирования, так и фразы естественного языка, общепринятые математические обозначения и другие.
Структура алгоритмического языка:
ключевые слова- это слова, смысл которых предопределен заранее.
Имя (идентификатор)- имена различным объектам- алгоритму, переменной, константе, пользовательскому типу, подпрограмме.
Синтаксис- это свод правил, определяющих корректную запись предложений алгоритмического языка.(нахождение ошибок в записи алгоритма на конкретном языке программирования -компилятор)
Семантика- определяет смысловую корректность инструкции (тест).
Переменная-это символически по имени обозначенная величина; определить переменную- поставить ей в соответствие некоторый тип, по умолчанию значение переменной считается неопределенным.
Основные элементы алгоритмического языка
Основными понятиями в алгоритмических языках являются следующие.
Имена (идентификаторы) - последовательность символов для обозначения объектов программы (переменных, массивов, функций и дp.).
Операции. Существуют следующие типы операций:
- арифметические операции: сложение, обозначается символом “+”; вычитание, обозначается символом “-”; умножение, обозначается символом “*”; деление, обозначается символом “/” и дp. ;
- логические операции: операции “логическое и”, “логическое или”, “логическое не” и др.;
- операции отношения: меньше, обозначается символом “”; меньше или равно, обозначается символами “=”; равно, обозначается символом “=”; не равно, обозначается символами “”.
- операция конкатенации символьных значений друг с другом, изображается знаком "+".
Базовые алгоритмические структуры: следование, ветвление, циклы.
Основными понятиями в алгоритмических языках обычно являются следующие.
1. Имена (идентификаторы) — употребляются для обозначения объектов программы (пеpеменных, массивов, функций и дp.).
2. Операции. Типы операций:
аpифметические опеpации + , — , * , / и дp. ;
логические опеpации и , или , не ;
опеpации отношения < , > , <= , >= , = , <> ;
опеpация сцепки (иначе, "присоединения", "конкатенации" ) символьных значений дpуг с другом с образованием одной длинной строки; изображается знаком "+".
3. Выpажения — пpедназначаются для выполнения необходимых вычислений, состоят из констант, пеpеменных, указателей функций (напpимеp, exp(x)), объединенных знаками опеpаций.
Различают выражения арифметические, логические и строковые.
Арифметические выражения служат для определения одного числового значения. Например, (1+sin(x))/2. Значение этого выражения при x=0 равно 0.5, а при x=p/2 — единице.
Логические выражения описывают некоторые условия, которые могут удовлетворяться или не удовлетворяться. Таким образом, логическое выражение может принимать только два значения — "истина" или "ложь" (да или нет). Рассмотрим в качестве примера логическое выражение x*x + y*y < r*r , определяющее принадлежность точки с координатами (x, y) внутренней области круга радиусом r c центром в начале координат. При x=1, y=1, r=2 значение этого выражения — "истина", а при x=2, y=2, r=1 — "ложь".
Cтроковые (литерные) выражения, значениями которых являются текcты. В строковые выражения могут входить литерные и строковые константы, литерные и строковые переменные, литерные функции, разделенные знаками операции сцепки. Например, А + В означает присоединение строки В к концу строки А . Если А = "куст ", а В = "зеленый", то значение выражения А + В есть "куст зеленый".
20 Оператор присваивания. Ввод-вывод данных
Оператор присваивания - основной оператор любого языка программирования. Общая форма записи оператора:
имя величины := выражение
Например, V:=A; или V:=A+1;
Оператор присваивания заменяет текущее значение переменной новым значением, которое определяется выражением, или определяет выражение, значение которого должно возвращаться функцией. Выражение должно быть совместимо по присваиванию с типом переменной или типом значения, возвращаемого функцией в качестве результата
Условный оператор позволяет проверить некоторое условие и в зависимости от результатов проверки выполнить то или иное действие. Таким образом, условный оператор - это средство ветвления вычислительного процесса.
Оператор условной передачи управления используют для программирования ветвлений, т. е. ситуаций, когда возникает необходимость при выполнении условия реализовывать одни действия, а при нарушении - другие.
Стандартным устройством ввода является клавиатура, а вывода — монитор. Стандартные — значит "работающие по-умолчанию"; т.е. если не указано ничего иного, то программа будет считывать данные с клавиатуры, а выводить их на монитор. Вместе клавиатуру и монитор называют консолью. Таким образом консоль представляет собой стандартное устройство ввода-вывода.
Вывод данных на экран и в файл в языке программирования Pascal осуществляется с помощью процедур write() и writeln().