Змінні числового типу
Типи даних
Дані та їх типи
Числові типи даних
Числові дані являють собою числа. Вони бувають наступних типів: цілі, довгі цілі, звичайної точності, подвійної точності:
Цілі (INTEGER) - займають у пам'яті 2 байти і використовуються для значень в діапазоні від -32768 до +32768.
Довгі цілі (LONG) - 4 байти. Використовуються для значень діапазоні від -2,147,483,648 до +2,147,483,647. Вони використовуються в тих випадках, коли необхідні операції з цілими перемінними, що виходять за рамки діапазону цілих чисел у поданні BASIC.
Звичайної точності (SINGLE) - 4 байти. Використовується для значень в діапазоні від -3.402823Е+38 до-1.40129Е-45 для негативних значень та від +I.40129E-45 до т3.402823Е+38 для позитивних значень.
Подвійний точності (DOUBLE) - 8 байт. Використовується для значень в діапазоніо т -1.797693134862316Е+308 до -4.94965Е-324 для негативних значень і від 4.94965Е-324 до 1.797693134862316. Зазвичай застосовується для точних математичних обчислень, які допускають втрату значності.
Символьні типи даних
Рядок змінної довжини (STRING) - це послідовність довжиною до 32567 символів з таблиці ASCII. У пам'яті вона займає стільки байт, яка її довжина + 4 байти на описувач.
Рядок фіксованоїдовжини (STRING *num) - символьний рядок довжиною num байт. У пам'яті такий рядок займає нум байт.
Культурні типи даних (записи)
Якщо дані, які ви використовуєте в програмі, необхідно згрупувати за якоюсь ознакою, то для цього дуже зручно використовувати тип даних (запису). Він складається із простих типівданих (числових та символьних), описаних вище.
Наприклад, нам необхідно запровадити табельний номер працівника, його прізвище та тарифну ставку.
'Визначимо користувальницький тип даних Record
'за допомогою оператора TYPE
TabNomer AS INTEGER
Family AS STRING*15
Stavka AS DOUBLE
'Привласнюємо змінної Rabotnikпользовательский тип
DIM Rabotnik AS Record
'Послідовно вводимо значення кожного елемента запису
INPUT "Введіть табельний номер"; Rabotnik.TabNomer
INPUT "Введіть прізвище працівника"; Rabotnik. Family
INPUT "Введіть тарифну ставку"; Rabotnik.Stavka
Користувальницький тип даних займає у пам'яті стільки байт, скільки займають у сумі кожен із його елементів. Для нашого прикладу запис Rabotnik включає ціле число (2 байти), рядок фіксованої довжини (15 байт) та число подвоєної точності (8 байт). Таким чином, вона має розмір 25 байт.
Типи даних, які визначають користувач, можуть включати будь-які типи стандартних даних, крім рядків змінної довжини і масивів.
Константи
Константами називаються заздалегідь визначені значення, які не змінюються в процесі роботи програми. Як приклад можна навести число PI, основу натурального логарифму, рік Вашого народження тощо. Константи зручно використовувати для тих величин у Вашій програмі, які не передбачається змінювати - кількість рядків, що виводяться на екран, значення функціональних клавіш і т.д.
У мові QuickBASIC є 2 типи констант - неіменовані та іменовані.
Нейменовані константи
Вони бувають символьні та числові, і використовуються в програмі в тих випадках, коли їхнє значення заздалегідь відоме і не підлягає зміні.
Символьні константи — це послідовність до 32767 алфавітно-числових символів (за винятком лапок (") та символів перекладу каретки та пропуску рядка (CR — ASCII 13 і LF — ASCII 10). Вони обов'язково повинні полягати в лапках:
PRINT "Середня заробітна плата"
Кількісні константи є позитивними або негативними числами. Вони можуть бути тих же типів, що і змінні - цілі або довгі цілі типу, звичайної або подвійної точності:
Цілий тип: 68, +407 -1
Довгий тип: 95000000, -400141
Звичайна точність: 9.0846
Подвійний точності: 4.35D-10
Іменовані константи
Вони також бувають символьні і числові, тих самих типів, що не іменовані. Щоб використовувати іменовану константу, її необхідно оголосити за допомогою ключового слова CONST, наприклад:
CONST MaxArray% = 512
У цьому прикладі оголошується ціла константа МахАrrау і їй присвоюється значення 512. Надалі до цієї константи можна звертатися на ім'я:
Символьна константа оголошується та використовується аналогічно:
CONST BAD$ = "mbt120o016eee12c"
При зверненні до іменованих константів, ви можете опускати розширення, як показано в цих прикладах.
Використання іменованих констант має ряд переваг у порівнянні з використанням для цих цілей змінних:
• Якось визначивши константу, ви не зможете випадково змінити її значення. BASIC відразу видасть повідомлення про помилку "Duplicate Definition" (Подвійне визначення);
• Іменована константа доступна всім процедурам та функціям цього модуля. У разі використання змінної, ви повинні будете оголосити її як SHARED у всіх процедурах і функціях модуля;
• BASIC виконує операції з константамишвидше, ніж зі змінними.
| HELP: MaxArray MaxArray є в synbol, що використовується в вашому програмі як наступні: Untitled constant of type: INTEGER Value = 512 |
Зручно використовувати іменовані константи для позначення функціональних кнопок. Це дуже допомагає при написанні програм — не треба пам'ятати, коди цих клавіш — натомість можна просто написати:
CONST F1% = 59, F2% = 60, F3% = 61, F4% = 62, F5% = 63
CONST F6% = 64, F7% = 65, F8% = 66, F9% = 67, F10% = 68
SELECT CASE Kod
Змінні
Змінна — ця величина, яка може змінюватися під час виконання програми. Якщо навести приклад із життєвої практики, то можна завантажити, що змінна величина, наприклад, скільки у Вас зараз грошей, або ближче до комп'ютерної практики, скільки вільного місця залишилося у Вас на жорсткому диску.
Змінні бувають прості (символьного типу, числового типу і користувача типу) і змінні масиви — групу об'єктів одного типу, що представляє собою.
Імена змінних
Імена змінних можуть містити до 40 символів. У імені змінних можуть бути латинські літери, числа, десяткова точка, і символи визначення типу (%, &, !, # і $). Перший символ має бути латинською літерою. Якщо змінна починається з FN, мається на увазі виклик функції DEF FN.
Ім'я змінної не може бути зарезервованим QuickBASIC, хоча допускається комбінація зарезервованого слова та інших символів.
Так, у прикладі міститься помилка – LOCATE (розмістити) є зарезервованим словом(без урахування регістру):
Однак наступний приклад припустимо:
Зарезервованими словами QuickBASIC є команди, оператори, імена функцій.
Даючи імена змінним, ви можете комбінувати в них великі та малі літери. Хоча BASIC не розрізняє великі та малі літери при роботі зі змінними, це дуже зручно для програміста, оскільки в імені змінної він може зробити акцент на її призначення, наприклад:
QB уважно стежить за тим, щоб комбінація великих і малих літер була однакова для всіх змінних. Так, якщо ви назвали змінну happynewyear, а потім, наприклад, звернулися до неї, як до змінної з іменем HappyNewYear, то QB одразу змінить назву happynewyear на HappyNewYear скрізь, де вона зустрічається.
Змінні числового типу
Змінні числового типу є, природно, числа. Вони бувають цілі (INTEGER), довгі цілі (LONG INTEGER), звичайної точності (SINGLE), подвійної точності (DOUBLE):
Цілі (INTEGER) - займають у пам'яті 2 байти і використовуються для значень в діапазоні від -32768 до +32768. Присвоїти змінній цілий тип можна так:
'оголосити змінні в програмі (від А доZ)цілого типу
'Змінна Flag - ціла, тому що вона починається з літери F, яка входить у діапазон A-Z
б) Явно поставити змінну за допомогою суфікса "%"
'Змінна Flag% - цілого типу
в) Використовувати оператор опису змінної
Списуємо змінну як цілу
DIM Flag AS INTEGER
Довгі цілі (LONG) - 4 байти. Використовуються для значень в діапазоні від- 2,147,483,648до +2,147,483,647. Вони використовуються в тих випадках, коли необхідні операції з цілими перемінними, що виходять за рамкидіапазону цілих чисел у поданні BASIC. Присвоїти змінній довгий цілий тип можна так:
'оголосити змінні в програмі (від В до С)
Довгого цілого типу
'Змінна BisunessTotal – довга ціла, тому що
'вона починається з літери В, яка входить у діапазон В-С BisunessTotal = 999999999
б) Явно встановити змінну за допомогою суфікса "&":
'Змінна BisunessTotal& - Довга ціла
в) Використовувати оператор опису змінної:
Списуємо змінну як довгу цілу
DIM BisunessTotal AS LONG
Звичайної точності (SINGLE) - 4 байти. Використовується для значень у діапазоні від -3.402823Е+38 до -1.40129E-45 для негативних значень та від + 1.40129Е-45 до -3.402S23E+38 для позитивних значень. Якщо тип числової змінної не заданий (оператором DEFтип, суфіксом або оператором опису типу), вона автоматично стає звичайної точності.
Присвоїти змінній тип звичайної точності можна наступним чином:
'оголосити змінні в програмі, що починаються з літери S
'Змінна SingleValue - звичайної точності, тому що вона
'починається з літери S
б) Явно поставити змінну з допомогою суфікса "!". Слід врахувати, що оскільки змінна BASIC має тип звичайної точності за умовчанням, то числова змінна, у якій вказаний суфікс "!" і ті, у яких цей суфікс відсутній, вважаються однаковими і не відрізняються мовою BASIC.
'Змінна SingleValue! – звичайної точності, вона ж
PRINT SingleValue!, SingleValue
в) Використовувати оператор опису змінної
'описуємо змінну звичайної точності
DIM SingleValue AS SINGLE
Подвійний точності (DOUBLE) - 8 байт. Використовується для значень удіапазоні від 1.797693134862316Е+308до -4.94965Е-324 для негативних значень та від 4.94965Е-324 до 1.797693134862316Е+308 для позитивних значень. Зазвичай застосовується для точних математичних обчислень, які допускають втрату значності. Присвоїти змінній тип подвійної точності можна наступним чином:
'оголошити змінні, що починають з літери D, а також
'вхідні в діапазон від М до Р, подвійний точності
'починається з літери D
б) Явно поставити змінну за допомогою суфікса "#"
'Змінна Determinant# – подвійний точності
в) Використовувати оператор опису змінної