Предисловие дорогие друзья !
Вид материала | Документы |
Содержание§6. Типы данных. 6.2. простейшие тèïû âåëè÷èí. Данные целого типа. 2) Данные действительного типа. 4) Данные логического типа. 6.3. Объявление данных. 2) Ïåðåìåííûå величины. |
- К. Бальмонт Дорогие друзья, сегодня мы в гостях у замечательного русского поэта Константина, 164.76kb.
- Медникова Надежда Александровна учитель начальных классов моу «Уинская сош» Пермский, 91.48kb.
- И в шутку и всерьез Ведущий Добрый день, дорогие друзья! Вот и пришла весна, вот, 339.91kb.
- Играют 2 команды. Вопросы викторины, 53.15kb.
- Летние каникулы в праге, 322.16kb.
- Мои дорогие литературные друзья, 136.81kb.
- Ведущий: Дорогие, друзья! Разрешите поздравить вас с большим и дорогим для всех праздником, 124.29kb.
- Отчет о конференции 17-18 апреля дорогие друзья!, 182.44kb.
- Дорогие друзья и единомышленники, 134.05kb.
- Сценарий для 7-8 классов «Старая сказка на новый лад», 52.44kb.
§6. Типы данных.
6.1. Âåëè÷èíû. Программа оперирует объектами, которые для компьютера принято называть данными. Данные могут быть различного типа. Наиболее распространённые типы — это числовые, логические и символьные. Для обозначения исходных данных и результатов вычислений употребляются величины.
Ïîíÿòèå âåëè÷èíû ÿâëÿåòñÿ îäíèì èç ñàìûõ âàæíûõ ïîíÿòèé øêîëüíûõ êóðñîâ ìàòåìàòèêè è ôèçèêè. Âåëè÷èíû, êîòîðûå ðàññìàòðèâàþòñÿ â êóðñàõ ìàòåìàòèêè è ôèçèêè, ÿâëÿþòñÿ ïðåèìóùåñòâåííî ÷èñëîâûìè âåëè÷èíàìè. Ïîэòîìó ÷àñòî ñêëàäûâàåòñÿ ïðåäñòàâëåíèå î òîì, ÷òî âåëè÷èíû — ýòî òî, ÷òî âñåãäà ìîæíî èçìåðèòü. Ïëîùàäü ôèãóðû, ñêîðîñòü äâèæåíèÿ òåëà, ñèëà — ýòî ïðèìåðû âåëè÷èí. Ïðè èçó÷åíèè èíôîðìàòèêè âîçíèêàåò íåîáõîäèìîñòü ðàñøèðèòü ïîíÿòèå âåëè÷èíû.  íîâîì ïîíèìàíèè âåëè÷èíàìè îêàçûâàþòñÿ íå òîëüêî ÷èñëîâûå âåëè÷èíû, íî è ãðàôèêè, òåêñòû, ãåîìåòðè÷åñêèå ôèãóðû è, âîîáùå, îáúåêòû ñàìîé ðàçíîé ïðèðîäû. Íåîáõîäèìîñòü ðàññìîòðåíèÿ òàêèõ âåëè÷èí îáóñëîâëåíà óíèâåðñàëüíîé ñïîñîáíîñòüþ êîìïüþòåðà îáðàáàòûâàòü ðàçëè÷íóþ èíôîðìàöèþ. Ýòà èíôîðìàöèÿ ìîæåò áûòü, â ÷àñòíîñòè, ÷èñëîâîé (÷èñëîâûå âåëè÷èíû), ãðàôè÷åñêîé (ãðàôè÷åñêèå âåëè÷èíû), òåêñòîâîé (ëèòåðíûå èëè ñòðîêîâûå âåëè÷èíû).
Как и в математике, в языке Паскаль величины обозначают буквами, буквами с цифрой и т.д., т.е. дают имена величинам.
Íàïðèìåð: a, ab, summa, x1, a2, b1.
Папоминаем, что в êà÷åñòâå èìåí âåëè÷èí íåëüçÿ èñïîëüçîâàòü ñëóæåáíûå ñëîâà ÿçûêà.
Âåëè÷èíû áûâàþò äâóõ âèäîâ: ïîñòîÿííûå (êîíñòàíòû) è ïåðåìåííûå.
Êîíñòàíòà — величина, значение которой не изменяется â ïðîöåññå âûïîëíåíèÿ ïðîãðàììû. Îíà ìîæåò áûòü çàäàíà ÿâíî ñâîèì çíà÷åíèåì èëè îáîçíà÷åíà èìåíåì.
Ïåðåìåííàÿ — величина, êîòîðая может изменяться, принимая при этом различные значения.
6.2. простейшие тèïû âåëè÷èí. Человек, оперируя какими-либо данными, способен быстро разобраться в типах данных и в тех операциях, которые допустимы для каждого из типов. Например, он не будет извлекать квадратный корень из слова или не запишет число с заглавной буквы. Основной причиной, позволяющей производить такое быстрое распознавание, является отличие в записи разных типов данных. Компьютер же всякую информацию воспринимает как последовательность двоичных разрядов. Поэтому ему необходимо дополнительно указать, какой тип имеет каждое используемое в программе данное. Это осуществляется с помощью специальных операторов-описаний.
Типы данных должны быть заданы для того, чтобы транслятор мог их правильно разместить в памяти.
Над данными каждого из типов допускается производить определённые для этого типа данных операции.
Итак, тип – это характеристика величины, которая определяет три её свойства: форму внутреннего представления, множество принимаемых значений и множество допустимых операций.
Набор величин можно представить в виде некоторого количества ящичков. Каждый из ящиков имеет: свой адрес — имя величины; размер — тип величины; содержимое — значение величины. причём, содержимое ящика — это неделимый предмет, который занимает весь ящик. Если мы хотим заменить один предмет другим, то должны удалить первый предмет из ящика.
Простейшие стандартные типы данных в языке Паскаль ñëåäóþùèå:
1) Данные целого типа.
Данные целого типа используются в тех случаях, когда какую-то величину нужно представить абсолютно точно, например, количество предметов.
Запись целых чисел в программе такая же, как и в математике. Это набор цифр, которому может предшествовать знак «плюс» или «минус»: 201, -126, +12600. Значения целых чисел не могут выходить за пределы определённые типом величины. в памяти машины данные представлены точно. В языке Паскаль для представления целых чисел используются следующие типы:
Íàèìåíîâàíèå òèïà Îáëàñòü çíà÷åíèé
byte 0..255
word 0..65535
shorting -128..127
integer -32768..32767
longint -2147483648..2147483647
Как видите, не любое целое число может быть представлено в языке Паскаль. Это связано с тем, что числа в памяти машины представлены в двоичном виде, и принимаемое значение зависит от того, сколько разрядов использует тот или иной тип. Для данных BYTE и SHORTING отводится 1 байт = 8 бит, WORD и INTEGER — 2 байта = 16 бит, LONGINT — 4 байта = 32 бита. (Как видите, размер ящика влияет на возможный размер содержимого.)
2) Данные действительного типа.
Данные действительного (вещественного) типа используются значительно чаще, чем целого типа. Они необходимы в тех случаях, когда числовые величины могут содержать дробные значения.
Для представления вещественных чисел существует несколько типов (см. Приложение 3). Мы рассмотрим пока только один: real. Самое малое по модулю число (не считая нуля), которое можно сохранить в переменной типа REAL, равно 10-38, а самое большое — равно 10+38. несмотря на большой диапазон по сравнению с целыми числами действительные числа обладают недостатком: они представлены в памяти ЭВМ с некоторым приближением. Это объясняется неточным переводом многих действительных чисел из десятичной системы в двоичную. При вычислениях погрешность может накапливаться. Кроме того, тип real позволяет сохранять только 12 значащих (верных) цифр.
3) Данные символьного типа.
Язык Паскаль позволяет обрабатывать не только числа, но и символы. это даёт возможность представлять в программах тексты и выполнять над ними некоторые операции.
Набор символов используемых в компьютере достаточно большой. Все символы упорядочены, т.е. каждый символ имеет свой порядковый номер от «0» до «255» (см. Приложение 4).
Òèï äàííûõ char (символ) îáîçíà÷àåò ìíîæåñòâî ñèìâîëîâ. Îäèí ñèìâîë òðåáóåò äëÿ ñâîåãî вíóòðåííåãî ïðåäñòàâëåíèÿ 8 áèò = 1 áàéòó. номера символов используются в операциях сравнения и в некоторых стандартных функциях. Ïðè îïðåäåëåíèè значений символьных âåëè÷èí, присваиваемое çíà÷åíèå çàêëþ÷àåòñÿ â àïîñòðîôû: 'à', 'Â', '+'.
4) Данные логического типа.
Данные логического типа участвуют во всевозможных условных операторах языка Паскаль. Ëîãè÷åñêèé òèï boolean õàðàêòåðèçóåòñÿ äâóìÿ çíà÷åíèÿìè âåðîÿòíîñòè: true (èñòèííî) è false (ëîæíî). Слова TRUE и FALSE определены в языке и являются логическими константами.
Более подробно с типами данных можно познакомиться в Приложении 3.
6.3. Объявление данных.  îòëè÷èе îò íåêîòîðûõ äðóãèõ ÿçûêîâ программирования (íàïðèìåð, Áåéñèê), ãäå äåéñòâóåò ïðèíöèï óìîë÷àíèÿ (т.е. переменные объявляются в момент их первого появления в программе), â Ïàñêàëå äîëæíî áûòü äàíî îïèñàíèå âñåõ ïåðåìåííûõ èñïîëüçóåìûõ â ïðîãðàììå. Программисты говорят, что в языке Паскаль должны быть объявлены все объекты до того, как они будут использованы.
Каждая величина должна быть объявлена в программе, т.е. указан её тип, какая она — целочисленная, дробная или другого типа. Вернёмся снова к примеру со сложением чисел. Слагаемые могли быть либо целыми, либо дробными числами.
Для объявления данных мы должны выбрать тип в соответствии с типом слагаемых, а для этого необходимо знать правила объявления типов переменных и констант.
1) Êîíñòàíòû. Если константа обозначается именем, то она äîëæíа áûòü îïèñàíа â ðàçäåëå констант. Описание начинается со служебного слова CONST. после имени константы ставится знак «=» (равно), за которым записывается значение константы. Тип константы в этом случае определяется присваиваемым ей значением.
Âîò íåñêîëüêî ïðèìåðîâ:
const oben =324; {целочисленная константа}
unter =-oben; {целочисленная константа }
parole='àáðàêàäàáðà'; {строковая константа }
maximum=12.5; {вещественная константа }
Ñóùåñòâóþò è, òàê íàçûâàåìûå, òèïèçèðîâàííûå êîíñòàíòû.  îïèñàíèè òèïèçèðîâàííîé êîíñòàíòû ïðèñóòñòâóþò îïèñàíèå òèïà è îäíî èç äîïóñòèìûõ çíà÷åíèé äëÿ ýòîãî òèïà.
Òèïèçèðîâàííûå êîíñòàíòû ÿâëÿþòñÿ, ñîáñòâåííî ãîâîðÿ, ïåðåìåííûìè, êîòîðûì â òîé ÷àñòè ïðîãðàììû, ãäå îïèñûâàþòñÿ êîíñòàíòû, ïðèñâàèâàåòñÿ íåêîòîðîå íà÷àëüíîå çíà÷åíèå. Îíè íå òîëüêî ìîãóò îïèñûâàòüñÿ êàê ïåðåìåííûå, èõ ìîæíî èñïîëüçîâàòü â ïðîãðàììå â êà÷åñòâå ïåðåìåííûõ, ò.å. èì ìîæíî ïðèñâîèòü íîâîå çíà÷åíèå èëè èñïîëüçîâàòü èõ â êà÷åñòâå ïàðàìåòðà â ïðîöåäóðàõ è ôóíêöèÿõ.
Ïðèìåðû описания типизированных констант:
CONST zinsen : real=7.5; {Вещественная константа}
anzahl : integer=589; {Целочисленная константа}
ein : char='z'; {Символьная константа}
2) Ïåðåìåííûå величины. Ïåðåìåííûå äîëæíû áûòü îïèñàíû (определены) â ðàçäåëå VAR, где после имени переменной ставят знак «:» (двоеточие), за которым записывают тип. Если несколько переменных имеют одинаковый тип, то их можно объединить в список, разделяя запятыми.
Ïðèìåðы описания переменных:
VAR m,n: integer; {переменные m,n — целого типа}
a : boolean; {переменная а — логического типа}
b,c : char; {переменные b, c — символьного типа}
Напомним, что для переменной величины в программе должны быть указаны: имя, тип и заданы значения.
Вопросы и задания.
- Какие величины называют константами?
- Какие величины называют переменными?
- каковы правила записи имён величин? Приведите примеры.
- для чего используется указание типа величины?
- Перечислите простейшие типы величин.
- можно ли в процессе выполнения программы изменять значения констант?
- Существует ли ограничения на множество целых чисел, используемых в языке Паскаль? Если да, то чем они определяются?
- Для представления каких чисел в языке Паскаль используется тип REAL?
- В чём отличие двух типов числовых данных REAL и INTEGER?
- Указать неправильные записи чисел на языке Паскаль:
а) 0006; б) - 0; в) 7,0; г) 7.; д) + 0.3; е) .3;
ж) 2/3; з) Е-1; и) 8Е0; к) 0Е-4; л) 2*Е5; м) е.
- Есть ли разница (с точки зрения языка Паскаль) между числами 100 и 100.0, между 20 и 20.0? По какому признаку (величине или форме записи) целые числа отличаются от вещественных?
- Какие из следующих последовательностей символов являются числами в языке Паскаль:
а) 0; б) -5; в) 1/12; г) 3,14; д) +7.7; е) 0.66…;
ж) 0.(6); з) -0,815; и) 2+2.5; к) ±1; л) VII.
17. Правильно ли определён тип величины:
количество тетрадей - вещественный тип;
вес контейнера - целый тип?
18. Укажите тип величины, если значение равно:
a) 115; b) 0.15.
19. Из приведённых значений выберите допустимые для величин
целого типа (BYTE)
вещественного типа
символьного типа
целого типа (INTEGER)
‘?’; 30; -46; -0.126; 15.003; ‘g’.
20. Определите, является ли величина постоянной или переменной:
количество дней в неделе;
количество дней в январе месяце;
количество дней в месяце.
21. Определите тип для величин:
скорость машины;
количество учебных предметов.
22. Для величины КОЛИЧЕСТВО СТРАНИЦ В КНИГЕ выберите допустимое: 23.7; 292; -78; ‘7’; 123; ‘5’; 34.8.