КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Типизация и организация данных
End function End sub вызов процедуры: call Имя_Процедуры(список значений параметров) или Имя_Процедуры(список значений параметров) Рис. 1.2. Описание и вызов процедуры В принципе, внутри процедуры можно определять множество данных и через параметры передавать их в основную программу. Тогда в список параметров надо добавить дополнительные параметры, а в список значений параметров при вызове процедуры – имена данных, которые определяются в процедуре. Функции определяют значение одного данного. В отличие от описания процедуры в конце тела функции стоит команда, связывающая имя функции с конкретным ее значением. Это необходимо для передачи значения функции в основную программу. Как видно из рис. 1.3, функция может вызываться в правой части выражения, содержащего знак равенства (в том числе и как составная часть некоторого выражения), а так же как параметр или один из элементов списка параметров некоторой команды, например, команды PRINT (печатай).
описание функции: function Имя_Функции(список аргументов) < Команды функции (тело функции)> Имя_функции = значение (т.е. число, строка или вычисляемое выражение) вызов функции Имя_данного = Имя_функции(список значений аргументов) или Команда Имя_Функции(список значений аргументов) Рис. 1.3. Описание и вызов функции Совершенно очевидно, что для различных данных существуют свои алгоритмы их обработки. Например, сумма чисел 123 и 345 равна 468, а сумма (результат слияния) строк “123” и “345” получает значение “123345”. Следовательно, желательно каким-то образом указывать способ обработки данных. Для данных необходимо указывать и их длину. Это позволит системе выделить соответствующее место (количество байтов) в ОЗУ, отводимых для хранения данных. Например, для данных, имеющих два альтернативных значения, вполне достаточно одного бита, для целых чисел в пределах -32767 … +32768 – двух байтов и т.д. Интегральной характеристикой данных является их тип, одновременно указывающий и способ их обработки и длину. В тексте программы имеется раздел описания данных на основе простых типов. Современные системы программирования предусматривают простые типы данных, приведенные в табл. 1.2.
Таблица 1.2 Простейшие распространенные типы данных
Кроме перечисленных часто встречающихся типов возможны другие простые типы – число с фиксированной точкой, байт, безтиповые и др. Современные системы программирования позволяют также на основе простых типов данных конструировать свои сложные типы данных. Например, можно создать тип данных студент, являющийся комбинацией данных string (для имени) и integer (для года рождения). Для хранения однотипных данных одинакового назначения существует специальный способ организации данных – массив. Данные, объединенные в массив, называются элементами массива и имеют общее символьное имя и уникальные номера. Доступ к элементам массива осуществляется по имени и номеру. Конкретный адрес вычисляется на основании символьного эквивалента адреса (имени), типа данных (т.е. их длины) и номера. Номер элемента (индекс) записывается в скобках (круглых или квадратных). Следует уяснить разницу между данными с именами, включающими цифры (например, А1, А2, … А100) и похожими на них элементами массива (А[1], А[2], … А[100]). Первые данные никак не связаны между собой, поэтому невозможно определить адрес данного с именем А2 по адресу данного с именем А1. И, наоборот, зная адрес элемента массива А[1], легко можно определить адрес элемента массива с любым номером.
1.4.4. Глобальные и локальные данные. Представим себе ситуацию, показанную на рис. 1.4. Внутри описания процедуры есть команда "присвоить данным с именем "х" значение 5". В тексте программы аналогичной командой данным с именем "х" присваивается значение 10, а затем вызывается процедура. Что будет напечатано?
Аналогичная ситуация возникает с различными описаниями и определениями значений одноименных данных, разнесенными по множеству модулей. Поэтому приходится описывать данные и указывать их видимость.
.
Существует соглашение, согласно которому описание данных как локальных внутри блочной структуры отменяет внутри нее описание одноименных глобальных данных. Таким образом, если мы вне процедуры опишем х как глобальные данные, а внутри процедуры не укажем, что х – локальные данные, то результат будет х=5, если внутри процедуры опишем данные х как локальные, то результат будет х=10, а значение х=5 будет утеряно. Описывая данные, мы можем указать необходимость выделения места в ОЗУ под массив на все время работы программы или на короткое время. В первом случае мы имеем дело со статическими данными, во втором – с динамическими.
1.4.5. Объектно-ориентированное Очень важным шагом в развитии программирования как науки является появление объектов – фрагментов программы, выполняющих комплексы некоторых заранее условленных действий и характеризующихся рядом параметров. Действия выполняются процедурами и функциями, которые называются методами объекта, параметры – полями объекта. Обычно объект задается перечнями полей и методов, причем методы в дальнейшем должны быть описаны. Например, наиболее распространенным элементом интерфейса пользователя является окно. Его можно рассматривать как объект, характеризующийся полями: x,y - координаты левого верхнего угла окна на экране, l,h - размеры (ширина и высота), simvol, fon - цвета текста и фона окна. Как объект окно обладает хотя бы одним методом, например, процедурой рисования окна RisOkno. При необходимости список полей и методов можно существенно расширить. Описание окна как объекта (не в символах языков программирования), показано на рис. 1.5. Окно = объект x,y: <указание типа данных> l,h: <указание типа данных> simvol, fon: <указание типа данных>
Дата добавления: 2014-11-29; Просмотров: 525; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |