| Предыдущая версия справа и слева
Предыдущая версия
Следующая версия
 | 
                    Предыдущая версия
 | 
                
                        
                
                    bb:lessons:second-basictypes [2016/04/07 21:38] prospero78 [Базовые типы]                  | 
                
                    bb:lessons:second-basictypes [2020/10/29 07:08] (текущий)                   | 
            
        
| ====== Урок второй. Базовые типы данных, массивы ====== | ====== Урок второй. Базовые типы данных, массивы ====== | 
 |  | 
| Что такое //тип данных//? Зачем мы про него говорим, едва ознакомившись с //модулем// и //журналом//? Дело в том, что //типы данных// --- //очень, очень важная штука// в программировании. | [[bb:lessons|]] | 
 |  | 
| Мы знаем, что компьютеры работают с //данными//. А что такое //данные//? Данные --- это факты, //сущности// внешнего мира, представленные таким образом, чтобы компьютер их мог обрабатывать. Ну а типы данных суть множества значений этих данных. Типы данных также вводят ограничения на использование данных. | Что такое тип данных? Зачем мы про него говорим, едва ознакомившись с модулем и журналом? Дело в том, что типы данных --- очень, очень важная штука в программировании. | 
 |  | 
| Например, //числовой тип// данных говорит нам о том, что переменная этого типа может содержать некий //диапазон целых чисел//. Переменную числового типа можно использовать __только__ для числовых вычислений. Нельзя в число записать букву, это ограничение и нарушать его нельзя, иначе мы запутаемся в том, где у нас слова и где числа, где пирожки и где котята. | Мы знаем, что компьютеры работают с данными. А что такое данные? Данные --- это факты, сущности внешнего мира, представленные таким образом, чтобы компьютер их мог обрабатывать. Ну а типы данных суть множества значений этих данных. Типы данных также вводят ограничения на использование данных.  | 
|   |   | 
|   | Например, числовой тип данных говорит нам о том, что переменная этого типа может содержать некий диапазон целых чисел. Переменную числового типа можно использовать только для числовых вычислений. Нельзя в число записать букву, это ограничение и нарушать его нельзя, иначе мы запутаемся в том, где у нас слова и где числа, где пирожки и где котята. | 
 |  | 
| ===== Базовые типы ===== | ===== Базовые типы ===== | 
|   |  | 
| Это самые простые, неделимые типы. Для них в языке определены базовые операции для вычисления новых значений. Базовыми типами в Обероне являются | Это самые простые, неделимые типы. Для них в языке определены базовые операции для вычисления новых значений. Базовыми типами в Обероне являются | 
|   * ''INTEGER'' (целые числа, точные вычисления)  |   * INTEGER (целые числа, точные вычисления)  | 
|   * ''REAL'' (дробные числа, вычисления с округлением)  |   * REAL (дробные числа, вычисления с округлением)  | 
|   * ''BOOLEAN'' (логические значения)  |   * BOOLEAN (логические значения)  | 
|   * ''CHAR'' (символы для печати)  |   * CHAR (символы для печати)  | 
|   * ''SET'' (последовательности) |   * SET (последовательности) | 
 |  | 
| Попробуем вывести в журнал значения переменных всех типов | Попробуем вывести в журнал значения переменных всех типов | 
 |  | 
| <code oberon2>  | <code>MODULE MyTypes; | 
| MODULE MyTypes; |  | 
 |  | 
| 	IMPORT Log; | 	IMPORT Log; | 
| 	END Do; | 	END Do; | 
 |  | 
| END MyTypes.  | END MyTypes.</code> | 
| </code> |  | 
 |  | 
| Что же мы увидим в журнале после выполнения команды '':!: MyTypes.Do'' ? Посмотрим на результат. | Что же мы увидим в журнале после выполнения команды '':!: MyTypes.Do'' ? Посмотрим на результат. | 
 |  | 
| <code>  | <code>2014 | 
| 2014 |  | 
| 3.141592920353983 | 3.141592920353983 | 
| $TRUE | $TRUE | 
| </code> | </code> | 
 |  | 
| Первой строчкой выведен результат вычисления операции сложения. Складываются целые числа, значит и результат будет тоже целочисленным.\\ На второй строчке выводится дробный результат деления двух целых чисел.\\ На третьей строчке мы видим, как выводится значение логического типа (очевидно, что пять больше двух и это истина, то есть ''TRUE'').\\ Символ "А" выведен на четвёртой строчке.\\ И последним выведено перечисление ''SET''. Это множество целых чисел из диапазона 0..31 (подробно на нём мы останавливаться не будем, потому что это выходит за рамки начального курса). | Первой строчкой выведен результат вычисления операции сложения. Складываются целые числа, значит и результат будет тоже целочисленным.\\ На второй строчке выводится дробный результат деления двух целых чисел.\\ На третьей строчке мы видим, как выводится значение логического типа (очевидно, что пять больше двух и это истина, то есть TRUE).\\ Символ "А" выведен на четвёртой строчке.\\ И последним выведено перечисление SET. Это множество целых чисел из диапазона 0..31 (подробно на нём мы останавливаться не будем, потому что это выходит за рамки начального курса). | 
 |  | 
| ===== Составные типы ===== | ===== Составные типы ===== |