- •Часть II. Информатика
- •Содержание
- •Структура дисциплины
- •Рейтинг и оценка уровня знаний студентов по дисциплине «Математика и информатика»
- •1. Оценивание результатов работы студентов
- •Допуск к тестированию и процедура тестирования
- •Ликвидация задолженности студента по дисциплине
- •Инструкции для студента
- •Модуль 3. Алгоритмизация и программирование Маршрутная карта изучения дисциплины «Математика и информатика-2» по модулю №3
- •2.1. Алгоритм и его свойства
- •2.2. Таблица блоков
- •2.3. Основные типы алгоритмов
- •2.3.1. Линейные алгоритмы
- •2.3.2. Алгоритмы ветвлений
- •2.3.3. Циклические алгоритмы
- •2.4. Блок-схемы линейных алгоритмов
- •Блок-схемы разветвляющихся алгоритмов
- •3. Примеры выполнения задания к практическому занятию № 1
- •3.1. Линейный алгоритм
- •3.2. Разветвляющийся алгоритм
- •4. Задания к практическому занятию № 1
- •5. Вопросы для самоконтроля к практическому занятию № 1. Тема «Алгоритмы. Ветвления»
- •Практическое занятие №2. Алгоритмы. Блок-схемы. Циклы
- •1. Цель занятия
- •2. Теоретический материал для практического занятия №2
- •2.1. Словесные алгоритмы. Циклы
- •2.2. Блок-схемы. Циклы
- •Примеры выполнения задания к практическому занятию №2
- •4. Задания к практическому занятию № 2
- •5. Вопросы для самоконтроля к практическому занятию № 2. Тема «Алгоритмы. Блок-схемы. Циклы»
- •Практическое занятие № 3. Алгебра логики. Операции над высказываниями
- •1. Цель занятия
- •Теоретический материал для практического занятия №3
- •2.1. Логические операции
- •3. Примеры выполнения задания к практическому занятию №3
- •4. Задания к практическому занятию № 3
- •5. Вопросы для самоконтроля к практическому занятию № 3. Тема «Алгебра логики»
- •Практическое занятие №4. Программирование. Линейные процессы. Ветвления
- •1. Цель занятия
- •2. Теоретический материал для практического занятия №4
- •2.1. Конструкция языка Turbo Pascal
- •2.1.1. Алфавит
- •2.1.2. Данные и типы данных
- •2.1.3. Стандартные функции
- •2.1.4. Арифметические, логические, символьные выражения
- •2.2. Структура программы на языке Паскаль
- •2.3. Основные операторы Паскаля
- •2.3.1. Оператор присваивания
- •2.3.2. Операторы ввода
- •2.3.3. Операторы вывода
- •2.3.4. Комментарий
- •2.4. Операторы передачи управления
- •2.4.1. Оператор безусловного перехода
- •2.4.2. Операторы условного перехода
- •3. Примеры выполнения задания к практическому занятию № 4
- •3.1. Программы линейных алгоритмов
- •3.2. Программы разветвляющихся алгоритмов
- •4. Задания к практическому занятию № 4
- •5. Вопросы для самоконтроля к практическому занятию № 4
- •Практическое занятие № 5. Программирование. Циклы
- •1. Цель занятия
- •2. Теоретический материал для практического занятия № 5
- •2.1. Оператор цикла с параметрами
- •2.2. Оператор цикла while с предусловием
- •2.3. Оператор цикла repeat…until с постусловием
- •3. Примеры выполнения задания к практическому занятию № 5
- •4. Задания к практическому занятию № 5
- •5. Вопросы для самоконтроля к практическому занятию № 5. Тема «Программирование. Циклы»
- •Практическое занятие №6. Языки программирования высокого уровня
- •1. Цель занятия
- •2. Теоретический материал для практического занятия №6
- •2.1. Общая классификация языков программирования
- •2.1.1. Языки низкого уровня
- •2.2. Классификация языков программирования высокого уровня
- •2.2.1. Процедурное программирование
- •2.2.2. Объектно-ориентированное программирование
- •2.2.3. Системы визуально-ориентированного программирования
- •2.2.4. Проблемно-ориентированное (непроцедурное или декларативное) программирование
- •1) Функциональное программирование
- •2) Логическое программирование
- •3) Языки описания сценариев
- •3. Примеры выполнения задания к практическому занятию №6
- •4. Задания к практическому занятию № 6
- •5. Вопросы для самоконтроля к практическому занятию № 6. Тема «Языки программирования высокого уровня».
- •Модуль 4. Стандартное программное обеспечение, предназначенное для обработки информации Маршрутная карта изучения дисциплины «Математика и информатика-2» по модулю №4
- •Задания к практическим работам по модулю №4
- •Практическое занятие № 7. Операционные системы. Работа в операционных системах
- •1. Цель занятия
- •2. Теоретический материал для практического занятия № 7
- •2.1. Понятие информации
- •2.2. Свойства информации
- •2.3. Измерение информации
- •2.3.1. Синтаксическая мера информации
- •2.3.2. Семантическая мера информации
- •2.3.3. Прагматическая мера информации
- •2.4. Информатика. Предмет и задачи информатики
- •Технические средства
- •2.5.1. Архитектура эвм
- •2.5.2. Состав и назначение основных элементов персонального компьютера (пк)
- •Центральный процессор
- •Запоминающие устройства: классификация, принцип работы, основные характеристики
- •2.6. Обзор программного обеспечения
- •2.6.2. Системы программирования
- •2.6.3. Прикладное программное обеспечение
- •2.7. Базовое программное обеспечение. Операционные системы (ос)
- •2.7.1. Понятие файла, каталога, файловой структуры
- •2.7.2. Операционная система ms Windows
- •3. Примеры выполнения задания к практическому занятию №7
- •4. Задания к практическому занятию № 7
- •5. Вопросы для самоконтроля к практическому занятию № 7. Тема «Работа в операционных системах»
- •Практическое занятие №8. Офисный пакет программ Microsoft Office в профессиональной деятельности. Текстовые редакторы и процессоры
- •1. Цель занятия
- •2. Теоретический материал для практического занятия № 8
- •3. Примеры выполнения задания к практическому занятию № 8
- •4. Задания к практическому занятию № 8
- •5. Вопросы для самоконтроля к практическому занятию № 8. Тема «Текстовый редактор word»
- •Практическое занятие №9. Применение встроенных функций электронной таблицы excel в профессиональной деятельности
- •1. Цель занятия
- •2. Теоретический материал для практического занятия №9
- •2.1. Ячейка – основной элемент таблицы
- •2.2. Вычисления в Excel. Формулы и функции
- •2.2.1. Формулы Excel
- •2.2.2. Функции Excel
- •3. Примеры выполнения задания к практическому занятию №9
- •3.1. Примеры с функциями 16 из таблицы 9.3
- •3.2. Пример с функцией «суммесли»
- •3.3. Пример с функцией «счётесли»
- •3.4. Пример с функцией «если»
- •4. Задания к практическому занятию № 9
- •5. Вопросы для самоконтроля к практическому занятию № 9. Тема «Встроенные функции excel»
- •Практическое занятие № 10. Компьютерная графика. Сравнение различных видов графики
- •1. Цель занятия
- •2. Теоретический материал для практического занятия № 10
- •2.1. Виды графики
- •2.1.1. Растровая графика
- •Векторная графика
- •Разрешающая способность
- •Цветовое разрешение и цветовые модели
- •2.3.1. Кодирование цвета
- •2.3.2. Цветовые модели
- •1) Цветовая модель rgb
- •2) Цветовая модель cmyk
- •2.4. Форматы графических изображений
- •2.5. Шрифты, поддерживаемые операционной системой Windows xp
- •1) Контурные шрифты
- •2) Векторные шрифты
- •3) Растровые шрифты
- •3. Примеры выполнения задания к практическому занятию №10
- •4. Задания к практическому занятию №10
- •5. Вопросы для самоконтроля к практическому занятию № 10. Тема «Компьютерная графика»
- •Практическое занятие №11. Анализ прикладного и служебного программного обеспечения
- •1. Цель занятия
- •2. Теоретический материал для практического занятия №11
- •2.1. Служебные приложения Windows xp
- •2.2. Служебное программное обеспечение Windows xp
- •2.3. Прикладное программное обеспечение (ппо)
- •3. Примеры выполнения задания к практическому занятию №11
- •4. Задания к практическому занятию №11
- •5. Вопросы для самоконтроля к практическому занятию № 11. Тема «Анализ прикладного и служебного программного обеспечения»
- •Литература
- •Приложение №1. Задания для выполнения самостоятельной работы №3 Задание 1. Тема: «Алгоритмы. Блок-схемы. Ветвления»
- •Задание 2. Тема: «Алгоритмы. Блок-схемы. Циклы»
- •Задание 3. Тема «Алгебра логики»
- •Приложение №3. Задания для выполнения самостоятельной работы идз №4 Задание 1. Тема: «Текстовые редакторы. Гиперссылки»
- •Варианты заданий по теме: «Текстовые редакторы»
- •Задание 2. Тема: «Выполнение вычислений в таблицах редактора word»
- •Задание 3. Тема: «Встроенные функции электронной таблицы excel»
- •Приложение №4. Задания для выполнения практического занятия и самостоятельной работы идз №4 Тема: «Анализ прикладного и служебного программного обеспечения»
- •Задание 4. Идз №4. Тема: «Программное обеспечение (прикладное, сервисное, служебное)»
- •Приложение №5. Оформление самостоятельной работы
- •Раздел 3 самостоятельной работы по модулям №3, 4 должен включать:
- •Приложение №6. Формулы для практической работы №7
Задание 3. Тема «Алгебра логики»
Составить таблицу истинности для двух логических выражений:
Таблица 3.5
Вариант № |
Вариант 1 |
Вариант 2 |
Вариант 3 |
Вариант 4 |
Задание 1 |
|
|
|
|
Задание 2 |
|
|
|
|
Вариант № |
Вариант 5 |
Вариант 6 |
Вариант 7 |
Вариант 8 |
Задание 1 |
|
|
|
|
Задание 2 |
|
|
|
|
Вариант № |
Вариант 9 |
Вариант 10 |
Вариант 11 |
Вариант 12 |
Задание 1 |
|
|
|
|
Задание 2 |
|
|
|
|
Вариант № |
Вариант 13 |
Вариант 14 |
Вариант 15 |
Задание 1 |
|
|
|
Задание 2 |
|
|
|
Вариант № |
Вариант 16 |
Вариант 17 |
Вариант 18 |
Вариант 19 |
Задание1 |
|
|
|
|
Задание2 |
|
|
|
|
Вариант № |
Вариант 20 |
Вариант 21 |
Вариант 22 |
Вариант 23 |
|
||||||
Задание 1 |
|
|
|
|
|
||||||
Задание 2 |
|
|
|
|
|
||||||
Вариант № |
Вариант 24 |
Вариант 25 |
Вариант 26 |
|
|||||||
Задание 1 |
|
|
|
|
|||||||
Задание 2 |
|
|
|
|
|||||||
Вариант № |
Вариант 27 |
Вариант 28
|
Вариант 29
|
Вариант 30
|
|||||||
Задание 1 |
|
|
|
|
|||||||
Задание 2 |
|
|
|
|
Задание 4. Тема: «Программирование. Линейные процессы. Ветвления»
Алгоритмический язык программирования Turbo Pascal. Написать программы на Паскале для заданий 1, 2.
Задание 5. Тема: «Программирование. Циклы»
Алгоритмический язык программирования Turbo Pascal. Написать программы на Паскале для задания 3.
Приложение №2. Задания для выполнения практической работы №6
Тема: «Классификация языков программирования»
Из таблицы 6.2 выбрать язык программирования, дать ему описание, назначение, выбрать ему место в классификации языков.
Таблица 6.2
Вариант № |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
Язык |
машинный |
Ассемблер |
Бейсик |
Паскаль |
Фортран |
ПЛ-1 |
Си |
Алгол |
Кобол |
Фокал |
Макроассемблер |
Вариант № |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
Язык |
Лисп |
Пролог |
Perl |
Python |
Rexx |
Tcl |
Ada |
Delphi |
Visual C, |
Visual Basic |
JavaScript. |
История развития языков программирования
Появление первых языков программирования относится к началу 50-х годов ХХ века. В это время был разработан первый язык ассемблера, созданный по принципу «одна строка-одна инструкция». Позже, к концу 50-х годов ХХ века, был разработан символический ассемблер, который стал первым полноценным языком программирования.
1. Язык ассемблера – это язык, предназначенный для представления в удобочитаемой символической форме программ, записанных на машинном языке. Он позволяет программисту пользоваться мнемоническими кодами операций, присваивать удобные имена ячейкам и областям памяти, а также задавать наиболее удобные схемы адресации.
2. Язык Макроассемблера является расширением языка Ассемблера путем включения в него макросредств. С их помощью в программе можно описывать последовательности инструкций с параметрами – макроопределения. После этого программист может использовать снабженные аргументами макрокоманды, которые в процессе ассемблирования программы автоматически замещаются макрорасширениями. Макрорасширение представляет собой макроопределение с подставленными вместо параметров аргументами.
Язык Макроассемблера представляет средства определения и использования новых, более мощных команд как последовательности базовых инструкций, что несколько повышает его уровень.
Языки Ассемблера и Макроассемблера применяются системными программистами-профессионалами с целью использования всех возможностей оборудования ЭВМ и получения эффективной по времени выполнения и по требуемому объему памяти программы. На этих языках обычно разрабатываются относительно небольшие программы, входящие в состав системного программного обеспечения: драйверы, утилиты и другие.
В начале 60-х годов ХХ века появились универсальные языки высокого уровня, которые характеризуются относительной простотой, независимостью от конкретного компьютера. Структура этих языков позволила писать программы специалистам далёким от знания компьютера. Эти языки относят к языкам программирования третьего поколения.
С начала 70-х годов ХХ века разрабатываются проблемно-ориентированные языки, оперирующие конкретными понятиями узкой предметной области. Эти языки ориентированы на специализированные области применения и относят к языкам программирования четвёртого поколения.
В середине 90-х годов ХХ века появились системы автоматического создания прикладных программ с помощью визуальных средств разработки. Эти языки относят к языкам программирования пятого поколения.
3. FORTRAN (Фортран) – первый компилируемый язык программирования высокого уровня, создан в 50-е годы Джимом Бэкусом. Главное применение - числовые расчеты. Употребляется до сих пор.
4. ALGOL (Алгол) – язык, ставший важной вехой в развитии языков программирования. Это компилируемый язык, создан в 1960 году, применяется в экономической области Логичный и математически строгий, до сих пор применяется для записи алгоритмов.
5. COBOL (Кобол) – один из первых языков программирования. Это компилируемый язык, создан в начале 60-х годов, применяется в экономической области. Ориентирован на разработку программ для обработки коммерческих данных и управления бизнесом. Широко используется до сих пор.
6. PL/1 (ПЛ/1). Это компилируемый язык, создан в 1964 году, язык общего назначения, который по замыслу IBM должен был взять всё лучшее из языков: Фортран, Алгол, Кобол и вытеснить специализированные языки программирования. PL/1 предназначался не только для программирования в сферах коммерции, науки и инженерного дела, но даже для системного программирования. Попытка не удалась.
7.1. BASIC (Бэйсик) (Beginners All-purpose Symbolic Instruction Code – многоцелевой язык символических инструкций для начинающих) представляет собой простой язык программирования. Сотрудники Дартмутского колледжа Томас Курц и Джон Кемени разработали этот язык в 1964 году.
Он был разработан как простейший язык для непосредственного общения человека с вычислительной машиной. Авторы отводили ему роль первого шага на пути к изучению других языков. Поэтому первоначально работа велась в интерактивном режиме с использованием интерпретаторов. В настоящее время для этого языка имеются также и компиляторы.
Basic широко распространен на ЭВМ различных типов и очень популярен в среде программистов, особенно начинающих, является одним из наиболее популярных языков в мире.
Существует множество диалектов этого языка, мало совместимых между собой. Basic активно поглощает многие концепции и новинки из других языков. Поэтому он достаточно динамичен, и нельзя однозначно определить его уровень.
7.2. VISUAL BASIC – объектно-ориентированная среда визуального программирования, внутренний язык приложений Ms Windows. Использует базовые конструкции языка Basic.
Согласно концепциям, заложенным в Basic, этот язык в смысле строгости и стройности является антиподом языка Pascal. В частности, в нем широко распространены различные правила умолчания, что считается плохим тоном в большинстве языков программирования подобного типа.
8.1. PASCAL (Паскаль) является одним из наиболее популярных среди прикладных программистов процедурным языком программирования, особенно для ПЭВМ. Разработанный в 1970 году швейцарским специалистом в области вычислительной техники профессором Никлаусом Виртом, язык назван в честь французского математика и по замыслу автора предназначался для обучения программированию. Однако язык получился настолько удачным, что стал одним из основных инструментов прикладных и системных программистов при решении задач вычислительного и информационно-логического характера. В 1979 году был подготовлен проект описания языка – Британский стандарт языка программирования Pascal BS6192, который стал также и международным стандартом ISO 7185.
В языке Pascal реализован ряд концепций, рассматриваемых как основа «дисциплинированного» программирования и заимствованных впоследствии разработчиками многих языков. Одним из существенных признаков языка Pascal является последовательная и достаточно полная реализация концепции структурного программирования. Причём это осуществляется не только путем упорядочивания связей между фрагментами программы по управлению, но и за счет структуризации данных. Кроме того, в языке реализована концепция определения новых типов данных на основе уже имеющихся. Этот язык в отличие от языка Си является строго типизированным.
Pascal характеризуется:
-
высоким уровнем;
-
широкими возможностями;
-
стройностью, простотой и краткостью;
-
строгостью, способствующей написанию эффективных и надежных программ;
-
высокой эффективностью реализации на ЭВМ.
8.2. Turbo Pascal
В настоящее время широко используются такие версии этого языка для ПЭВМ, как Borland Pascal и Turbo Pascal, которые поддерживают объектно-ориентированное программирование (ООП).
9.1. C (Си) – третья буква английского алфавита, название языка программирования, разработанного Деннисом Ричи в начале 70-х годов в Bell Laboratories.
Язык программирования С (Си) планировался для замены ассемблера, чтобы можно было создавать компактные программы и не зависеть от конкретного типа процессора и поэтому часто характеризуется как «переносимый ассемблер», первоначально был разработан для реализации операционной системы UNIX в начале 70-х годов. В последующем приобрел высокую популярность среди системных и прикладных программистов.
В настоящее время этот язык реализован на большинстве ЭВМ. В С (Си) сочетаются достоинства современных высокоуровневых языков в части управляющих конструкций и структур данных с возможностями доступа к аппаратным средствам ЭВМ на уровне, который обычно ассоциируется с языком низкого уровня типа языка ассемблера. Язык С (Си) имеет синтаксис, обеспечивающий краткость программы, а компиляторы способны генерировать эффективный объектный код.
Одна из наиболее существенных особенностей Си состоит в нивелировании различий между выражениями и операторами, что приближает его к функциональным языкам. В частности, выражение может обладать побочным эффектом присваивания, а также может использоваться в качестве оператора. Нет также четкой границы между процедурами и функциями, более того, понятие процедуры не вводится вообще.
Синтаксис языка затрудняет программирование и восприятие составленных программ, отсутствует и строгая типизация данных, что предоставляет дополнительные возможности программисту, но не способствует написанию надежных программ.
С (Си) во многом похож на Паскаль.
9.2. Язык C++ (Си плюс-плюс) – объектно-ориентированное расширение языка С (Си), который
был разработан в начале 80-х годов Бьярном Страуструпом, сотрудником лаборатории Bell корпорации AT&T. Им была создана компактная компилирующая система, в которой за основу был взят язык С (Си), дополненный элементами языков BCPL, Simula-67 и Algol-68. К июлю 1983 года появился язык С (Си) с классами, а чуть позднее C++. К 1990 году была выпущена третья версия языка C++, принятая комитетом ANSI в качестве исходного материала для его стандартизации.
9.3. С# (Си Шарп) разработан в конце 90-х годов под руководством Андерса Хейльсберга, который взял наилучшие идеи языков С (Си), C++, и достоинства языка JAVA.
10.1. Язык Java (Джава, Ява) является С(Си)-подобным объектно-ориентированным языком для программирования Internet-приложений. Язык разработан в начале 90-х годов на основе С++. В 1990 году сотрудник корпорации Sun Д. Гослинг на основе расширения C++ разработал объектно-ориентированный язык Oak, основным достоинством которого было обеспечение сетевого взаимодействия различных по типу устройств. Новая интегрируемая в Internet версия языка, получила название Java. Первый броузер, который поддерживал язык Java, разработан программистом корпорации Sun П. Нафтоном и получил название HotJava. С января 1995 года Java получает распространение в Internet.
Согласно официальному определению авторов, Java является простым объектно-ориентированным и архитектурно-нейтральным языком интерпретирующего типа, обеспечивающим надежность, безопасность и переносимость, обладающим высокой производительностью в сочетании с многопоточностью и динамичностью.
Принципиальной разницей между Java и C++ является то, что первый из них является интерпретируемым, что снижает быстродействие, а второй – компилируемым. Это относится к недостатку языка Java. Синтаксис языков практически полностью совпадает.
С точки зрения возможностей собственно объектно-ориентированных средств язык Java обладает рядом преимуществ перед языком C++. Так, язык Java демонстрирует более гибкую и мощную систему инкапсуляции информации. Механизм наследования, реализованный в Java, обязывает к более строгому подходу к программированию, что улучшает надежность и понимаемость кода. Язык же C++ обладает сложной, неадекватной и трудной для понимания системой наследования. Возможности динамического связывания объектов одинаково хорошо представлены в обоих языках, однако, синтаксическая избыточность C++ заставляет и здесь отдать предпочтение языку Java.
10.2. JavaScript
JavaScript относится к скриптовым (описательным) языкам и включает в себя ряд свойств как объектно-ориентированного языка, так и свойств функционального языка. JavaScript используется при создании сценариев поведения браузера, которые встраиваются в Web-страницы, популярен среди разработчиков Web-страниц.
11. ADA (Ада). Язык создан по заказу и состоит на вооружении министерства обороны США, разработан с целью обеспечить создание программных систем с многолетним сроком службы и высокой степенью надежности. В мае 1979 года был объявлен победитель конкурса универсального языка, проводимого в США Пентагоном. Победителем была группа учёных во главе с Жаном Ихбиа. Язык назван в честь первого программиста Огасты Ады Лавлейс (дочери английского поэта Байрона).
12. DELPHI – продукт Borland International. Высокопроизводительный инструмент построения приложений к базам данных в архитектуре клиент-сервер, а также для локальных машин и файл-серверной архитектуры. Это инструментарий, который включает компилятор кода, работающий в Windows, и предоставляет средства визуального программирования. В основе лежит язык – Object Pascal, который является расширением объектно-ориентированного языка Pascal.
13. LISP (Лисп) (LISt Processing – обработка списков) разработан в 1961-м году Джоном Маккарти как язык обработки списков. Язык Лисп является одним из первых языков обработки данных в символьной форме.
Цель его создания состояла в организации удобства обработки символьной информации. Существенная черта этого языка – унификация программных структур и структур данных: все выражения записываются в виде списков. Родной язык искусственного интеллекта.
В основу языка положена идея списков переменной длины и деревьев в роли основных типов данных, а также возможность интерпретации кода программы как данных и наоборот.
В настоящее время насчитывается большое число систем программирования на языке Лисп, которые могут быть реализованы на компьютерах разного типа. В основном это интерпретирующие системы, которые работают в диалоговом режиме.
14. PERL (Перл) был разработан в 80-х годах ХХ века, автор языка Лари Уолл. Он планировался как язык для просмотра и эффективной обработки больших текстовых файлов, извлечения из них информации, генерации текстовых отчётов и управления задачами. Широко применяется для системного администрирования среды Unix. Это язык программирования для Интернета. Язык Perl широко употребляется для написания сценариев.
15. PROLOG (PROgramming in LOGic – программирование в терминах логики) (Пролог) создан в 1973 году французским ученым Аланом Колмероэ как язык искусственного интеллекта.
Реализует концепцию логического программирования. Пролог предназначен для решения логических задач, для моделирования процесса логического умозаключения человека. По правилам языка Пролог даётся описание отношений и связей между объектами, в результате чего записываются условия конкретной логической задачи, которую предстоит решить. Данный подход в программировании называется декларативным.
На PROLOG написаны многие экспертные системы, позволяющие делать выводы на основе имеющихся фактов и обширной базы правил, представленных в виде «если – то».
Пролог относят к языкам сверхвысокого уровня, он постоянно развивается и совершенствуется. Насчитывается свыше 15 различных его реализаций на ПЭВМ.
16. Tcl был разработан в конце 80-х годов ХХ века, автор языка Джон Аустираут, который попытался воплотить идею идеального скрипт-языка. Он ориентирован на автоматизацию рутинных процессов и состоит из мощных команд, предназначенных для работы с абстрактными нетипизированными объектами. Это язык программирования для Интернета.
17. LOGO – язык, призванный служить средством обучения программированию не только взрослых, но и детей. Он сконструирован так, чтобы новичок мог сразу начать писать первые программы, получая от этого удовольствие. Не менее важно, что язык в то же время достаточно мощный, чтобы отвечать потребностям уже искушенного программиста.
18. PYTHON – интерпретирующий объектно-ориентированный язык программирования. По своему назначению принадлежит к группе языков Tcl, Perl, Scheme и Java. Поддерживает модули, классы, исключения и динамические типы данных.