Структура программы стандартные типы данных реферат

Обновлено: 02.07.2024

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

  • внутреннее представление данных, а следовательно и множество их возможных значений;
  • допустимые действия над данными (операции и функции).

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

Классификация типов

Рассмотрим классификацию типов в таблица 1.2.

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

ПРИМЕЧАНИЕ Типы, выделенные в таблица 1.2 полужирным шрифтом, объединяются термином 'порядковые'. Этот термин рассмотрен далее в этой лекции.

Стандартные типы данных

Логические типы

Внутреннее представление. Основной логический тип данных Паскаля называется boolean . Величины этого типа занимают в памяти 1 байт и могут принимать всего два значения: true (истина) или false (ложь). Внутреннее представление значения false — 0 (нуль), значения true — 1.

Операции. К величинам логического типа применяются логические операции and , or , xor и not ( таблица 1.3). Для наглядности вместо значения false в таблице используется 0, а вместо true — 1.

Операция and называется ' логическое И ', или логическое умножение. Ее результат имеет значение true , только если оба операнда имеют значение true .

Результат операции or ( логическое ИЛИ, логическое сложение) имеет значение true , если хотя бы один из операндов имеет значение true . Например, false or true true , true or true true .

Операция xor — так называемое исключающее ИЛИ, или операция неравнозначности. Ее результат истинен, когда значения операндов не совпадают.

Логическое отрицание not является унарной операцией, то есть имеет один операнд, который и инвертирует. Например, not true даст в результате false .

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

Целые типы

Внутреннее представление. Целые числа представляются в компьютере в двоичной системе счисления. В Паскале определены несколько целых типов данных, отличающиеся длиной и наличием знака: старший двоичный разряд либо воспринимается как знаковый, либо является обычным разрядом числа ( таблица 1.5). Внутреннее представление определяет диапазоны допустимых значений величин (от нулей до единиц во всех двоичных разрядах).

Операции.С целыми величинами можно выполнять арифметические операции ( таблица 1.6). Результат их выполнения всегда целый (при делении дробная часть отбрасывается).

К целым величинам можно также применять операции отношения, а также поразрядные операции and , or , xor и not . При выполнении этих операций каждая величина представляется как совокупность двоичных разрядов. Действие выполняется над каждой парой соответствующих разрядов операндов: первый разряд с первым, второй — со вторым, и т. д. Например, результатом операции 3 and 2 будет 2, поскольку двоичное представление числа 3 — 11, числа 2 — 10.

Для работы с целыми величинами предназначены также операции сдвига влево shl и вправо shr . Слева от знака операции указывается, с какой величиной будет выполняться операция, а справа — на какое число двоичных разрядов требуется сдвинуть величину. Например, результатом операции 12 shr 2 будет значение 3, а выполнив операцию 12 shl 1 , то есть сдвинув это число влево на 1 разряд, получим 24. Освободившиеся при сдвиге влево разряды заполняются нулями, а при сдвиге вправо — знаковым разрядом.

Стандартные функции и процедуры.К целым величинам можно применять стандартные функции и процедуры, перечисленные в таблица 1.7 (в тригонометрических функциях угол задается в радианах).

Тема реферата "Язык Paskal. Основные элементы языка. Структура программы" по дисциплине "Вычислительная техника и основы программирования".

Цель работы – раскрыть основные понятия структуру программы; алфавитязыка; простейшиеконструкции; выражения; типы данных; операции; стандартные функции.

Автором первой версии (1968 г.) алгоритмического языка Pascal является Никлаус Вирт (профессор, директор института Информатики Швейцарской высшей политехнической школы -1970г., лауреат премии Тьюринга за 1984г.).

В языке Pascal сконцентрировались многие лучшие черты языков предшественников.

В 1992г. фирма Borland International выпустила два пакета программирования, основанные на использовании языкаPascal : Borland Pascal 7.0 и Turbo - Pascal 7.0 . Первый включает три режима работы: обычный режим MS DOS , защищенный режим MS DOS и режим Windows . Второй позволяет работать только в обычном режиме MS DOS , что позволяет использовать его практически на любом современном персональном компьютере. Начинающим программистам целесообразнее начинать изучение языка именно с пакета Turbo - Pascal 7.0 .

1. Структура программы

Логически программа в среде Turbo - Pascal 7.0 состоит из двух частей:

- описательной (секция определения данных);

- исполнительной (секция определения действий).

Label . ;

Const . ;

Type . ;

Var . ;

procedure . ; единиц>

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

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

Программа может включать пояснительные надписи - комментарии, которые представляют собой произвольные тексты, заключенные в фигурные скобки или (* .. *) и расположенные в любом месте программы.


Var R , S , D : real ;

procedure OKR;

Writeln( ‘Введите значение радиуса R’);

Writeln( ‘Площадь круга =’, S);

Writeln( ‘Длина окружности =’,D)

2. Алфавит языка

Алфавит - совокупность допустимых в языке символов или групп символов, рассматриваемых как единое целое. В среде Turbo - Pascal 7.0 все компоненты формируются из множества символов стандарта ASCII ( American Standard Code for Information Interchange ).

Буквы: прописные и строчные буквы латинского алфавита: Aa , Bb , . Zz .

*)Знаки арифметических операций: + ; - ; * ; / ; div mod ;

Знаки отношений: ; >= ; = ; <> .

Знаки логических операций: not ;and ;or ;xor .

*) Подробнее о назначении и использовании знаков операций см. в разд. Типы данных .

Типы данных

В состав алфавита входят также зарезервированные слова (например, begin , end , if , then , else , for и т.д.), которые воспринимаются как единый символ алфавита и могут использоваться в программах только по своему прямому назначению. Полный перечень зарезервированных слов см. [5].

3. Простейшие конструкции

Идентификатор - используется для обозначения имен переменных, констант, функций, процедур и других программных единиц. Идентификатор представляет собой любую последовательность букв, цифр и знаков, начинающуюся с буквы (распознаются идентификаторы в среде Turbo - Pascal по первым 63 символам; прописные и строчные буквы не различаются).

Summa Неверно

ALPHA a -12

Set _1 СУММА

Game _25 25_ Game

Метка - в среде Turbo - Pascal в качестве метки может использоваться либо целое число без знака из диапазона 0..9999 , либо идентификатор.

Метками при необходимости помечают операторы в программе, от оператора метка отделяется символом двоеточие.

M 1: Y := X + Z ;

99: Write ( Y );

145: end ;

4. Выражения

Выражение - это синтаксическая единица языка, определяющая способ вычисления некоторого значения, подробнее см.[5, 14].Выражения в среде Turbo - Pascal формируются из констант, переменных, функций, знаков операций и круглых скобок.

( A + B ) * Sin ( C )

A + B - C <> 0

( A - B > 0) and ( C + A =0)

5. Типы данных

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

Типы данных Turbo - Pascal


Стандартные

Целые

Целые переменные, значения которых принадлежат одному из указанных диапазонов:

Тип Диапазон Размер, байт
Shortint -128..127 1
Integer -32768..32767 2
Ljngint -2147483648..2147483647 4
Byte 0..255 1
Word 0..65535 2

Примеры операций, допустимых над данными целого типа

Арифметические операции:

+ сложение;
- вычитание;
* умножение;
Div деление нацело:13 Div 2=6;
Mod остаток от деления:13 Mod 2=1.

Стандартные функции:

Dec(X,N) изменение X на N:Dec(13,2)=15;
Inc(X) увеличение X на 1:Inc(13)=14;
Odd(X) определение четности: Odd(13)=True, Odd(12)=False;
Abs(X) абсолютная величина X:Abs(-13)=13;
Sqr(X) возведение в квадрат: Sqr(2)=4.

Var X,Y:integer;

Let:byte;

X:=15;;Let:=10;

Y:=X mod 5; Y:=X div 4;

Вещественные

Вещественные переменные, значения которых принадлежат одному из указанных диапазонов:

Тип Диапазон Размер, байт
Real 2.9E-39..1.7E38 6
Single 1.5E-45..3.4E38 4
Double 5.0E-324..1.7E308 8
Extended 3.4E-4932..1.1E4932 10
Comp -9.2E18..9.2E18 8

Примеры операций, допустимых над данными вещественного типа:

Арифметические операции: +,-,*, / (деление).

Стандартные функции:

Trunc ( X ) возвращает целую часть X , результат целый Trunc (12.95)=12 ;

Round ( X ) округляет X до ближайшего целого Round (12.95)=13 ;

Int ( X ) возвращает целую часть X , результат вещественный

Int (12.95)=12.0 ;

Frac ( X ) возвращает дробную часть X , результат вещественный

Frac (12.95)=0.95 ;

Sin ( X ) вычисляет значение SinX ;

Cos ( X ) вычисляет значение CosX ;

Ln ( X ) вычисляет значение LnX ;

Exp ( X ) вычисляет значение экспоненциальной функции;

Sqrt ( X ) вычисляет значение корня квадратного из X ;

Sqr ( X ) вычисляет значение квадрата X ;

Abs ( X ) вычисляет модуль Х .

Var X,Y,Z:real;

X:=8.54;Y:=1.64E-3;

Логические (Boolean ):

Логические переменные занимают 1 байт памяти и принимают одно из двух значений:

False ложь

True истина

Var Alpha:boolean;

Примеры операций, допустимых над данными логического типа:

Not операция логического отрицания НЕ ;

And операция логического умножения И ;

Or операция логического сложения ИЛИ ;

Xor операция сравнения - исключительное ИЛИ .

Стандартная функция Ord ( Alpha )=0 если аргумент Alpha = False и равна 1 если Alpha = True .

Таблица логических операций Var A , B : boolean ;

A B not A A and B A or B A xor B
False False True False False False
False True True False True True
True False False False True True
True True False True True False

Символьные ( Char )

Символьные переменные занимают 1 байт памяти и их значениями служат символы ASCII - кода. К символьным данным применимы стандартные функции Pred , Succ , Ord .

Примеры операций, допустимых над данными символьного типа:

Var Lit1,Lit2:char;

Lit1:=’B’;Lit2:=Pred(Lit1);

В процессе написания работы были раскрыты основные понятия структуры программы; алфавитязыка; простейшиеконструкции; выражения; типы данных; операции; стандартные функции; приведены ряд примеров.

1. Абрамов С.А., Зима Е.В. Начала программирования на языке Паскаль. - М.: Наука, 1987;

2. Абрамов С.А., Зима Е.В. Начала информатики. - М.: Наука, 1988;

3. Довгаль С.И., Литвинов Б.Ю., Сбитнев А.И. Персональные ЭВМ: Турбо-Паскаль V7.0, Объектное программирование, Локальные сети. (Учебное пособие).- Киев, "Информсистема сервис", 1993;

4. Епанешников А.М., Епанешников В.А. Программирование в среде Turbo-Pascal 7.0 .- М. Диалог МИФИ, 1993;

5. Йенсен К., Вирт Н. Паскаль: Руководство для пользователя. /Пер. с англ. М.Л.Сальникова, Ю.В.Сальниковой. - М. Компьютер, 1993;

6. Перминов О.Н. Программирование на языке Паскаль. - М.: Радио и связь, 1988;

7. Поляков Д.Б., Круглов Н.Ю. Программирование в среде Турбо-Паскаля. - изд.МАИ., М. 1992;

8. Прайс Д. Программирование на языке Паскаль. Практическое руководство. /Пер. с англ. - М. Мир, 1987;

9. Семашко Г.Л., Салтыков А.И. Программирование на языке Паскаль. - М.: Наука. Гл. ред. физ.-мат. лит.,1993;

10. Фаронов В.В. Турбо-Паскаль. Начальный курс – 1 кн. Практика программирования –2 кн. Учебное пособие. - М.: "Нолидж",1997;

11. Эрбс Х.-Э., Штольц О. Введение в программирование на языке Паскаль./Пер. с нем. - М. Мир, 1989

Цель информационного программирования; алгоритмический язык как система обозначений и правил для единообразной и точной записи алгоритмов и их исполнения. Языки программирования низкого и высокого уровня; классификация и использование структуры данных.

Рубрика Программирование, компьютеры и кибернетика
Вид реферат
Язык русский
Дата добавления 07.01.2012
Размер файла 383,1 K

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Содержание

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

4. Структура данных

5. Список структур данных

6. Статистические структуры данных

7. Полустатистические структуры данных

8. Динамические структуры данных

9. Нелинейные структуры данных

Список использованной литературы

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

Все выше сказанное обусловило цель работы: исследовать основные типа и структуры данных различных языков программирования. Однако для этого необходимо понять, что такое программирование и что такое алгоритм.

1. Алгоритм

Алгоритм - это точное предписание, которое задает некоторый процесс, начинающийся с произвольного исходного данного (из некоторой совокупности возможных для этого алгоритма исходных данных) и направленный на получение полностью определяемого этим исходным данным результата.

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

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

В общем виде алгоритм на алгоритмическом языке записывается так:

алг имя алгоритма

дано условия применимости алгоритма

надо цель выполнения алгоритма

нач начало алгоритма

тело алгоритма (последовательность команд)

кон конец алгоритма

В алгоритмическом языке употребляются линейные, разветвляющиеся и циклические алгоритмы.

Линейными являются алгоритмы, состоящие из одной серии простых команд.

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

При разработке алгоритмов необходимо соблюдать определенные требования:

1. Конечность. Работа алгоритма должна заканчиваться за конечное число шагов.

2. Определенность. Все предписания алгоритма должны допускать однозначную трактовку и быть понятны исполнителю алгоритма.

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

4. Вывод. Алгоритм должен давать результат.

5. Эффективность. Общее время работы алгоритма должно быть в разумных пределах.

Под алгоритмизацией понимают процесс разработки алгоритма решения какой-либо задачи. В качестве примера может служить процесс разработки алгоритма нахождения наибольшего общего делителя.

Процесс разработки алгоритма включает в себя следующие этапы:

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

2. Построение математической модели исходной задачи (описание исходной задачи с использованием математических формул).

3. Анализ возможностей системы, Реализующей алгоритмический процесс (способна ли система по своим техническим характеристикам решить задачу).

В качестве исполнителей вычислительных алгоритмов выступают ЭВМ. Для того чтобы алгоритм был выполнен на ЭВМ, он прежде всего, должен быть записан с помощью специального языка - языка программирования. Процесс записи алгоритма на выбранном языке в форме, доступной для обработки на ЭВМ, называется программированием, а результат записи алгоритма на этом языке называется программой. Иными словами, программа это набор предписаний (инструкций) дл ЭВМ.

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

Программирование возникло задолго до появления компьютеров. Первым программистом считается дочь известного поэта лорда Байрона Ада Лавлейс - ученица английского математика Чарльза Бэббиджа, разработавшего в XIX веке проект вычислительной машины. В честь Ады Лавлейс один из языков программирования был назван в ее имением, впоследствии широко применяемый в Министерстве обороны Соединенных Штатов Америки.

Язык программирования -- формальная знаковая система, предназначенная для записи компьютерных программ. Язык программирования определяет набор лексических, синтаксических и семантических правил, задающих внешний вид программы и действия, которые выполнит исполнитель (компьютер) под ее управлением.

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

Создатели языков по-разному толкуют понятие язык программирования. К наиболее распространённым утверждениям, признаваемым большинством разработчиков, относятся следующие:

· Функция: язык программирования предназначен для написания компьютерных программ, которые применяются для передачи компьютеру инструкций по выполнению того или иного вычислительного процесса и организации управления отдельными устройствами.

· Исполнение: язык программирования может использовать специальные конструкции для определения и манипулирования структурами данных и управления процессом вычислений.

В настоящее время языков программирования несколько десятков, а то и сотен. Я рассмотрела лишь некоторые из них.

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

Язык программирования низкого уровня - это язык программирования, структура команд которого определяется форматом команд и данных машинного языка, а также архитектурой ЭВМ.

Ярким представителем языка программирования низкого уровня является Ассемблер (Assembler), который был разработан в 50-е годы прошлого века и позволяет писать программы с использованием специальных обозначений машинных кодов - мнемоники. Ассемблер широко применяется в программах, где необходимо высокое быстродействие.

Однако составлять программы на таком языке - дело очень хлопотное и неблагодарное. Поэтому были созданы языки программирования высокого уровня.

Язык программирования высокого уровня - это язык программирования, средства которого допускают описание задачи в наглядном, легко воспринимаемом виде.

Каждый язык высокого уровня определяется системой записи и набором правил. Грубо говоря, это набор слов (словарь) и правил составления предложений.

Языки программирования высокого уровня освобождают пользователя от программирования в машинных кодах. Однако такую программу не понимает ЭВМ, ей доступен только машинный язык. Поэтому для трансляции (перевода) программ с языка высокого уровня в машинные коды используются программы компиляции или интерпретации. При этом отличие компилятора от интерпретатора заключается в том, что компилятор вначале переводит все команды исходной программы, записанной на языке высокого уровня, в машинные инструкции, а затем выполняет ее, а интерпретатор осуществляет покомандную обработку и исполнение исходной программы.

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

Ада (Ada) - назван в честь Августы Ады Байрон, графини Лавлейс, дочери лорда Байрона, которая была сотрудницей Чарльза Бэббиджа, изобретателя аналитической машины, и написала для нее практически законченную программу вычисления коэффициентов Бернулли. Кроме того она ввела многие понятия (цикл, условный оператор), которые теперь составляют базу программирования. Сам язык Ада является универсальным языком программирования, поддерживающим методологии разработки снизу вверх и сверху вниз, раздельную компиляцию, настраиваемые пакеты, абстрактные типы данных, параллельное программирование и работу в реальном времени, средства для низкоуровневого программирования, контролируемую точность вычислений, возможность гибкой настройки на конкретную платформу и многое другое. В настоящее время Ада является основным языком программирования Министерства обороны США.

Алгол (Algorithmic Language - алгоритмический язык) - универсальный язык для программирования вычислительных задач. Ему свойственна близость к математической символике.

Бейсик (Beginer All-Purpose Symbolic Code - универсальный символический код для начинающих) - язык для создания программ и их решения ЭВМ в режиме диалога. Он был разработан в середине 60-х годов профессорами Дармутского колледжа Джоном Кемени и Томасом Курцом. Бейсик является одним из самых простых и распространенных в мире языков программирования. В середине 80-х годов фирмой Microsoft был реализован язык QuickBasic (последняя версия 4.5). Это полностью компилируемый язык, с нормальными структурными конструкциями, пользовательскими типами данных, причем еще и совместимый со старыми версиями. С появлением Windows и моды на визуальные средства разработки изменился и Basic. Его новая версия, названная Visual Basic, была отлично приспособлена для написания несложных программ с развитым пользовательским интерфейсом. Visual Basic на равнее с Visual C является весьма популярным средством разработки под Windows.

Делфи (Delphi) оказался одним из первых продуктов, который сделал процесс программирования простым и понятным даже начинающим разработчикам. Это было связано с появлением в начале 90-х операционных систем со встроенным графическим интерфейсом. Действительно, процесс разработки программы в Delphi предельно упрощен. В первую очередь это относится к созданию интерфейса, на который уходит 80% времени разработки программы. Вы просто помещаете нужные компоненты на поверхность Windows-окна (в Delphi оно называется формой) и настраиваете их свойства с помощью специального инструмента (Object Inspector). С его помощью можно связать события этих компонентов (нажатие на кнопку, выбор мышью элемента в списке и т.д.) с кодом его обработки - и простое приложение готово. При этом разработчик получает в свое распоряжение мощные средства отладки (вплоть до пошагового выполнения команд процессора), удобную контекстную справочную систему, средства коллективной работы над проектом и т.д. - всего не перечислить.

Паскаль (Philips Automatic Sequence Calculator). Этот язык был разработан швейцарским ученым Никлаусом Виртом в 1969 году как учебный язык, но спустя некоторое время приобрел популярность как отличный инструмент для решения серьезных задач. Программирование на Паскале обеспечивает высокую надежность программ. Программы на паскале понятны любому программисту и в то же время они легко транслируются в эффективные машинные коды. Паскаль, наряду с Бейсиком, считается так же учебным языком; он принят во многих учебных заведениях как базовый язык для изучения программирования. Так, в США с 1983 года Паскаль введен в учебные курсы всех средних школ для учащихся, специализирующихся в области информатики. По мере своего развития язык Паскаль постоянно совершенствовался и приобретал новые свойства и сейчас более известен язык Турбо Паскаль, разработанный фирмой Borland.

Фортран (Formula Translator - переводчик формул) был разработан в середине 50-х годов программистами фирмы IBM. В основном он используется для программ, выполняющих естественнонаучные и математические расчеты.

Ява (Java) - язык для программирования Internet, позволяющий создать безопасные, переносимые, надежные, объектно-ориентированные интерактивные программы с параллельно выполняющимися подпроцессорами. Язык Ява жестко связан с Internet, потому что первой серьезной программой, написанной на этом языке, был браузер Всемирной паутины.

3. Типы данных

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

Необходимость использования типов данных

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

Теоретически не может существовать языков, в которых отсутствуют типы. Это следует из того, что все языки основаны на машине Тьюринга или на лямбда-исчислении. И в том, и в другом случае необходимо оперировать как минимум одним типом данных -- хранящимся на ленте (машина Тьюринга) или передаваемым и возвращаемым из функции (лямбда-исчисление). Ниже перечислены языки программирования по способу определения типов данных:

2) Языки с неявным определением типов. Казалось бы, BASIC является примером языка без типов. Однако это строго типизированый язык: в нём различаются строковые типы (добавляется символ $), массивы (добавляется []) и числовые типы (ничего не добавляется).

На практике языки программирования поддерживают несколько моделей определения типов одновременно.

Базовые типы

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

Преимущества от использования типов данных

· Надёжность. Типы данных защищают от трёх видов ошибок:

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

Классификация типов данных

Типы данных бывают следующие:

o Перечислимый тип. Может хранить только те значения, которые прямо указаны в его описании.

o Числовые. Хранятся числа. Могут применяться обычные арифметические операции.

§ Целочисленные: со знаком, то есть могут принимать как положительные, так и отрицательные значения; и без знака, то есть могут принимать только неотрицательные значения.

§ Вещественные: с запятой (то есть хранятся знак и цифры целой и дробной частей) и с плавающей запятой (то есть число приводится к виду m*b e , где m -- мантисса, b -- основание показательной функции, e -- показатель степени (порядок) (в англоязычной литературе экспонента), причём в нормальной форме 0 , >=, , =.

Логический тип (Boolean) - состоит всего из двух значений: False (ложно) и True (истинно). Слова False и True определены в языке и являются, по сути, логическими константами. Регистр букв в их написании несущественен: FALSE = false. Значения этого типа являются результатом вычислений условных и логических выражений и участвуют во всевозможных условных операторах языка.

Допустимые операции:

- логические операции: NOT, OR, AND, XOR

Символьный тип (Char) - это тип данных, состоящих из одного символа (знака, буквы, кода). Значением типа Char может быть любой символ из набора ASCII (7-битная кодировка для представления десятичных цифр, латинского и национального алфавитов, знаков препинания и управляющих символов). Если символ имеет графическое представление, то в программе он записывается заключенным в одиночные кавычки (апострофы), например:

'ж' 's' '.' '*' ' '-(пробел)

Допустимые операции:

Большим считается тот символ, который имеет больший ASCII-номер.

Строковый тип (String, String[n]) - этот тип данных определяет последовательности символов - строки. Параметр n определяет максимальное количество символов в строке. Если он не задан, подразумевается n=255. Значение типа "строка" в программе запиывается как последовательность символов, заключенных в одиночные кавычки (апострофы), например

'Это текстовая строка' 'This is a string''1234' - это тоже строка, не число'' - пустая строка

Допустимые операции:

- сложение (конкатенация, слияние);

например, S := 'Зима'+' '+'пришла!'

Строки считаются равными, если имеют одинаковую длину и посимвольно эквивалентны.

Вещественные типы - обозначают множества вещественных чисел в различных диапазонах. Имеется пять вещественных типов, различающихся диапазоном допустимых значений и размером занимаемой оперативной памяти. Вещественные типы обозначаются идентификаторами: Real, Single, Double, Extended, Comp; их характеристики приведены в следующей таблице.

  • Для учеников 1-11 классов и дошкольников
  • Бесплатные сертификаты учителям и участникам

типы данных vba

В современном обществе компьютер играет огромную роль, уже трудно представить труд человека без использования вычислительной техники. Но компьютер сам по себе не способен даже на простые операции, поэтому для того, чтобы человек мог использовать компьютер необходимо так называемое программное обеспечение. Существует огромное количество разнообразных по своим функциям и возможностям программ, но среди них выделяют два основных типа: системное и прикладное программное обеспечение. К системному программному обеспечению относят операционную систему и всё ПО, предназначенное для создания рабочей среды. Прикладные программы в свою очередь выполняют ту самую работу, которая необходима человеку. В этой курсовой работе я остановлюсь на обзоре языка Visual Basic for Application в нем.

На сегодняшний день язык программирования VBA является довольно востребованным среди IT – специалистов. Практически любой пользователь может научиться писать программы на языке VBA , которые могут решить самые разнообразные задачи. В среде программистов-профессионалов считается, что самый короткий путь "с нуля" до профессиональных программ, которые делаются под заказ — именно через связку Office – VBA.

Цель: освоение и закрепление знаний на языке программирования Visual Basic в пакете Microsoft Excel .

Задачи: на языке программирования VBA создать примеры, с помощью которых можно рассмотреть принципы работы объектов и свойств данного языка.

Структура работы состоит из двух частей:

Теоретической, где содержатся материалы темы

Практической, где рассматриваются задачи, их данные, возможные недочёты и решение.

АНАЛИЗ ПРЕДМЕТНОЙ ОБЛАСТИ

Среда разработки VBA

После выпуска в 1994 г. Visual Basic for Application (VBA) и включения его в состав Microsoft Office язык Basic превращается в один из основных стандартов программирования для Windows.

Visual Basic for Applications ( VBA , Visual Basic для приложений) — немного упрощённая реализация языка программирования Visual Basic , встроенная в линейку продуктов Microsoft Office (включая версии для Mac OS ), а также во многие другие программные пакеты, такие как AutoCAD , SolidWorks , CorelDRAW , WordPerfect и ESRI ArcGIS . VBA покрывает и расширяет функциональность ранее использовавшихся специализированных макроязыков, таких как WordBasic.

Однако VBA обычно — самый удобный язык для работы с приложениями Office. Главная причина проста — язык VBA встроен в приложения Office (и не только), и код на языке VBA можно хранить внутри документов приложений Office — документах Word, книгах Excel, презентациях PowerPoint и т.п. Конечно же, этот код можно запускать оттуда на выполнение, поскольку среда выполнения кода VBA (на программистском сленге — хост) встроена внутрь этих приложений.

Однако VBA обычно — самый удобный язык для работы с приложениями Office. Главная причина проста — язык VBA встроен в приложения Office (и не только), и код на языке VBA можно хранить внутри документов приложений Office — документах Word, книгах Excel, презентациях PowerPoint и т.п. Конечно же, этот код можно запускать оттуда на выполнение, поскольку среда выполнения кода VBA (на программистском сленге — хост) встроена внутрь этих приложений.

Однако VBA обычно — самый удобный язык для работы с приложениями Office. Главная причина проста — язык VBA встроен в приложения Office (и не только), и код на языке VBA можно хранить внутри документов приложений Office — документах Word, книгах Excel, презентациях PowerPoint и т.п. Конечно же, этот код можно запускать оттуда на выполнение, поскольку среда выполнения кода VBA (на программистском сленге — хост) встроена внутрь этих приложений.

Использование перечисляемых типов повышает надежность программ благодаря возможности контроля тех значений, которые получают соответствующие переменные. В Object Pascal допускается обратное преобразование: любое выражение типа Word можно преобразовать в значение перечисляемого типа, если только значение целочисленного выражения не превышает мощности этого типа. Такое преобразование достигается… Читать ещё >

Простые типы. Структурированные типы данных ( реферат , курсовая , диплом , контрольная )

К простым типам относятся порядковые, вещественные типы и тип дата-время.

Порядковые типы отличаются тем, что каждый из них имеет конечное количество возможных значений. Эти значения можно определенным образом упорядочить (отсюда — название типов) и, следовательно, с каждым из них можно сопоставить некоторое целое число — порядковый номер значения.

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

Тип дата-время предназначен для хранения даты и времени. Фактически для этих целей он использует вещественный формат.

Порядковые типы

К порядковым типам относятся (см. рис. 1.1) целые, логические, символьный, перечисляемый и тип-диапазон. К любому из них применима функция Ord (x), которая возвращает порядковый номер значения выражения X.

Для целых типов функция ord (x) возвращает само значение х, т. е. Ord (X) = х для х, принадлежащего любому целому типу. Применение Ord (x) к логическому, символьному и перечисляемому типам дает положительное целое число в диапазоне от 0 до 1 (логический тип), от 0 до 255 (символьный), от 0 до 65 535 (перечисляемый). Тип-диапазон сохраняет все свойства базового порядкового типа, поэтому результат применения к нему функции ord (х) зависит от свойств этого типа.

К порядковым типам можно также применять функции:

pred (x) — возвращает предыдущее значение порядкового типа (значение, которое соответствует порядковому номеру ord (х) -1, т. е. оrd (рred (х)) = оrd (х) — 1;

succ (х) — возвращает следующее значение порядкового типа, которое соответствует порядковому номеру ord (х) +1, т. е. оrd (Succ (х)) = оrd (х) + 1.

Например, если в программе определена переменная.

то функция PRED© вернет символ '4', а функция SUCC (с) — символ '6'.

Если представить себе любой порядковый тип как упорядоченное множество значений, возрастающих слева направо и занимающих на числовой оси некоторый отрезок, то функция pred (x) не определена для левого, a succ (х) — для правого конца этого отрезка.

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

Таблица 1.1 — Целые типы.

0.. 2 147 483 647.

— 2 147 483 648…+2 147 483 647.

— 2 147 483 648…+2 147 483 647.

0.. .4 294 967 295.

Типы LongWord и Int64 впервые введены в версии 4, а типы Smallint и Cardinal отсутствуют в Delphi 1. Тип integer для этой версии занимает 2 байта и имеет диапазон значений от -32 768 до +32 767, т. е. совпадает с Smallint.

Перечень процедур и функций, применимых к целочисленным типам, приведен в табл. 1.2. Буквами b, s, w, i, l обозначены выражения соответственно типа Byte, Shortint, Word, Integer и Longint,.

х — выражение любого из этих типов; буквы vb, vs, vw, vi, vl, vx обозначают переменные соответствующих типов. В квадратных скобках указывается необязательный параметр.

Таблица 1.2 — Стандартные процедуры и функции, применимые к целым типам.

Возвращает модуль x.

Возвращает символ по его коду.

Уменьшает значение vx на i, а при отсутствии i — на 1.

Увеличивает значение vx на i, а при отсутствии iна 1.

Возвращает старший бант аргумента.

Возвращает третий по счету байт.

Возвращает младший байт аргумента.

Возвращает True, если аргумент-нечетное число.

Как у параметра.

Возвращает псевдослучайное число, равномерно распределенное в диапазоне 0…(w-l).

Возвращает квадрат аргумента.

Меняет местами байты в слове.

При действиях с целыми числами тип результата будет соответствовать типу операндов, а если операнды относятся к различным целым типам — общему типу, который включает в себя оба операнда. Например, при действиях с shortint и word общим будет тип integer. В стандартной настройке компилятор Delphi не вырабатывает код, осуществляющий контроль за возможной проверкой выхода значения из допустимого диапазона, что может привести к недоразумениям.

Логические типы. К логическим относятся типы Boolean, ByteBool, Bool, wordBool и LongBool. В стандартном Паскале определен только тип Boolean, остальные логические типы введены в Object Pascal для совместимости с Windows: типы Boolean и ByteBool занимают по одному байту каждый, Bool и WordBool — по 2 байта, LongBool — 4 байта. Значениями логического типа может быть одна из предварительно объявленных констант False (ложь) или True (истина).

Поскольку логический тип относится к порядковым типам, его можно использовать в операторе цикла счетного типа. В Delphi 32 для Boolean значение.

Ord (True) = +1, в то время как для других типов (Bool, WordBool и т. д. ).

Ord (True) = -1, поэтому такого рода операторы следует использовать с осторожностью! Например, для версии Delphi 6 исполняемый оператор showMessage (' —- ') в следующем цикле for не будет выполнен ни разу:

for L:= False to True do.

Таблица 1.3 — Кодировка символов в соответствии со стандартом ANSI.

Символы с кодами 0…31 относятся к служебным кодам. Если эти коды используются в символьном тексте программы, они считаются пробелами.

К типу char применимы операции отношения, а также встроенные функции:

Сhаr (в) — функция типа char; преобразует выражение в типа Byte в символ и возвращает его своим значением;

UpCase (CH) — функция типа char; возвращает прописную букву, если сн — строчная латинская буква, в противном случае возвращает сам символ сн (для кириллицы возвращает исходный символ).

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

colors = (red, white, blue);

Применение перечисляемых типов делает программы нагляднее.

Соответствие между значениями перечисляемого типа и порядковыми номерами этих значений устанавливается порядком перечисления: первое значение в списке получает порядковый номер 0, второе — 1 и т. д. Максимальная мощность перечисляемого типа составляет 65 536 значений, поэтому фактически перечисляемый тип задает некоторое подмножество целого типа word и может рассматриваться как компактное объявление сразу группы целочисленных констант со значениями 0, 1 и т. д.

Использование перечисляемых типов повышает надежность программ благодаря возможности контроля тех значений, которые получают соответствующие переменные. В Object Pascal допускается обратное преобразование: любое выражение типа Word можно преобразовать в значение перечисляемого типа, если только значение целочисленного выражения не превышает мощности этого типа. Такое преобразование достигается применением автоматически объявляемой функции с именем перечисляемого типа.

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

Тип-диапазон задается границами своих значений внутри базового типа:

Здесь — минимальное значение типа-диапазона; - максимальное его значение.

Тип-диапазон не обязательно описывать в разделе type, а можно указывать непосредственно при объявлении переменной.

При определении типа-диапазона нужно руководствоваться следующими правилами:

Тип-диапазон наследует все свойства своего базового типа, но с ограничениями, связанными с его меньшей мощностью. В частности, если определена переменная.

В стандартную библиотеку Object Pascal включены две функции, поддерживающие работу с типами-диапазонами:

High (х) — возвращает максимальное значение типа-диапазона, к которому принадлежит переменная х;

Low (х) — возвращает минимальное значение типа-диапазона.

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

Таблица 1.4 — Вещественные типы.

Количество значащих цифр

  • 15…16
  • 7…8
  • 15…16
  • 19…20
  • 19…20
  • 19…20
  • 5.0 *10e-324…1.7*10e308
  • 1.5 *10e-45…3.4*10e38
  • 5.0 *10e324…1.7*10e308
  • 3.4 *10−4951…1.1*10e4932
  • -2e63…+2e63−1

+/-922 337 203 685 477,5807.

В предыдущих версиях Delphi 1…3 тип Real занимал 6 байт и имел диапазон значений от 2,9*10−39 до 1,7*1038. В версиях 4 и 5 этот тип эквивалентен типу Double. Если требуется (в целях совместимости) использовать 6-байтных Real, нужно указать директиву компилятора .

Как видно из табл. 1.4, вещественное число в Object Pascal занимает от 4 до 10 смежных байт и имеет следующую структуру в памяти ПК.

Здесь s — знаковый разряд числа; е — экспоненциальная часть; содержит двоичный порядок; m — мантисса числа.

Мантисса m имеет длину от 23 (для single) до 63 (для Extended) двоичных разрядов, что и обеспечивает точность 7…8 для single и 19…20 для Extended десятичных цифр. Десятичная точка (запятая) подразумевается перед левым (старшим) разрядом мантиссы, но при действиях с числом ее положение сдвигается влево или вправо в соответствии с двоичным порядком числа, хранящимся в экспоненциальной части, поэтому действия над вещественными числами называют арифметикой с плавающей точкой (запятой).

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

Особое положение в Object Pascal занимают типы comp и Currency, которые трактуются как вещественные числа с дробными частями фиксированной длины: в comp дробная часть имеет длину 0 разрядов, т. е. просто отсутствует, в currency длина дробной части -4 десятичных разряда. Фактически оба типа определяют большое целое число со знаком, сохраняющее 19…20 значащих десятичных цифр (во внутреннем представлении они занимают 8 смежных байт). В то же время в выражениях comp и currency полностью совместимы с любыми другими вещественными типами: над ними определены все вещественные операции, они могут использоваться как аргументы математических функций и т. д. Наиболее подходящей областью применения этих типов являются бухгалтерские расчеты.

Читайте также: