Файл: Основы программирования на языке QBasic (Общая характеристика языка QBasic).pdf
Добавлен: 30.03.2023
Просмотров: 216
Скачиваний: 1
Таблица 2
Арифметические операции QBasic
|
Знак операции |
Название |
Пример |
|
^ |
возведение в степень |
X^Y |
|
* |
умножение |
X*Y |
|
/ |
деление |
X/Y |
|
+ |
сложение |
X+Y |
|
– |
вычитание |
X–Y |
|
\ |
деление нацело |
X\Y; 10\4 (ответ–2) |
|
MOD |
вычисление остатка от целочисленного деления |
X MOD Y 10 MOD 3 (ответ–1) |
Операции расположены в порядке уменьшения приоритета. Для изменения приоритета используются круглые скобки.
Например:
х2 – х + 2 на языке QBASIC ( х ^ 2 – х + 2 ) / (х ^ 4+5*х^2+40)
х4+5х2+40
Условные выражения
Операндами условного выражения могут быть переменные, числа, функции, строки символов. Знаками отношения в условных выражениях служат:
= – равно;
>– больше;
< – меньше;
>= – больше или равно;
<= – меньше или равно;
<>– не равно.
Условное выражение принимает булево (логическое) значение: TRUE или FALSE.
Условные выражения широко используются в операциях ветвления и в организации циклов. Например:
IF k>0 THEN …
WHILE I=0 … [7]
Логические выражения
Операндами логического выражения являются условные выражения, которые соединяются между собой знаками логических операций AND («И», конъюнкция), OR («ИЛИ», дизъюнкция), NOT (отрицание), например:
a+b>c AND d<>8
NOT(a>b)
Логическое выражение принимает булево (логическое) значение: TRUE или FALSE.
Частный случай логического выражения – условное выражение.
Так же, как и условные выражения, логические выражения применяются в операциях ветвления и в организации циклов, например:
IF d<>0 AND z$=«V» THEN…
WHILE d=0 OR k>40… [13]
Символьные выражения
Операндами символьных выражений являются строки символов. Для этих выражений определена лишь одна операция – конкатенация (соединение) строк. Знак операции – «+», а результат операции – новая строка символов. Например, «Оболочка «+»Windows» результата – «Оболочка Windows»
Встроенные функции (таблица 3) [3]
Таблица 3
Встроенные функции QBasic
|
Функция |
Назначение (математическая запись) |
Пример/результат |
|
Математические функции |
||
|
ABS(арифм_выражение) |
Модуль значения арифм_выражения(|X|) |
ABS(–3) / 3 |
|
ATN(арифм_выражение) |
арктангенс значения арифм_выражения ( arctgx ) |
|
|
COS(угол) |
Косинус аргумента (угол в радианах) ( cosx ) |
|
|
SIN(угол) |
Синус аргумента (угол в радианах) ( sinx ) |
SIN(PI/2) / 1 |
|
TAN(угол) |
Тангенс аргумента (угол в радианах) ( tgx ) |
|
|
EXP(арифм_выражение) |
Экспоненту значения арифм_выражения (ex ) |
|
|
LOG(арифм_выражение) |
Натуральный логарифм ( lnx ) |
|
|
SQR(арифм_выражение) |
Корень квадратный из значения арифм_выражения ( ÖX ) |
SQR(1.44) / 1.2 |
|
Функции преобразования числовых значений |
||
|
FIX(арифм_выражение) |
Целая часть арифм_выражения |
FIX(24.3) / 24 FIX(–24.8) / –24 |
|
INT(арифм_выражение) |
Наибольшее целое, которое меньше или Равно значению арифм_выражения |
INT(24.3) / 24 INT(–24,3) / –25 |
|
CINT(арифм_выражение) |
Округляет значение арифм_выражения по правилам арифметики |
CINT(24.3) / 24 CINT(–24,8) / –25 CINT(–24,3) / –24 |
2.2. Структура программы на языке QBasic
Язык QBasic содержит полный набор операторов структурного программирования, который включает все средства структурного программирования языка Паскаль и ряд дополнительных операторов, имеющихся в языках Модула и Си:
а) условный оператор:
if <условие> then (оператор1) [else <оператор2>]
б) условная группа операций:
if <условие> then если <условие> то
<операторы> <операторы>
end if конец если (далее – кесли)
в) альтернативные группы операций:
if <условие> then если <условие> то
<операторы 1> <операторы 1>
else иначе
<операторы 2> <операторы 2>
end if кесли
г) многоальтернативные группы операций:
if <условие 1> then если <условие 1> то
<операторы 1> <операторы 1>
else if <условие 2> then иначе <условие 2> то
<операторы 2> <операторы 2>
else if <условие 3> then иначе <условие 3> то
<операторы 3> <операторы 3>
end if кесли
д) цикл со счетчиком:
for k = 1 to n [step l] от k = 1 до n [шаг l]
<операторы> <операторы>
next k цикл
е) цикл со счетчиком:
for k = 1 to n [step l] от k = 1 до n
<операторы 1> <операторы 1>
if <условие 2> then exit for при <условие> выход
<операторы 2> <операторы 2>
next k кцикл
ж) цикл с предусловием:
do while <условие> цикл пока<условие>
<операторы> <операторы>
loop кцикл
з) цикл с постусловием:
do цикл
<операторы> <операторы>
loop until <условие> кцикл до <условие>
и) цикл с выходами:
do цикл
<операторы 1> <операторы 1>
if <> then exit do при <условие> выход
<операторы 2> <операторы 2>
loop кцикл [1]
Язык QBasic в отличие от традиционных версий Бейсика имеет развитый аппарат описания подпрограмм и функций с параметрами, что позволяет создавать в нем сложные модульные программы.
Основная часть программы имеет следующий вид:
' <название программы>
<операторы>
еnd [12]
Подпрограммы в языке QBasic могут быть двух типов – без параметров и с параметрами. Аппарат подпрограмм без параметров построен на следующих правилах вызова подпрограмм и их описания:
а) вызов подпрограмм без параметров:
gosub <имя>
б) описание подпрограммы без параметров:
<имя>:
<операторы>
return,
где <имя> – идентификатор длиной до 40 символов [1].
Аппарат подпрограмм с параметрами в языке QBasic строится:
- на описании вызова подпрограмм с параметрами;
- операторов вызова подпрограмм с фактическими параметрами;
- и на описании собственно подпрограмм с [формальными] параметрами.
Использование процедур с параметрами основано на применении трех операторов:
а) вызов процедуры с параметрами:
сcall <имя> (<арг1 >,<арг2>,<арг3>)
б) описание подпрограммы с параметрами:
sub <имя> (<пар1 >, <пар2>, <пар3>)
в) оператор конца описания процедуры:
end sub,
где <пар1>,...,<пар3> – имена параметров с указанием типов их значений, а
<арг1>,...,<арг3> – фактические аргументы: конкретные значения, выражения или имена переменных, используемых в программе [7].
Описание процедур с параметрами в программе должно иметь следующий вид:
‘<название процедуры>
sub <имя> (<пар1 >, <пар2>, <пар3>)
<оператор 1>
<оператор N>
end sub [7]
При вызове подпрограмм обязательно совпадение типов значений формальных параметров и фактических аргументов обращений к подпрограммам. Контроль за соответствием фактических аргументов и формальных параметров система QBasic проводит автоматически сравнением этих описаний.
Использование подпрограмм–функций с параметрами в языке QBasic основано на применении следующих трех операторов:
а) обращение к подпрограмме–функции с параметрами:
х = <имя>(<арг1 >,<арг2>)
б) описание подпрограммы–функции с параметрами:
function <имя> (<пар1 >,<пар2>)
в) оператор конца описания процедуры–функции:
еnd function
Здесь
<имя> – это подпрограммы–функции длиной до 40 символов,
<пар1>, <пар2>, <пар3> – имена параметров, а
<арг1>, <арг2, <арг3> – аргументы вызова подпрограммы–функции: конкретные значения, выражения или имена переменных [14].
Число и тип аргументов в обращении к функции должно строго совпадать с числом и типом соответствующих параметров в ее описании.
В целом описание подпрограммы–функции должно иметь следующий вид:
function <имя> (<пар1 >,<пар2>)
<операторы>
<имя> = <выражение>
епd function
Последним выполняемым оператором в процедуре–функции обязательно должно быть присваивание вида
<имя> = <выражение>,
где <имя> – это имя подпрограммы–функции, а <выражение> должно давать значение, которое станет значением функции.
Контроль за соответствием аргументов и параметров в обращениях подпрограммам–функциям система QBasic также проводит автоматически. Для этого QBasic автоматически вводит в главный модуль программы описания подпрограмм с указанием типа значения функции и типа параметров в форме следующих операторов:
declare function <имя> (<пар1 >,<пар2>)
где <пар1>,<пар2> – имена параметров с указанием типа значений [14].
Рассмотрим примеры программ на языке QBasic и на языке Basic в традиционном и структурном вариантах:
Традиционный Basic: Язык QBasic:
10 ‘угадай–ка ' угадай–ка
20 print «угадай число» print «угадай число»
30 «от 0 до 100» рrint «от 0 до 100»
40 randomize (2560) randomize (1024)
50 z = int(rnd * 100) z = int(rnd * 100)
60 ' цикл dо
70 input «число=«, х input «число=«, х
80 if х<z then print «мало» if х<z then print «мало»
90 if х>z then print «много» if х>z then print «много»
100 if х<>z goto 60 lоор until х = z
110 рrint «молодец, умница» рrint «молодец, умница»
120 еnd еnd [14]
Оба примера программ записаны на языке QBasic и могут выполняться на IВМ РС в системе программирования QВаsiс. В то же время вторая версия программы более ясна из–за структурной формы записи и вполне похожа на программы на языке программирования Паскаль, но существенно короче из–за отсутствия описания переменных.
ЗАКЛЮЧЕНИЕ
В ходе выполнения работы была достигнута цель работы – рассмотрены основы программирования на языке QBasic. Для достижения данной цели были выполнены следующие задачи:
- рассмотрена история создания и развития языков Basic, QBasic;
- описан язык QBasic;
- охарактеризованы основные выражения языка QBasic;
- описана структура программы на языке QBasic.
Определено, что QBasic является одним из наиболее распространенных языков программирования, которые используются в учебных целях. Он является достаточно простым в освоении и отлично подходит для знакомства со структурным программированием, так как одной из его отличительных особенностей является необязательность описания всех переменных, а также наличие очень гибких средств отладки программ. QBasic стал объединением лучших свойств различных модификаций Бейсика, а также наиболее удобных и удачных средств структурного и модульного программирования.
Кроме того, при работе над исследованием были актуализированы ранее полученные, а также получены новые знания в области структурного и модульного программирования, о семействе языков Бейсик, а также конкретно о языке и среде программирования QBasic.
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
- Гарнаев А. Visual Basic .NET. Разработка приложений / А. Гарнаев. БХВ–Петербург – М., 2017.
- Гурин,Н. Использование Visual Basic, VBA и VBScript / Н. Гурин. Palmarium Academic Publishing – М., 2016.
- Дубовцев А. Microsoft .NET. Наиболее полное руководство (+ CD–ROM) / А. Дубовцев. БХВ–Петербург – М., 2017.
- Дукин А. Самоучитель Visual Basic 2010 (+ DVD–ROM) / А. Дукин, А. Пожидаев. БХВ–Петербург – М., 2015.
- Жарков В. А. Основы программирования игр и приложений на Visual Basic 2008 и DirectX 10 для карманных компьютеров и коммуникаторов (+ CD–ROM) / В. А. Жарков. Пресс – М., 2016.
- Зиборов В. Visual Basic 2012 на примерах / В. Зиборов. БХВ–Петербург – М., 2015.
- Карпов Р. Г. Самоучитель Visual Basic .NET / Р. Г. Карпов. Книга по Требованию – М., 2018.
- Кетков Ю. Л. Диалог на языке бейсик для мини– и микро–ЭВМ / Ю. Л. Кетков. Наука – М., 2017.
- Маркелова Л. Н. Эксплуатация программоуправляемой вычислительной машины «Искра 226» / Л. Н. Маркелова. Машиностроение – М., 2017.
- Патрик Т. Visual Basic 2015. Рецепты программирования / Т. Патрик. БХВ–Петербург – М., 2016.
- Пахомов Б. C/C++ и MS Visual C++ 2012 для начинающих / Б. Пахомов. БХВ–Петербург – М., 2015.
- Трусов М. А. Visual Basic .NET. Практическое руководство для начинающего программиста / М. А. Трусов. НТ Пресс – М., 2015.
- Хомоненко А. Самоучитель Delphi .NET / А. Хомоненко. БХВ–Петербург – М., 2017.
- Шевякова Д. А. Самоучитель Visual Basic 2005 / Д. А. Шевякова. БХВ–Петербург – М., 2016.
- Якушева Н. М. Введение в программирование на языке Visual Basic. Net / Н. М. Якушева. Финансы и статистика – М., 2015.
- Фримен А. ASP.NET 4.5 с примерами на C# 5.0 для профессионалов / А. Фримен. Вильямс – М., 2016.
- Гросс К. C# 2008 и платформа .NET 3.5 Framework / К. Гросс. Вильямс – М., 2016.