Файл: Понятие переменной в программировании. Виды и типы переменных (КРАТКИЙ ОБЗОР И КЛАССИФИКАЦИЯ ЯЗЫКОВ ПРОГРАММИРОВАНИЯ).pdf
Добавлен: 30.03.2023
Просмотров: 207
Скачиваний: 1
СОДЕРЖАНИЕ
1. КРАТКИЙ ОБЗОР И КЛАССИФИКАЦИЯ ЯЗЫКОВ ПРОГРАММИРОВАНИЯ
1.1 Классификация языков рпограммирования
1.2 Связи алгоритма и языка программирования
2. ПОНЯТИЕ ПЕРЕМЕННОЙ В РАЗЛИЧНЫХ ЯЗЫКАХ ПРОГРАММИРОВАНИЯ
2.1 Виды и типы переменных в языке Паскаль
2.2 Виды и типы переменных в языке Visual Basic
ВВЕДЕНИЕ
В настоящее время информационные технологии играют одну из определяющих ролей в жизнедеятельности человека и различных предприятий. Информационные технологии не могли бы появиться, существовать и развиваться без существования программной и аппаратной частей, котоорые взаимно дополняют друг друга, но при этом бесполезны в отдельности.
Любое современное технчисекое устройство работает по заранее заданной программе, которую создал производитель устройства. Для написания программ используются языки программирования – специальный класс программного обеспечения, предназначенный для написания программ.
С момента своего появления языки программирования претерпели значительныке изменения, и, если первые из них представляли собой достаточно простые среды, похожие на современную программу блокнот с минимумом функций и необзходимостью писать код на машинном языке, то современные среды программирования, которые так же называются Интегрированными средами разработки представляют собой мощные средства по написанию и отладки программ различной сложности – от простейшей программы, выводящей сумму двух чисел, до сложных проектов управления технологическими процессами и производствами.
Любая программа, как правило, оперирует с данными – массивами, переменными и константами, структурами, которые разработаны программистом самостоятельно, при этом важное значение имеет выбор типа переменной, от которого зависит получемые результат и объём памяти, который выделяется под конкретную переменную, хотя в настоящее время не стоит проблемы нехватки памяти, хорошим стилем программирования является продуманное расходование ресурсов.
Исходя из вышесказанного, тема курсовой работы может считатся актуально.
Целью работы является определение способов задания переменных и выбора их типов в современных языках программирования.
Для достижения поставленной цели необходимо решить следующие задачи:
- Рассмотреть историю развития языков программирования;
- На примере нескольких современных языков показать способы описания переменных и на кнкретных примерах показать важность выбора правильного типа данных
- Сделать выводы по полученным результатам.
1. КРАТКИЙ ОБЗОР И КЛАССИФИКАЦИЯ ЯЗЫКОВ ПРОГРАММИРОВАНИЯ
1.1 Классификация языков рпограммирования
Язык программирования представляет собой совокупность основных символов (алфавит) и правил составления из них смысловых конструкций. Он должен обеспечивать взаимодействие человека с машиной и быть удобен и понятен им обоим. В соответствии с представлениями об уровне абстракции, на котором формируется задача и процессы обработки данных в реальном устройстве (процессоре), говорят об уровне языков програм¬мирования. Можно выделить языки низкого и высокого уровня.
К языкам низкого уровня относят [2]:
• машинные языки — языки кодов ЭВМ;
• машинно-ориентированные языки: — ассемблеры, мнемо-коды.
Языки реально функционирующих процессов называются языками низкого уровня (например, язык для функционирования процессора). Написание программ на языках низкого уровня требует более высокой квалификации программиста. Первые языки программирования представляли собой машинные коды. Они были эффективными и удобными для работы ЭВМ, но сложными для восприятия человеком – требовали длительного изучения и специальных навыков использования. Программист должен был писать действительные адреса ячеек памяти, в которых размешены данные, участвующие в операциях, результаты, а также адреса команд.
Язык ассемблера представляет собой машинно-ориентированный язык, использующий символическое представление машинного языка. Операции машинного языка записываются в форме с применением мнемонических команд. Имеется возможность объединения нескольких машинных команд в макрокоманды. Программы, написанные на ассемблере, имеют большую длину, их написание сложно, но для задач, управления аппаратной частью ЭВМ, они являются самыми эффективными, поэтому для решения задач управления аппаратурой, вставки на ассемблере используют языках более высокого уровня. Использование машинных языков так же сохраняется в системах управления технологическими процессами и производствами.
Потребность в более понятных и удобных языках для написания программ различного назначения привела к появлению языков высокого уровня, в которых для выполнения сложных действий пишут один оператор. В языках высокого уровня инструкции программы часто представляют собой обычный текст на английском языке с применением знаков арифметических или логических операций. К языкам высокого уровня относят:
- проблемно-ориентированные языки, имеющие средства организации структур данных и описания алгоритмов и ориентированные на решение задач определенного класса: Фортран, Алгол, Кобол, Ада и др.;
- универсальные: Алгол-68, PL/1, Паскаль, QBasic, Си-н-, Си# и др.;
- языки проектирования программ (системы программирования) — в настоящее время имеют самый высокий уровень абстракции. Они расширяются не как языки описания процесса обработки данных, а как средства описания задач:
- языки гипертекстовой разметки, например HTML — набор колов, который вводится в документ для обозначения связей между его частями Команды НТМL обеспечивают объединение сайтов и страниц Всемирной паутины с использованием гиперссылок и указывают web браузеру способ расположении данных;
- языки описания сценариев представляют собой макросы, в которых объединены отдельные команды, управляющие средой – например – пакетом Microsoft Office);
• языки моделирования систем — например. GPSS, позволяющий автоматизировать проиесс программирования моделей. Язык построен в предположении. Что моделью сложной системы является описание ее эле-ментов и логических правил их взаимодействия.
При решении типовых задач обработки данных в автоматизированных системах применяются языки высокого уровня и системы программирования. В настоящее время большую популярность приобретает автоматическое программирование позволяющее выполнить перевод с входного языка на машинный язык для работы по подготовке и програм-мирован ию задач на ЭВМ
Проблемно-ориентированные языки предназначены для решения определенного класса задач и не зависят от конкретного типа ЭВМ. Они содержат перечень типовых операций, используемых при решении данного класса задач, и их условные наименования в терминах, привычных для специалистов в данной области. Например, Фортран и Алгол созданы для решения математических задач, Кобол — для решения экономических задач и др. Эти языки появились в конце 1950-х годов и положили начало эпохе развития языков программирования высокого уровня [1].
Кроме универсальных выделяют группы специальных языков:
• баз данных ;
создания сетевых приложений;
• создания систем искусственною интеллекта)
• пользовательские.
История развития языков программирования. Впервые c потребностью в написании программ для вычислительной машины Чарльза Бэббиджа столкнулась математик Ада Лавлей, которая создала первую программу — для Вычисления чисел Бернулли, так же ей принаджежит введение циклов, условных переходов и некоторых других команд. Она считается первым программистом, в ее честь назван язык Ада (1979). Для первых ЭВМ, в 1949 г. под руководством Джона Мочли язык Short Code. Для первого в мире большого цифрового компьютера «Марк I» группа Мочли, стали писать подпрограммы – многократно используемые последовательностикоманд, построенные таким образом, чтобы кажду из них можно было многократно использовать внутри программы.
В 1950-е годы появившаяся программа-компоновщик А-0, поставлявшаяся вместе с компьютером «Юнивак», использовалась для создания других программ. По условному коду компоновщик выбирал нужную подпрограмму из библиотеки. Извлекая подпрограмм, можно было сформировать новую программу.
С развитием электронно-вычислительной техники в 1950-е годы появляются языки программирования высокого уровня. В фирме IBM группа инженеров под руководством Джона Бэкуса был разработан язык программирования Фортран – переводчик формул, предназначенный для решения математических и инженерных задач. Язык был прост в освоении, а потери эффективности незначительными. Первая версия языка Алгол была принята на совещании в Цюрихе, в котором участвовали ведущие специалисты в области программирования. Язык был предназначен для записи алгоритмов вычислительных задач и представлял собой первый язык блочной структуры.
В 1959 г. для решения коммерческих задач группой производителей и пользователей компьютеров был создан язык Кобол – универсальный язык для бизнеса. Язык является хорошо структурированным – программа включает четыре самостоятельных, расположенных в строго определенном порядке разделов: идентификаций, оборудования, данных и операторов.
В 1960 г. на конференции в Париже представители США, ФРГ, Великобритании, Франции, Дании, Голландии и Швейцарии утвердили улучшенную версию языка — Алгол-60, — получившую широкое распространение, на основе которого был разработан — первый объектно-ориентированный язык Simula-67, Алгол-68 [2].
В 1961 — 1965 гг. Джоном Маккарти в Массачусетском техно-логическом институте был создан язык функционального про-граммирования (программа описывает вычисление некоторой функции), который ориентирован на решение задач нечислен-ного характера. Лисп — символьный язык для обработки списков. Понятие «список» пони¬мается широко и включает представление алгебраических выражений, графов, элементов конечных групп, множеств, правил вывода и многое другое. Основные типы данных в языке называются «атом» и «точечная пара». Лисп создавался как язык для исследований по проблеме искусственного интеллекта. Основой этого языка служит математическая теория алгоритмов и рекур¬сивных функций, т. е. вычисление значения функции через значе¬ния этой же функции от других элементов. Присваивания и циклов в функциональном языке нет. Лисп — универсальный язык, так как любой алгоритм может быть описан с помощью некоторого набора рекурсивных функций, что позволяет моде¬лировать на ЭВМ сложные алгоритмы обработки данных, в том числе алгоритмы моделирования интеллектуальной деятельности людей. В 1984 г. вышел Common Lisp, а затем система Common Lisp Object System (CLOS). В дальнейшем были разработаны программные продукты, основанные на Лиспе: Common Lisp, Mac Lisp, Inter Lisp, Standard Lisp, Common Loops — система для обработки знаний и программирования, New Flavors — система посылки сообщений, используемая в коммерческих целях, и др.
В 1965 г. в Институте кибернетики Академии наук Украин¬ской ССР под руководством академика В. М. Глушкова для ЭЦВМ «Мир» был разработан язык высокого уровня Алмир (ал¬горитмический язык для машины «Мир»), транслятор с которого был постоянно встроен в машину. Язык был разработан на базе длгола, но использовал символику русского языка и стал одним из первых (возможно, первым) национальным языком программирования.
В 1966 г. в Институте прикладной математики АН СССР В Турчиным был создан функциональный язык РЕФАЛ (алго¬ритмический язык рекурсивных функций). Построенный на ал¬горитмах Маркова, он удобен для обработки текстов. Язык ак¬тивно использует мощные средства преобразования списков на основе концепции распознавания по образу.
В 1970-х годах появилось непроцедурное (декларативное) программирование — программирование на функциональных и логических языках, — начавшее быстро развиваться в 1980—1990-х годах в связи с разработкой в Японии проекта создания ЭВМ пятого поколения — поколения интеллектуальных машин.
Программа на логическом языке вообще не описывает дей¬ствия. Она задает данные и соотношения между ними. После этого можно задавать вопросы. ЭВМ перебирает известные (заданные в программе) данные и находит ответ на вопрос. Порядок перебора не описывается в программе, а неявно задается самим языком.
Классическим языком логического программирования считает¬ся Пролог (Prolog — Programming in Logic) — язык для создания систем искусственного интеллекта, разработанный в 1971— 1972 гг. сотрудником университета в Лумини (Франция) Аланом Колмари. Пролог (Пролог++) — символьно-логическая система программирования, вначале предназначенная для решения теорем, сейчас используемая для поиска решений, связанных с искусственным интеллектом. Язык позволяет в формальном виде описывать различные утверждения, правила рассуждений, заставляет ЭВМ рассуждать и давать ответы на заданные вопросы. Программа состоит из некоторого множества отношений, а ее выполнение сводится к выводу нового отношения на основе за данных. Понятия и принципы языка основаны на математической логики и аппарата автоматического доказательства теорем, созданного в ходе исследований по искусственн теллекту.
В 1965 г. на основе Фортрана профессора Дартмутского колледжа (США) Джон Кемени и Томас Куртц для обучения студентов разработали язык Бейсик — универсальный символьный программный код для начинающих). Язык прост и в то же время имеет широкие возможности для обработки символьной и графической информации. Характерные черты языка: диалоговый режим работы, нумерация строк, вещественный и символьный типы данных, управляющие конструкции, все переменные являются глобальными, наличие массивов. Язык нашел широкое применение и имеет много версий, одну из которых в 1975 г. написали Билл Гейтс и Пол Аллен. В 1980-х годах Microsoft выпустила QuickBasic [4], обладающий большим быстродействием, простотой, компактностью. Но основная часть языка во всех версиях одна. Вот лишь несколько версий языка: Basic, GWBasic, Power Basic, Turbo Basic, QuickBasic (компилирующая система языка входит в состав MS-DOS, начиная с версии DOS 5.0), Visual Basic (для программирования в среде Windows).