Язык программирования QBASIC. Конфигурация и элементы языка QBASIC

Появление версии Visual Basic. Определяемые функции и подпрограммы. Передача имени файла с кодом программы интерпретатору в командной строке. Описание синтаксиса языковых конструкций. Арифметические и строковые выражения. Стандартные типы данных в QBASIC.

Рубрика Программирование, компьютеры и кибернетика
Вид контрольная работа
Язык русский
Дата добавления 18.05.2013
Размер файла 22,9 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

ЯЗЫК ПРОГРАММИРОВАНИЯ QBASIC. КОНФИГУРАЦИЯ И ЭЛЕМЕНТЫ ЯЗЫКА QBASIC

Язык задумывался для обучения, поэтому его конструкции максимально просты. Как и в других языках программирования, ключевые слова взяты из английского языка. Основных типов данных два: строки и числа. С появлением версии Visual Basic, а также различных его модификаций (таких как VBA), в языке появились многие другие типы данных и дополнения, типичные для современных языков программирования (например, такие, как объектная модель). Объявление переменных не требует специальной секции (в отличие, например, от Паскаля). Объявление переменной -- это первое её использование.

Ранние версии Бейсика (такие как BASICA, GW-BASIC) существенно отличаются от современных диалектов и сегодня практически не используются.

Внешний вид программ на ранних версиях Бейсика во многом определялся тем, что он предназначался для среды программирования со строчным редактором текста. В таком редакторе пользователь не имел возможности отображать весь текст на экране (в окне), перемещаться по нему в любых направлениях с помощью клавиатуры и/или мыши. В строчных редакторах пользователь для изменения строки текста должен дать команду изменения строки с заданным номером, затем ввести новый текст указанной строки. Для вставки новой строки нужно дать команду вставки, опять-таки указав номер. Вводимые строки отображаются на экране последовательно (независимо от номеров). Чтобы увидеть сделанные изменения, применяется команда вывода текста, которая выводит строки в правильном порядке (по возрастанию номеров).

Всё это отразилось в Бейсике. Каждая строка начиналась с номера. При вводе в редактор строка оказывалась в исходном тексте программы на позиции, соответствующей её номеру. Для вставки новой строки нужно было дописать строку с номером, находящимся в диапазоне между номерами двух других строк. «Раздвинуть» строки было невозможно, если требовалось вставить новую строку между строками с соседними номерами, приходилось повторно вводить эти строки с другими номерами, чтобы обеспечить разрыв в нумерации (либо применять специальную команду RENUM, которая перенумеровывала все уже введённые строки с постоянным шагом, синхронно изменяя все команды переходов). Для упрощения оперативного редактирования программы сложилась практика нумеровать строки с шагом 10 -- это позволяло практически во всех случаях вставлять новые строки без изменения номеров ранее введённых. Например, чтобы добавить третью строку между строками 20 и 30, нужно было написать строку с номером 25. Типичная строка из программы на Бейсике выглядела так:

10 PRINT "Hello, World!"

Изменять вручную номера уже имеющихся строк было небезопасно, так как номера выполняли роль меток для оператора GOTO. Ранее в Бейсике были допустимы только числовые метки для этого оператора, и наличие в каждой строке уникального номера делало возможным безусловный переход к любой из них. Числовые метки и активное использование GOTO было неизбежным при программировании на Бейсике, что способствовало плохой структуре кода и в больших проектах приводило к запутыванию самих авторов. Был даже придуман шуточный термин «макаронное программирование» (spagetti code), потому что логика программы с частыми переходами GOTO напоминает тарелку со спагетти.

Признаком конца оператора служил конец строки. Чтобы на одной строке разместить несколько операторов, нужно поставить между ними двоеточие (это разрешалось не во всех реализациях языка). Имена переменных в большинстве диалектов могли состоять только из одной буквы, после которой можно было добавить одну цифру, что так же не способствовало улучшению понимания кода. Для создания переменной строкового типа нужно было после имени указать знак доллара ($). Переменная без этого знака являлась числовой (с плавающей точкой). Было ещё несколько модификаторов, относящихся к числовому типу: знак процента (%) -- целый тип, восклицательный знак (!) -- обычная точность, октоторп (#) -- двойная точность (для данных с плавающей точкой, то есть дробей). Числовые модификаторы применялись не во всех версиях.

Выражения сходны с большинством других процедурных языков программирования, но в первых вариантах Бейсика их набор был довольно бедным.

Условный оператор (IF..THEN) изначально имел только одну ветвь -- ветвь ELSE в нём отсутствовала и моделировалась с помощью безусловного перехода. Так, в нижеследующей программе выполняется элементарная операция -- ввод числа и вывод сообщения «Отрицательное число» или «Положительное число или нуль» в зависимости от его значения:

10 INPUT I

20 IF I >= 0 THEN PRINT "Positive number or null" : GOTO 40

30 PRINT "Negative number"

40 END

Имелся оператор перехода по вычисляемой метке ON..GOTO (унаследованный от аналогичной конструкции Фортрана) -- в нём после ON указывалось числовое выражение, а после GOTO -- список номеров строк. Переход происходил на строку, номер которой в списке соответствовал значению выражения. Присутствуют также циклы (цикл со счётчиком FOR и цикл с предусловием WHILE).

Использование функций, определяемых пользователем (участков кода, для многократного использования), было возможно двумя способами: определяемые функции и подпрограммы.

Подпрограммы не являлись аналогом функций таких языков, как Си или Паскаль, так как не имели имён и не могли принимать и/или возвращать параметры. Параметры и результаты передавались через глобальные переменные (все переменные в ранних версиях Бейсика были глобальными). Подпрограммы писались обычно в конце модуля, с нумерацией заведомо большей, чем планируемое количество строк (к примеру, нумерация блока подпрограмм могла начинаться с 5000, даже если в программе была пара сотен строк). Подпрограммы не имели заголовков и имён, и ничем не отличались от любого другого участка кода. Вызов подпрограммы осуществлялся с помощью ключевого слова GOSUB <метка>. Это практически клон GOTO, за исключением одного: возврат в точку вызова происходил автоматически, при достижении в подпрограмме ключевого слова RETURN. GOSUB, как и GOTO, только способствовали плохой структуре кода, так как отследить выполнение программы, содержащей большое количество безусловных переходов и подпрограмм, было сложной задачей.

Отсутствие возможности давать подпрограммам имена (и передавать по ним управление), невозможность передачи параметров, отсутствие локальных переменных, использование только числовых меток в больших проектах вызывало путаницу в коде и очень затрудняло отладку.

В некоторых диалектах Бейсика имелась возможность загрузить файл с кодом непосредственно при выполнении программы (текущий при этом выгружался) оператором CHAIN. Это была одна из самых полезных возможностей языка, так как она позволяла разбить большой проект на модули, вызывая их в порядке необходимости.

Редактора кода в ранних версиях, как такового, не было. При запуске интерпретатора Бейсика запускался диалоговый режим ввода команд. Для работы в этом режиме были предусмотрены специальные команды, которые не являлись операторами самого языка (их нельзя было включить в код программы). Это команды по управлению средой ввода, такие как: LIST <диапазон строк> -- вывод листинга программы на экран (LLIST -- на принтер), SAVE <имя файла> -- сохранение текста программы в файл, LOAD <имя файла> -- загрузка кода в память и т. д. Запуск программы производился вводом команды RUN. В большинстве интерпретаторов Бейсика в нижней части экрана была строка с этими (и другими) командами.

Если команда начиналась с номера строки (метки), она запоминалась в памяти как часть вводимой программы. Если строка оператора вводилась без номера, она выполнялась сразу же, после нажатия клавиши ? Enter . В качестве первых уроков обучающимся на Бейсике предлагалось поэкспериментировать с таким режимом, когда результат выполнения выражения был виден сразу. Например, если, находясь в режиме диалога, ввести строку PRINT 2+2 и нажать ? Enter , на экране отобразится результат сложения.

Для редактирования уже введённой строки в большинстве реализаций нужно было перепечатать её полностью. Удаление строк производилось командой DELETE <диапазон строк>. Команда RENUM -- позволяла восстановить шаг 10 в нумерации строк. Часто возникала ситуация, что штатного шага 10 для будущих строк не хватало (так как такой шаг позволяет добавить лишь 9 строк между требуемыми) и тогда команда RENUM была необходимой (все строки перенумеровывались с шагом 10, и соответствующим образом корректировались строки с GOTO под новую нумерацию строк).

Для выполнения программы на Бейсике использовалась передача имени файла с кодом программы интерпретатору в командной строке. В этом случае, после загрузки кода команда RUN (начать выполнение программы) вызывалась автоматически.

Фрагмент типичной программы на Бейсике:

10 CLS 'Очистка экрана

20 PRINT "Добро пожаловать!" 'Заголовок в первой строке

30 'Цикл, выводящий линию под заголовком, на всю ширину экрана

40 FOR I=1 TO 80

50 PRINT "=";

60 NEXT I

65 'Ввод символьных данных от пользователя (комментарий добавлен после ввода нижних строк)

70 INPUT "Имя: ",N$

80 INPUT "Фамилия: ",S$

90 INPUT "Отчество: ",T$

95 'Вырезаем копию первых символов из имени и отчества

100 N2$=LEFT$(N$,1)

110 T2$=LEFT$(T$,1)

120 'Выводим результат

130 PRINT "Ваше имя кратко: ";S$;" ";N2$;". ";T2$;"."

140 INPUT "Повторить программу? (Y/N) ",U$

150 IF U$="Y" THEN GOTO 10

160 END

Точка с запятой выполняет функцию подавления перехода на новую строку после оператора PRINT. Ключевое слово END означает завершение программы. Оно необязательно, в его отсутствие программа завершалась после исполнения последнего оператора, но было полезно в случаях, когда имелась секция подпрограмм, либо программа имела несколько возможных точек завершения (в последнем случае либо в каждой такой точке ставили END, либо END был один, а на него делались переходы в других местах).

Алгоритм решения практически любой задачи можно трансформировать в компьютерную программу. Такую программу в общем случае можно рассматривать как последовательность некоторых слов и специальных символов. Слова и символы образуют более сложные конструкции, которые должны формироваться по определенным правилам. В отличие от естественных, в языках программирования эти правила должны соблюдаться более строго: даже забытая запятая может привести к тому, что программа либо будет работать не корректно, либо вовсе не сможет выполняться. Набор правил для написания программ называется синтаксисом языка программирования.

СИНТАКСИЧЕСКИЕ СОГЛАШЕНИЯ

Имеются различные способы описания синтаксиса языковых конструкций. Для описания элементов языка QBASIC будет использоваться та же форма описания синтаксиса, что и в Help-системе QBASIC. Следующая таблица дает представление о применяемых обозначениях.

basic программа командный строка

Элемент

Значение

Ключевое слово

Ключевые слова QBASIC всегда записываются большими (заглавными) буквами

Метка-заполнитель

Выражение

[ ]

Необязательный параметр

{А1|А2}

Выбор одного из альтернативных значений

...

Три точки, следующие одна за другой, обозначают, что предшествующий элемент может повторяться

Ключевое слово1
.Ключевое слово2

Три точки одна под другой обозначают несущественный в данном контексте фрагмент программы.

КОММЕНТАРИИ

Включенные в программу комментарии QBASIC просто игнорирует. Использование комментариев позволяет включать в программу любой текст, не нарушая ее семантики. Комментарии используются для объяснения тех или иных действий в программе. Если Вы вернетесь к своей программе через несколько недель (месяцев или даже лет), они помогут Вам быстрее в ней освоится. В QBASIC начало комментария обозначается знаком ' (одинарная кавычка). Остаток строки нельзя переносить в начало следующей строки, содержащей оператор.

Пример:

'Это комментарий

'PRINT без дополнений выводит на экран пустую строку

PRINT

PRINT 'За каждым оператором следует комментарий

PRINT

'Вывод пустой строки

PRINT

Примечание: Вся последняя строка интерпретируется QBASIC как комментарий, т.е. включенный в эту строку оператор PRINT не выполняется. Теперь перейдем к рассмотрению арифметических выражений.

АРИФМЕТИЧЕСКИЕ ВЫРАЖЕНИЯ

Арифметическое выражение -- это комбинация чисел, арифметических констант и некоторых функций, которые связаны между собой знаками арифметических операций. Числа -- простейшая форма арифметических выражений. Число состоит из цифр "О...9" и специальных знаков "- + . D". Обратите внимание, что вместо запятой ",", отделяющей целую часть от дробной, используется точка ".".

Примеры:

4.23

вместо

4,23

9.23D+78

вместо

9,23*1078

-2.77

вместо

-2,77

-1.34D-23

вместо

-1,34*10-23

Сложные арифметические выражения можно получить, если связать в программе числа друг с другом, например, для вычислений. Символы, с помощью которых числа вступают друг с другом в некоторые отношения, называют знаками операций. Эти знаки имеют следующие значения:

Знак

Значение

*

умножение

/

деление

+

сложение

-

вычитание

(

открывающая скобка

)

закрывающая скобка

^

возведение в степень

Примечание: В QBASIC операции "*", "/", "^" имеют больший риоритет, чем операции "+","-". Впрочем на последовательность вычислений можно влиять, применяя в нужных местах круглые скобки.

Новое представление оператора PRINT дает возможность работать с арифметическими выражениями.

PRINT [Выражение]

Выражение - Арифметическое выражение. Значение выражения выводится на экран. Так как в операторе PRINT выражение -- необязательный параметр, то c его помощью можно выводить на экран пустую строку.

Пример:

'Пример программы для применения оператора PRINT

'Для начала выведем простые числа

PRINT 12

PRINT 23.34

PRINT -345.454

PRINT 'Вывод пустых строк

PRINT

PRINT

'Вывод арифметических выражений

PRINT 12-4

PRINT +6+56-6

PRINT 3*4-4*(4+1)

PRINT 3+2^3

'Конец программы

СТРОКОВЫЕ ВЫРАЖЕНИЯ

Строковое выражение -- это комбинация текстов, текстовых констант, текстовых переменных и определенных функций, которые связаны операцией "+". Простейшая строка -- это текст, заключенный в кавычки ("), состоящий из произвольных комбинаций букв, цифр и специальных знаков. Тексты используются, например, чтобы выводить на экран заглавия, комментарии или примечания.

Примеры:

"Задайте высоту"

"2345,34"

"Программа окончена? (Y/N)"

"Эта программа вычисляет объем бруса"

Примечание: Так как кавычка является ограничивающим текст знаком, то его нельзя применять в качестве элемента самого текста (например, "Введите "Y/N"). Чтобы включить кавычку в текст, используйте функцию CHR$

Объединяя отдельные тексты оператором "+", можно получать более длинные строковые выражения. Эта операция называется конкатенацией.

Пример:

"Сегодня" + " хорошая" + " погода", в результате получим "Сегодня хорошая погода".

Теперь расширим синтаксическое описание оператора PRINT, чтобы иметь возможность работать со строковыми выражениями.

PRINT [Выражение]

Выражение - Числовое или строковое выражение. Значение выражения выводится на экран.

Пример:

Вывод выражений с помощью оператора PRINT

PRINT "Вывод чисел:"

PRINT 23.4

PRINT-10.2

PRINT

PRINT

PRINT "Вычислим (10+4) - 4*(2-3'^2)"

PRINT (10 + 4)-4* (2-3^2)

PRINT

PRINT "В заключение объединим отдельные"

PRINT

PRINT "слова в текст:"

PRINT "Сегодня" + " " + "хорошая" + " погода"

'Конец программы

ТИПЫ ДАННЫХ

Как правило, любой программе необходимы данные, которые каким-то образом обрабатываются программой. Эти данные могут быть совершенно различными. Так, в простейшем случае различают два типа данных: числовые и строковые. В QBASIC разные типы данных должны иметь четкие различия и признаки.

Стандартные типы данных.

В QBASIC можно объявить следующие стандартные типы данных:

Тип

Символ

Содержание

INTEGER

%

целые числа в интервале от -32 768 до +32 768

LONG

&

целые числа в интервале от -2 147483648 до +2 147483648

SINGLE

!

числа с плавающей запятой в интервале от ±8,43*10-37 до ± 3,З7*1038

DOUBLE

#

числа с плавающей запятой в интервале от ±4,19*10-307 до ±1,67*10308

STRING

$

любые тексты с максимальной длиной 32 767 знаков

Примечание: Обработка данных типа INTEGER производится значительно быстрее, чем данных типа DOUBLE.

Размещено на Allbest.ru

...

Подобные документы

  • Изучение языка программирования QBasic с позиций структурного подхода с целью выработки правильных навыков составления программ. Предварительный анализ сложной задачи с целью разбития её на отдельные простые части. Детализация и составление подпрограмм.

    учебное пособие [11,7 K], добавлен 11.10.2011

  • Выполнение арифметических операций, этапы решения задач с помощью ЭВМ - постановка задачи, составление алгоритма решения, программная реализация алгоритма в среде Qbasic. Решение систем линейных уравнений по формулам Крамера. Графический режим Qbasic.

    курсовая работа [101,7 K], добавлен 29.09.2009

  • История создания и применение языка Basic. Стандартные математические и строковые функции. Операции и выражения языка. Блоки данных и подпрограммы. Операторы управления, цикла, ввода-вывода и преобразования информации. Константы, переменные, массивы.

    контрольная работа [2,3 M], добавлен 04.05.2015

  • Этапы создания программы. Транслятор как средство для преобразования текстов из одного языка в другой. Понятие языков программирования, основные моменты их истории. Некоторые операторы языка QBasic. Понятие переменной, ее наглядное представление.

    презентация [22,9 K], добавлен 16.06.2011

  • Особенности настройки панели быстрого запуска в Windows. Принцип работы оптических накопителей информации. Изменение параметров настроек компьютера. Запись арифметических выражений на языке программирования Qbasic. Функции командного процессора "FAR".

    контрольная работа [7,0 M], добавлен 06.08.2009

  • Язык программирования Visual Basic: краткая история возникновения, значение и общая характеристика. Изучение основных свойств Visual Basic, синтаксис языка. Обзор ключевых операторов Visual Basic, пользовательские процедуры и функции данного языка.

    контрольная работа [36,4 K], добавлен 23.07.2014

  • Разработка программного продукта с помощью языка программирования Visual Basic. Описание интерфейса пользователя и возможностей программы. Исходный код основных модулей. Программа, демонстрирующая основные возможности диаграмм и среды Visual Basic.

    контрольная работа [989,9 K], добавлен 29.03.2011

  • Выбор языка программирования и его обоснование. Определение системных требований. Схема алгоритма и программа на языке Qbasic. Разработка руководства пользователя. Способы конструирования программ. Особенности и принципы динамического программирования.

    курсовая работа [398,8 K], добавлен 21.01.2014

  • Основные этапы решения задач на ЭВМ. Элементы управления и пользовательская форма VBA. Ввод и вывод информации. Открытие и закрытие файла. Операторы цикла и подпрограммы. Реализация разветвляющихся алгоритмов в VBA. Типы данных, переменные и константы.

    учебное пособие [1,4 M], добавлен 21.05.2009

  • Понятие математического программирования. Класс как тип структуры, позволяющий включать в описание типа не только элементы данных, но и функции. Рассмотрение основных особенности языка программирования C++. Характеристика среды MS Visual Studio 2008.

    контрольная работа [318,0 K], добавлен 13.01.2013

  • Исследование теоретических аспектов разработки программы посредством использования Visual Basic. Анализ достоинств и недостатков данного языка программирования. Изучение особенностей создания интерфейса приложения. Основные этапы реализации программы.

    практическая работа [460,6 K], добавлен 22.01.2013

  • Описание Visual Basic Scripting Edition как скриптового языка программирования, интерпретируемого компонентом Windows Script Host. Правила работы языка и применение VBS-сценариев для обработки данных, управления системой, работы с учетными записями.

    доклад [31,3 K], добавлен 11.05.2012

  • Функции и основная роль коммерческого банка. Особенности кредитных и депозитных операций. Описание среды программирования и сущность Visual Basic for Applications (VBA). Схема алгоритма программы, процедура сохранения файла и выхода из программы.

    курсовая работа [1,9 M], добавлен 04.04.2012

  • Структура и назначение программного кода программы по созданию 3D-графики средствами языка программирования Visual Basic. Элементы управления "Окно формы" и "Таймер", выполняемые ими функции и основные свойства, значение в работе программного кода.

    лабораторная работа [362,4 K], добавлен 06.07.2009

  • Рождение и развитие Basic. Краткое описание Visual Basic for Applications. Новые возможности Visual Basic 5.0. Пример взаимодействия Excel и Visual Basic. Программирование табличных функций. Встраивание, применение функций. Формы, средства управления OLE.

    реферат [20,7 K], добавлен 11.03.2010

  • Многообразие мини-игр и возможности языка Visual basic 6.0 для их реализации. Понятие мини-игр и их классификация. Элементы управления мини-игры "Реверси". Разработка прикладной программы. Создание игрового интерфейса. Написание программного кода.

    курсовая работа [1,5 M], добавлен 03.06.2014

  • Принципы визуального программирования. Создание программы, генерирующей звук через определенные промежутки времени. Visual Basic как средство разработки прототипов программы, для разработки приложений баз данных и компонентного способа создания программ.

    лабораторная работа [1,1 M], добавлен 10.12.2014

  • Рабочая среда Visual Basic (VB) и ее основные компоненты. Ввод и вывод данных в VB. Объявление переменных и констант в программе. Создание и работа с процедурами и функциями, их виды. Организация ветвления в VB. Использование циклов в программировании.

    практическая работа [502,5 K], добавлен 26.10.2013

  • Назначение и основные функции Ехсе1. Причины возникновения ошибок и способы их решения в Ехсе1. Язык программирования Visual Basic for Applications (VBA): общая характеристика языка. Основные понятия информационной безопасности, способы ее нарушения.

    шпаргалка [201,2 K], добавлен 26.02.2010

  • Классификация систем программирования. Специализированные редакторы, программы-компиляторы и исполнимый код. Разновидности Visual Basic. Версии Паскаля и его использование. Приложения на языке Java. Разработка программы для вычисления предельной ошибки.

    курсовая работа [34,0 K], добавлен 28.12.2009

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.