Файл: Обзор языков программирования высокого уровня (Язык программирования Pascal).pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 22.04.2023

Просмотров: 67

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

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

Также, для работы с большим количеством однотипных данных существует такое понятие, как массив. Массив позволяет именовать целый участок памяти, в котором будет содержаться множество экземпляров переменных данного типа. Каждый экземпляр будет доступен через название массива и индекс элемента в нем. Нумерация элементов традиционно начинается с 0.

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

Такие ключевые слова и конструкции, как for, while, if, else, do … while, goto, switch, case, break, continue, return позволяют управлять программным потоком — они решают, как будет вести себя программа, какие ветвления она совершит в процессе своего выполнения. [4]

Также для управления программного потока используются такие программные конструкции, как функции. Функция — это именованный участок кода, который выполняется при вызове самой функции. В функцию могут быть переданы переменные в качестве аргументов. У каждой функции должен быть определен тип данных, который функция должна вернуть после выполнения своего кода. Существует специальный тип void — он используется в том случае, если функция не должна возвращать никаких значений (можно сказать, что такая функция является процедурой).

Для выполнения программы из 4-й задачи мы воспользуемся библиотекой stdio.h. Это стандартная библиотека языка C, в которой хранятся все необходимые для написания программы библиотечные функции.

В языке C существует главная функция по умолчанию. Эта функция так же называется входной точкой программы. Это функция, которая будет запущена при запуске программы автоматически. Она называется main(), и должна иметь тип int.

Для начала мы определим переменные, в которые будут записаны имя и количество лет. Для имени мы используем массив символов, размером в 32 символа, так как я не знаю никого, чье имя длиннее 31-го символа (32-й символ будет использован для системного символа «\0», означающего конец строки). Называться массив будет name. Для количества лет мы воспользуемся типом int, а переменную назовем age.


Следующий шаг заключается в том, чтобы запросить имя и возраст пользователя. Для этого воспользуемся библиотечной функцией printf(). Эта функция позволяет напечатать предложение о вводе на экран консоли.

Далее нам нужно считать переменные, которые введет пользователь. Для этого существует специальная библиотечная функция scanf().

Все данные приняты, теперь мы можем напечатать приветствие пользователя с помощью все той же функции printf(), после чего заняться анализом является ли пользователь школьником.

Обычно в школу поступают в 7 лет, заканчивают в 18. Напишем простое условие if (age>=7 && age<=18), такое условие позволит нам определить, что пользователь удовлетворяет возрасту школьника. В таком случае, мы пишем с помощью printf(), что пользователь, вероятно школьник. Иной случай мы обрабатываем с помощью ключевого слова else, где сообщаем, что пользователь скорее всего школьником не является.

Полный текст программы main.c можно найти в приложении.

Теперь скомпилируем программу и запустим ее:

~$ gcc main.c -o cprog

~$ ./cprogr

В терминале мы увидим следующее:

На изображении видно, как мы успешно компилируем программу с помощью gcc, после чего запускаем ее.

Язык программирования C++

C++ - язык программирования высокого уровня, созданный Бьярном Страуструпом на базе языка Си. Является его расширенной версией, реализующей принципы объектно-ориентированного программирования. Используется для создания сложных программ. Для IBM PC наиболее популярной является система Turbo C++ фирмы Borland (США).[1]

Язык C++ является объектно-ориентированным, компилируемым языком программирования со строгой типизацией.

Так как язык C++ является расширением языка C, множество понятий, синтаксических и семантических правил похожими. Однако у языка C++ есть несколько дополнительных понятий, которые расширяют язык C. Точно также, как и в C, в C++ есть препроцессинг, есть те же самые типы переменных, структуры, массивы и указатели.

Из нового, в C++ появляются такие понятия, как класс и шаблон.

Класс — это новая семантическая конструкция языка, которая позволяет объединить данные и методы, которые эти данные используют в один структурированный объект. У класса бывают данные и методы различных видов. Основные виды данных это private и public (также существует вид protected, его можно подробно изучить в специальизированной литературе). Данные и методы вида public доступны коду, который не связан с данным объектом. К данные и методам типа private же не может быть получен доступ извне. Таким образом реализуется такое свойство объектно-ориентированного программирования, как инкапсуляция. [5]


Классы могут наследовать друг от друга, в таком случае public данные и методы будут автоматически скопированы в класс-потомок. В коде программы экземпляр класса-потомка может быть присвоен как значение переменной класса-родителя. Таким образом реализуется такое свойство как наследование.

У классов могут быть виртуальные функции, если переопределить виртуальную функцию у класса потомка. В таком случае, при присвоении экземпляра класса-потомка к переменной класса-родителя, может быть вызвана эта виртуальная функция, причем выполнится код, описанный в определении функции в классе-потомке.

Шаблоны реализуются специальным ключевым словом template. Основная особенность шаблона заключается в том, что она позволяет шаблонизировать функции и классы для разных типов данных. Например, есть функция умножения. Так как есть множество разных числовых типов данных, то мы можем написать шаблонную функцию один раз, вместо того, чтобы написать несколько функций умножения для разных типов данных.

Для выполнения программы из 4-й задачи мы используем почти такой же код, как и для решения на языке C.

Единственная разница заключается в том, что вместо библиотеки stdio.h, мы используем две библиотеки C++: iostream и string. Для ввода-вывода мы воспользуемся стандартными потоками данных cout и cin. Вместо массива символов, мы используем специальный тип данных string, он реализован как класс в стандартной библиотеке string.

Полный текст программы main.cpp можно найти в приложении.

Теперь скомпилируем программу и запустим ее:

~$ g++ main.cpp -o cppprog

~$ ./cppprogr

В терминале мы увидим следующее:

На изображении видно, как мы успешно компилируем программу с помощью g++, после чего запускаем ее.

Язык программирования Java

Java — язык программирования высокого уровня, созданный Джеймсом Гослингом для программирования бытовых устройств. Главным принципом данного языка программирования можно рассматривать фразу «Написано однажды, работает всегда». Особенностью данного языка является то, что исходный код компилируется в специальный байт-код, который затем выполняется на его интерпретаторе JVM. Совместимость с различными архитектурами поддерживает JVM, которая реализуется на любых устройствах отдельно. Данный язык разрабатывает компания Sun Microsystems, поглощенной корпорацией Oracle. [1]

Язык Java является объектно-ориентированным, компилируемым языком программирования со строгой типизацией.


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

У языка Java нет препроцессинга, как в языках C или C++. Подключение различных библиотек происходит с помощью ключевого слова import. Так, например, выражение import java.util.Date; подключает стандартный пакет Java для работы с датами.

В языке Java есть всего 8 типов данных. Это целочисленные byte, short, int, long. Числа с плавающей точкой float и double. Символы char и логический тип данных boolean.

Точно так же, как и в языках C/C++ существуют логические и математические операторы, операторы сравнения, операторы присваивания, операторы побитовых операций.

Для управления программным потоком есть такие ключевые слова и конструкции, как for, while, if, else, do … while, goto, switch, case, break, continue, return.[6]

Также, в языке Java есть специальные ключевые слова для обработки исключений. Исключения – это механизм, который позволяет обрабатывать различные ошибки в программе, и кодировать специальные действия, которые должны быть выполнены в случае появления таких ошибок. Для этого используются такие ключевые слова, как: throw, throws, try, catch, finally.

Также к особенностям Java можно отнести работу с памятью. Так, динамически выделенная память освобождается автоматически, когда ресурс, для которого память была выделена перестает использоваться. Для этого в JVM есть специальная подпрограмма, которая называется сборщик мусора (garbage collector).

Для выполнения программы из 4-й задачи мы импортируем специальный класс Scanner, который мы используем для считывания имени и возраста из консоли. import java.utils.Scanner; - такая строка нам поможет выполнить необходимое действие.

Для считывания ввода, мы создадим экземпляр класса Scanner. Таким образом считать имя можно будет с помощью метода next(), а считать возраст можно будет с помощью метода nextInt().

Для вывода мы будем использовать системную функцию println().

Условие, по которому бы будем проверять, является ли пользователь школьником, остается таким же, как и в C/C++.

Полный текст программы javaprog.java можно найти в приложении.

Теперь скомпилируем программу и запустим ее:

~$ javac javaprog.java

~$ java javaprog

В терминале мы увидим следующее:

На изображении видно, как мы успешно компилируем программу с помощью javac, после чего запускаем ее с помощью интерпретатора java.


Язык программирования Python

Python — язык программирования высокого уровня, разработанный Гвидо ван Россумом, ориентированный на быструю разработку программ. Язык прост в изучении, в нем придается особое значение читаемости кода, а это сокращает затраты на сопровождение программных продуктов. Также язык часто используется в качестве сценарного языка для написания прикладных скриптов. [7]

Язык Python является интерпретируемым, объектно-ориентированным высокоуровневым языком программирования с динамической типизацией.

Встроенные высокоуровневые структуры данных в сочетании с динамической типизацией и связыванием делают язык привлекательным для быстрой разработки приложений (RAD, Rapid Application Development). Дополнительно, его можно использовать в качестве сценарного языка для связи программных компонентов.

Точно так же, как и в Java, у Python нет препроцессинга. Включение модулей из библиотек происходит с помощью ключевого слова import.

В языке Python есть множество типов, некоторые из них довольно необычные. Начнем с чисел. Целочисленные типы: int, long, bool (несмотря на то, что bool логический тип, он представлен числами 0 и 1). Число с плавающей точкой float. Также есть тип для комплексных чисел complex. Есть специальные типы для последовательностей: строчные типы str и unicode, кортеж tuple, список list. Словарь dict. Тип файла file. А также специализированные типы None, NotImplemented, Ellipsis. [7]

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

Из отличий можно выделить необычный синтаксис кода на данном языке. В данном языке не используется символ «;» для отделения команд друг от друга. Это значит, что можно написать только по одной независимой команде на строку. Также для выделения блоков кода используются не символы фигурных скобок, а отступы с помощью табуляции.

Управление памятью организовано как в Java, с помощью сборщика мусора.

Как и любой интерпретируемый язык, Python для работы нужен интерпретатор. В данный момент язык Python разделен на 2 версии — Python и Python3. Для них есть соответствующие интерпретаторы.

Для написания программы нам не потребуется включать никаких дополнительных библиотек — все можно реализовать с помощью стандартного функционала.

Для чтения ввода используется специальная функция input. А разделить переменные для имени и возраста можно с помощью метода split(). Также стоит отметить, что ввод стандартно считывается в качестве текста, поэтому возраст нужно преобразовать в число с помощью функции int().