вторник, 17 апреля 2012 г.

Lab 4




Work 3
1
2
3
Work 4
 1
Ответ: 1. А=1, В=1

2
Ответ: 4. X=3, Y=4,5

 3
Ответ:  2. a=2, b=2

 4
Ответ: а=2, b=2

 5
Ответ: 3. A2=4, A4=16, A6=36, A8=64

вторник, 3 апреля 2012 г.

Домашнее задание Лабораторная работа №4


Задание №1
Алфавит – фиксированный для данного языка набор символов (букв, цифр, специальных знаков и т.д.), которые могут быть использованы при написании программы.
Синтаксис – правила записи конструкций языка (какие конструкции принадлежат языку)
       Семантика смысл конструкций языка программирования (как конструкции          обрабатываются компьютером).
Задание №2
Классификация 1. Классификация по уровню ( язык ассемблера- язык низкого уровня, фортран,  кобол ,  алгол, PascalJavaC – языки высокого уровня, VHLL — very high-level programming language –язык сверхвысокого уровня).
Классификация 2. Классификация по виду обрабатываемой информации.
(все языки программирования являются вычислительными, например:Pascal,  КОБОЛ, АЛГОЛ,  ЛИСП-язык символьной обработки).
Классификация 3. Классификация по поколению.
языки первого поколения: машинно–ориентированные с ручным управлением памяти на компьютерах первого поколения.
языки второго поколения: с мнемоническим представлением команд, так называемые автокоды.
FORTRAN II
Подпрограммы, раздельная компиляция
ALGOL-60
Блочная структура, типы данных
COBOL
Описание данных, работа с файлами
Lisp
Обработка списков, указатели, сборка мусора

языки третьего поколения: общего назначения, используемые для создания прикладных программ любого типа. Например, Бейсик, Кобол, Си и Паскаль.
PL/I
FORTRAN+ALGOL+COBOL
ALGOL-68
Более строгий приемник ALGOL-60
Pascal
Более простой приемник ALGOL-60
Simula
Классы, абстрактные данные


языки четвертого поколения: усовершенствованные, разработанные для создания специальных прикладных программ, для управления базами данных.
языки программирования пятого поколения: языки декларативные, объектно–ориентированные и визуальные. Например, Пролог, ЛИСП (используется для построения программ с использованием методов искусственного интеллекта), Си++, Visual Basic, Delphi.
ОБЪЕКТНО-ОРИЕНТИРОВАННЫЕ ЯЗЫКИ ВЫСОКОГО УРОВНЯ (SMALLTALK)
1)       А) TURBO PASCAL
Б) КЛАССИФИКАЦИЯ ПО УРОВНЮ. КЛАСС: ЯЗЫК ВЫСОКОГО УРОВНЯ.
КЛАССИФИКАЦИЯ ПО ВИДУ ОБРАБАТЫВАЕМОЙ ИНФОРМАЦИИ. КЛАСС: ВЫЧИСЛИТЕЛЬНЫЕ ЯЗЫКИ.
КЛАССИФИКАЦИЯ ПО ПОКОЛЕНИЮ. КЛАСС: ЯЗЫК ТРЕТЬЕГО ПОКОЛЕНИЯ.
в) Turbo Pascal — это среда разработки для языка программирования Паскаль. Используемый в Turbo Pascal диалект базировался на более раннем UCSD Pascal, получившем распространение, в первую очередь, на компьютерах серии Apple II. Компилирующая компонента Turbo Pascal была основана на компиляторе Blue Label Pascal, первоначально созданном в 1981 году Андерсом Хейлсбергом для операционной системыNasSys микрокомпьютера Nascom. Позднее он был переписан как Compass Pascal для операционной системы CP/M, затем как Turbo Pascal для DOS и CP/M. Одна из версий Turbo Pascal была доступна под Apple Macintosh примерно с 1986 года, но её разработка прекратилась примерно в 1992 году.
В 1982 году Филипп Кан приобрёл компилятор у Андерса Хейлсберга и перебрался изПарижа в Калифорнию, где основал компанию Borland.
Когда в 1983 году появилась первая версия Turbo Pascal, такой тип среды разработки был относительно новым. Во время дебюта на американском рынке Turbo Pascal продавался по цене в $49,99. Помимо привлекательной цены, встроенный компилятор Паскаля также был очень высокого качества. Приставка «Turbo» намекала как на скорость компиляции, так и на скорость производимого им исполняемого кода. Turbo Pascal создавал машинный код за один проход, без шага компоновки.
                                                    
     Этапы
1)Turbo Pascal 1.0, 1983 год. Компилирует непосредственно в машинный код. Требует 32 килобайта оперативной памяти. Стоит меньше 50 долларов. Имеет интегрированный компилятор/редактор, высокую скорость компиляции. Позволяет размещать динамические данные в куче (heap) — динамической области памяти.
2)Turbo Pascal 2.0, 1984 год. Увеличен размер создаваемой программы — позволяет использовать до 64 килобайт для кода, стека и данных. Версия для DOS поддерживает арифметический сопроцессор и двоично-десятичную арифметику (Binary-coded decimal (англ.), BCD).
3)Turbo Pascal 3.0, 1985 год. Поддержка оверлейной структуры. Поддержка графических режимов. Специальные подпрограммы формирования изображений для IBM PC-совместимых компьютеров, включая «черепаховую» графику. Инструментальные пакеты.
4)Turbo Pascal 4.0, 1987 год. Раздельная компиляция модулей. Размер программы ограничен только объёмом оперативной памяти. Управляемая с помощью меню интегрированная среда разработки (англ. Integrated Development Environment, IDE).Интеллектуальная компоновка модулей. Автономный компилятор командной строки. Убрана поддержка оверлеев. Контекстно-чувствительная система помощи.
5)Turbo Pascal 5.0, 1988 год. Восстановлена поддержка оверлейных структур. Встроенный отладчик. Отдельный отладчик (Turbo Debugger). Эмуляция арифметического сопроцессора. Поддержка графических драйверов BGI (Borland Graphics Interface).
6)Turbo Pascal 5.5, 1989 годОбъектно-ориентированное программирование. Возможность копирования в программу примеров из справочной системы. Электронный учебник на диске.Turbo Profiler — профилировщик, позволяющий оптимизировать код программы.
7)Turbo Pascal 6.0, 1990 год. Библиотека Turbo Vision. Новая IDE, переписанная с использованием Turbo Vision, поддерживающая мышь и редактирование нескольких файлов одновременно в разных окнах. Возможность задания во встроенном отладчике условных и по количеству проходов точек останова. Встроенный ассемблер BASM, позволяющий в исходном тексте программы делать ассемблерные вставки. Protected поля и методы для объектов. Работающий в защищённом режиме компилятор командной строки.
8)Turbo Pascal for Windows. Создание 16-разрядных программ под Windows. Библиотека объектов Objects Windows Library (OWL), сходная по идеологии с Turbo Vision. Графическая IDE, работающая под Windows.
9)Borland Pascal 7.0, 1992 год. Выпущен Borland Pascal 7.0, включающий в себя более дешёвый и менее мощный Turbo Pascal 7.0, который поставлялся также отдельно. BP 7.0 позволял создавать программы под реальный и защищённый 16-битный режим DOS и Windows. Была введена поддержка открытых массивов, добавлено новое ключевое слово «public» для доступных полей и методов объекта. Открыты исходные тексты системных библиотек и функций времени выполнения (RTL

А) Basic
Б) ) КЛАССИФИКАЦИЯ ПО УРОВНЮ. КЛАСС: ЯЗЫК ВЫСОКОГО УРОВНЯ.
КЛАССИФИКАЦИЯ ПО ВИДУ ОБРАБАТЫВАЕМОЙ ИНФОРМАЦИИ. КЛАСС: ВЫЧИСЛИТЕЛЬНЫЕ ЯЗЫКИ.
КЛАССИФИКАЦИЯ ПО ПОКОЛЕНИЮ. КЛАСС: ЯЗЫК ТРЕТЬЕГО ПОКОЛЕНИЯ.

В) Бе́йсик (BASIC — сокращение от англ. Beginner’s All-purpose Symbolic Instruction Code — универсальный код символических инструкций для начинающих; англ. basic — основной, базовый) — семейство высокоуровневых языков программирования.
Бейсик был придуман в 1963 году преподавателями Дартмутского Колледжа Джоном Кемени и Томасом Куртцом, и под их руководством был реализован командой студентов колледжа. Со временем, когда стали появляться другие диалекты, этот «изначальный» диалект стали называть Dartmouth BASIC.
Бейсик был спроектирован так, чтобы студенты могли писать программы, используя терминалы с разделением времени. Он создавался как решение для проблем, связанных со сложностью более старых языков, предназначался для более «простых» пользователей, не столько заинтересованных в скорости программ, сколько просто в возможности использовать компьютер для решения своих задач.
Этапы:
Язык был основан частично на Фортран II и частично на Алгол-60, с добавлениями, делающими его удобным для работы в режиме разделения времени, обработки текста и матричной арифметики. Первоначально Бейсик был реализован на GE-265 с поддержкой множества терминалов. Вопреки распространённому убеждению, в момент своего появления это был компилируемый язык.
Всеобщую же популярность язык получил с его появления на микрокомпьютере Altair 8800. Многие языки программирования были слишком громоздкими, чтобы умещаться в небольшой памяти. Для машин с таким медленным носителем как бумажная лента, аудиокассета и без подходящего текстового редактора такой небольшой язык как Бейсик был отличной находкой.
В 1975 году Майкрософт (тогда это были лишь двое — Билл Гейтс и Пол Аллен, при участии Монте Давидова) выпустила Altair BASIC. Для операционной системы CP/M был создан диалект BASIC-80, надолго определивший развитие языка.
В этот период было создано несколько новых версий Бейсика. Майкрософт продавала несколько версий BASIC для MS-DOS/PC-DOS, включая BASICAGW-BASIC и QuickBASIC(QBASIC).Компания Borland в 1985 выпустила Turbo BASIC 1.0 (его наследники впоследствии продавались другой компанией под именем PowerBASIC). На домашних компьютерах появились различные расширения Бейсика, обычно включающие средства для работы с графикой, звуком, выполнением DOS-команд, а также средства структурного программирования. Некоторые другие языки использовали хорошо известный синтаксис Бейсика в качестве основы, на которой строилась совершенно иная система (см. например, GRASS).
Однако, начиная с конца 80-х, новые компьютеры стали намного более сложными и предоставляли возможности (такие как графический интерфейс пользователя), которые делали Бейсик уже не столь удобным для программирования. Бейсик начал сдавать свои позиции, несмотря на то, что огромное количество его версий ещё использовалось и продавалось.
Вторую жизнь Бейсик получил с появлением Visual Basic от Microsoft. Он стал одним из наиболее часто используемых языков на платформе Microsoft Windows. Позже был создан вариант под названием WordBasic, используемый в MS Word до появления Word 97. ВариантVisual Basic for Applications (VBA) был встроен в Excel 5.0 в 1993 году, затем в Access 95 в 1995-ом, а после и во все остальные инструменты, входящие в пакет Office — в 1997-ом. Internet Explorer 3.0 и выше, а также Microsoft Outlook включали интерпретатор языкаVBScript. В полный вариант пакета OpenOffice.org также включён интерпретатор Бейсика.
А) Фортран
 Б) КЛАССИФИКАЦИЯ ПО УРОВНЮ. КЛАСС: ЯЗЫК ВЫСОКОГО УРОВНЯ.
КЛАССИФИКАЦИЯ ПО ВИДУ ОБРАБАТЫВАЕМОЙ ИНФОРМАЦИИ. КЛАСС: ВЫЧИСЛИТЕЛЬНЫЕ ЯЗЫКИ.
Классификация по поколению. Класс: язык третьего поколения

В) Фортра́н (Fortran) — первый язык программирования высокого уровня, имеющийтранслятор. Создан в период с 1954 по 1957 год группой программистов под руководствомДжона Бэкуса в корпорации IBM (язык Планкалкюль, претендующий на пальму первенства, был изобретён ещё в 1945 году, но не был реализован вплоть до 2000 года). Название Fortran является акронимом от FORmula TRANslator (переводчик формул). Фортран широко используется в первую очередь для научных и инженерных вычислений. Одно из преимуществ современного Фортрана — большое количество написанных на нём программ и библиотек подпрограмм.[1] Среди учёных, например, ходит такая присказка, что любая математическая задача уже имеет решение на Фортране, и, действительно, можно найти среди тысяч фортрановских пакетов и пакет для перемножения матриц, и пакет для решения сложных интегральных уравнений, и многие, многие другие. Ряд таких пакетов создавался на протяжении десятилетий и популярен в научной среде по сей день.
FORTRAN 66 (1972)
На базе стандарта фирмы IBM FORTRAN IV
FORTRAN 77 (1980)
Введено множество улучшений:
  1. Введены операторы открытия и закрытия файла (OPEN, CLOSE) и вывода на стандартное устройство — PRINT.
  2. Добавлены строковый тип данных и функции для его обработки.
  3. Введён блочный оператор IF и конструкция IF THEN — ELSE IF THEN — END IF, а также оператор включения фрагмента программы INCLUDE.
  4. Введена возможность работы с файлами прямого доступа.
  5. Увеличена максимальная размерность массива с 3 до 7. Сняты ограничения на индексы массива.
  6. Усовершенствованы и расширены возможности работы с процедурами.
  7. Введено понятие внутреннего файла (каковыми являются массивы, числовые и строковые переменные). Внутренние файлы позволяют, в частности, осуществлять преобразование число-строка и строка-число стандартным операторами чтения и записи READ и WRITE.
Fortran 90 (1991)
Значительно переработан стандарт языка.
  1. Введён свободный формат написания кода. Появились дополнительные описанияIMPLICIT NONE, TYPE, ALLOCATABLE, POINTER, TARGET, NAMELIST.
  2. Введены управляющие операторы и конструкции. Добавлены DO … END DO (вместо завершения цикла меткой), DO WHILE, оператор передачи управления на начало цикла CYCLE, конструкция выбора SELECT CASE (для замены громоздких конструкций IF и операторов GOTO), а также заключительный оператор программной единицы, модульной или внутренней процедуры END[3].
  3. Введён инструментарий указателей и функции для работы с оперативной памятью (по аналогии с языком С).
  4. Введены операторы работы с динамической памятью (ALLOCATE, DEALLOCATE, NULLIFY).
  5. Добавлены программные компоненты MODULE, PRIVATE, PUBLIC, CONTAINS, INTERFACE, USE, INTENT.
  6. Введено маскирование присваивания массивов (присваивание при выполнении наложенного на элементы массива логического условия без использования операторов условия), а также работа с сечениями массивов. Введён оператор и конструкция WHERE для частичной замены циклов (правая часть оператора присваивания не изменяется). Маскирование присваивания распространяется практически на все операторы, конструкции и функции, оперирующие с массивами.
  7. Стандартные операции присваивания, сложения, вычитания, а также деления и умножения на число распространены на массивы и их секции, определяемые сечениями. В этом случае осуществляется поэлементное присваивание.
  8. Появились новые встроенные функции, в первую очередь для работы с массивами. Функции для вычислений в массивах: ALL(лог. произведение) и MASK(логическое сложение), COUNT(число истинных элементов), PRODUCТ(произведение элементов массива), SUM(сложение элементов массива), DOT_PRODUCT (скалярное произведение), MATMUL (умножение матриц). Добавились справочные функции, а также функции переформирования и свёртки массивов.
  9. В языке появились элементы ООП. Введены производные типы данных. Отдельно объявлен список устаревших черт языка, предназначенных для удаления в будущем.
  10. Добавлены дополнительные функции для работы со строковыми данными, в частности, функции TRIM (удаление завершающих пробелов) и REPEAT(кратное копирование строки) и функции выравнивания по левой и правой границам.
Fortran 95 (1997)
Коррекция предыдущего стандарта. Введён оператор и конструкция FORALL, позволяющие более гибко, чем оператор и конструкция WHERE, присваивать массивы и заменять громоздкие циклы. FORALL позволяет заменить любое присваивание сечений или оператор и конструкцию WHERE, в частности, обеспечивает доступ к диагонали матрицы. Данный оператор считается перспективным в параллельных вычислениях, способствуя более эффективному, чем циклы, осуществлению распараллеливания.
Fortran 2003 (2004)
Дальнейшее развитие поддержки ООП в языке. Взаимодействие с операционной системой. Добавлены также следующие возможности:
  1. Асинхронный ввод-вывод данных.
  2. Средства взаимодействия с языком C.
  3. Усовершенствование динамического размещения данных.
Fortran 2008
Стандартом предполагается поддержка средствами языка параллельных вычислений (Co-Arrays Fortran). Также предполагается увеличить максимальную размерность массивов до 15, добавить встроенные специальные математические функции  и др.

Лабораторная работа №3

Лабораторная работа №3
(Использование компьютерной графики и мультимедиа в образовании)
1. Создание анимации типа "Бегущая строка"
2. Создание анимации типа "Волны"
3. Творческое задание (создать собственную анимацию)