Автор Анна Евкова
Преподаватель который помогает студентам и школьникам в учёбе.

Основы программирования на языке QBasic (Этапы решения задач с помощью ЭВМ)

Содержание:

Введение

Как известно, для того, чтобы компьютер мог выполнять нужные нам задачи, им должна управлять программа. Основная особенность электронно-вычислительной машины (ЭВМ) от других устройств заключается в том, что им управляет программа. Компьютерная программа – это набор инструкций, которые указывают ЭВМ последовательность действий по решению определенной поставленной перед ним задачи.

Для того, чтобы компьютер "понял" указания программиста, он должен "общаться" с программистом на общем языке, которую называют языком программирования.

На сегодняшний день в мире существуют сотни различных языков программирования, которые в общем можно разделить на языки программирования низкого (Asembler) и высокого уровня (Pascal, Basic, Delphi, C и т.д.). Кроме этого языка программирования можно разделить на функциональные, структурные, логические, процедурные, объектно-ориентированные.

Целью данной курсовой работы является исследование снов программирования на языке QBasic.

Объект исследования – основы алгоритмизации и программирования.

Предмет исследования – язык программирования QBasic.

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

1. Этапы решения задач с помощью ЭВМ

Со времени создания первой вычислительной машины прошло более шести десятилетий. За это время несколько раз менялась элементная база ЭВМ, уменьшились размеры и потребляемые мощности, увеличилась скорость вычислений, стало гораздо удобнее с ними работать. Внедрение и широкое использование средств вычислительной техники является одним из главных факторов ускорения научно-технического прогресса в любой стране мира. Стремительно возрастает роль ЭВМ во всех областях человеческой деятельности. Без использования быстродействующих ЭВМ немыслимо решение задач интенсификации экономического развития ведущих отраслей народного хозяйства [1].

Любая задача, прежде чем она может быть решена на ЭВМ, проходит подготовительный путь, который состоит из нескольких этапов.

Отдельные этапы решения задачи на ЭВМ взаимосвязаны: следующие этапы зависят от реализации предыдущих, после выполнения текущего этапа может потребоваться возврат к предыдущим этапам для их уточнения и поиска новых решений. [5]

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

Второй этап – математическая формулировка задачи (математическое моделирование) включает в себя запись условий задачи с помощью формул, уравнений, неравенств, графиков, таблиц и т. Составить математическую модель задачи – это определить связь исходных данных с входными с помощью математических соотношений с учетом существующих ограничений на входные, промежуточные и выходные данные, единицы их измерения, диапазон изменения и тому подобное [3].

Математическая формулировка задачи завершается выбором метода ее решения.

Третий этап – составление алгоритма решения задачи, согласно выбранному методу решения.

Под алгоритмом понимают систему точно определенных действий и правил их выполнения, определяющих последовательность действий над некоторыми объектами, которые через конечное число шагов приводят нас от входных данных до получения результата решения задачи.

Четвертый этап – программирование, то есть запись составленного алгоритма на языке программирования. [3]

В современном программировании существует несколько подходов к программированию: структурное (детальное), модульное и объектно-ориентированное программирование.

При структурном подходе, если алгоритм решения задачи составлен верно, программирование задачи одной из многих языков программирования трудностей не вызывает.

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

Модульное программирование использует методологию, ориентированную на обработку. Его основные признаки:

- Каждый модуль реализует одну и только одну независимую функцию;

- Каждый модуль имеет единственную точку ввода-вывода;

- Размер модуля нужно минимизировать;

- Каждый модуль может быть записан на языке программирования разработчиком или программистом и может быть протестирован отдельно;

- Вся программа состоит из протестированных модулей и поэтому легко проверяется. [4]

Методологию, ориентированную на обработку, используют для таких методов разработки программ, как функциональные декомпозиции, проектирования потока данных и структур и тому подобное.

Методологии разработки программ, ориентированные на данные, относят к объектно-ориентированному программированию (ООП) и проектированию концептуальных баз данных.

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

Используя понятийный арсенал средств ООП, проектант может создавать собственные абстрактные объекты, а затем отобразить проблемную область на эти абстракции вместо традиционного отображения предметной области в определенные управляющей структуры и структуры данных языка реализации. [5]

Пятый этап – тестирование и отладка программы – это проверка правильности работы программы на компьютере и исправления найденных в ней ошибок.

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

Шестой этап – вычисление (решение задачи) на компьютере составленной и отлаженной программой и анализ полученных результатов. Вычисления выполняются для некоторого набора реальных входных данных, а анализ полученных результатов может служить подтверждением (или отрицанием) правомерности всех предыдущих этапов подготовки задачи к решению. [8]

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

2. Основные принципы работы в программной среде QBASIC

2.1. История создания языка Basic

Язык Бейсик (Basic) разработали сотрудники Дартмутского колледжа (США) Томасом Курцем и Джоном Кемени в 1964 году с целью обучения студентов. Широкое признание он получил в конце 60-х в начале 70-х годов благодаря применению в малых компьютерах фирм General Electric, Hewlett-Packard, Digital Equipment Corporation и др. [2]

Название языка образовано из первых букв английских слов Beginner's All-purpose Sumbolic Instruction Code. В переводе это означает: «язык программирования для начинающих". Английское слово Basic переводится как элементарный, базовый (например, набор знаний). Первая версия языка насчитывала 14 служебных слов. [2]

Известны десятки версий языка: Дартмутская, Бейсик-Плюс, Бейсик-Агат, Бейсик-Корвет, GW-Бейсик, Турбо Бейсик (Turbo Basic), Быстрый Бейсик (Quick Basic), Power Basic и другие. Все версии имеют много общих элементов, ознакомившись с которыми, можно работать практически с любой версией, например, с GW-Бейсиком или Quick Бейсиком.

Возможности новейших версий (компиляторов, позволяющих создавать exe-файлы) Quick Бейсика и Турбо Бейсика настолько велики, что во многих случаях они успешно конкурируют с языком Паскаль. [7]

2.2. Начало работы в среде QBASIC

Бейсик-система - это реализация конкретной версии языка (интерпретатор или компилятор языка) для определенного типа компьютеров.

Интерпретатор языка Бейсик работает под управлением операционной системы. Чтобы начать диалог с интерпретатором, необходимо загрузить сначала операционную систему, а затем интерпретатор Бейсик [2].

После загрузки операционной системы и вывода на экран монитора подсказки, что означает, что система ожидает ввода команд, запускается файл GWBASIC. EXE, после чего на экране появляется подсказка ОК, означающее готовность интерпретатора к работе. В последней строке экрана появляется перечень функций, связанных с функциональными клавишами F1-F10.

Начальное рабочее окно языка QUICK-BASIC показано на рис. 1. [10]

Рис. 1. Первое окно при запуске QUICK-BASIC.

Экран QUICK-BASIC делится на две основные частые - окно редактирования и окно непосредственных вычислений. При запуске QUICK-BASIC размещает курсор в окне редактирования. Это позволяет:

- Ввести текст новой программы (функция Новый в режиме файла)

- Скачать в это окно текст существующей программы (функция Открыть в режиме файла)

- Редактировать текст программы (режим Редактирование)

- Запустить программу на выполнение (режим Запуск)

- Наладить программу (режим Отладка)

- Сохранить программу на диске (функции Сохранить и Сохранить как режима Файл) [2].

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

При входе в любой из режимов главного меню под его заголовком на экране появляется меню первого уровня, которое содержит определенное количество строк - функций. Выбор той или иной функции осуществляется с помощью клавиш вертикального перемещения курсора или путем набора символа, который отмечается в названии каждой функции особым цветом. Функция, которая была выбрана, подсвечивается прямоугольником, цвет фона которого отличается от других строк меню [9].

В стартовом рабочем окне можно нажать клавишу [Enter] или [Esc]. При нажатии клавиши [Enter] появляется руководство пользователя (рис. 2) [2].

Рис. 2. Меню руководства пользователя

Полно экранный режим включается комбинацией Ctrl + F10. Повторное нажатие восстанавливает первоначальные размеры окна.

Выход из режима непосредственных вычислений осуществляется повторным нажатием клавиши F6.

Для большинства функций должна быть задана дополнительная информация, которая запрашивается у пользователя в диалоговом режиме. С этой целью в центре экрана появляется меню второго уровня, вход в которое осуществляется автоматически или после нажатия клавиши [Tab]. В первом случае в одной из выделенных прямоугольных областей появляется мерцающий курсор и пользователь должен набрать значение необходимого параметра. Во втором случае меню содержит несколько процедур, которые заключены в прямоугольники. После нажатия клавиши [Tab] один из прямоугольников становится активным. Переход к следующей процедуре заставки происходит после очередного нажатия клавиши [Tab]. Обход процедур в обратном порядке осуществляется одновременным нажатием клавиш [Shift + Tab].

Переход к выполнению функции, которая была выбрана, осуществляется путем нажатия клавиши [Enter] [10].

Некоторые меню содержат вертикальный набор операций, каждая из которых начинается с круглых скобок. Точка внутри скобки является признаком выбора операции. Ее передвижения по меню заставке происходит с помощью клавиш вертикального перемещения курсора. Выполнение выбранной операции начинается после нажатия клавиши [Enter].

2.3. Ввод программы пользователя

Ввод программы пользователя осуществляется с помощью алфавитно-цифровых клавиш. Клавиши управления курсором используются для перемещения курсора в нужное место экрана, а также для ввода цифр и символов арифметических операций. Функциональные клавиши используются для облегчения работы пользователя. При работе с интерпретатором Бейсик за функциональными клавишами закреплены следующие функции:

  • F1 - LIST - вывод указанных программных строк на экран;
  • F2 - RUN - запуск программы, находящейся в ОЗУ, с указанного строки;
  • F3 - LOAD - чтение с диска в ОЗУ программного файла;
  • F4 - SAVE - запись программного файла с ОЗУ на диск;
  • F5 - CONT - возобновление программы после прерывания;
  • F6 - LPTI - назначение устройства печати;
  • F7 - TRON - включения режима отладки и трассировки программы;
  • F8 - TROFF - отмена режима трассировки;
  • F9 - KEY - переназначение функциональных клавиш;
  • F10 - SCREEN - установление режима работы экрана [17].

При нажатии клавиш F2, F5, F6, F8, F10 соответствующие команды начинают выполняться немедленно (текст команд заканчивается кодом клавиши Enter). При нажатии других клавиш текст команды дополняется с клавиатуры необходимыми параметрами, после чего нажимается клавиша Enter.

Перед созданием новой программы необходимо выполнить команду NEW, что вызывает очистки рабочей области ОЗУ от программ и данных.

Интерпретатор может непосредственно выполнять операторы после их ввода (режим прямой интерпретации) или включать их в программу. Выбор режима работы интерпретатора зависит от того, в какой форме вводятся операторы. Если номер введенной строки не указывается, то каждая команда или оператор интерпретируются и выполняются после ввода. Если введенная строка начинается с номера, то интерпретатор считает его частью программы, которая по завершению набора выполняется по команде RUN [2].

Ввод программы осуществляется по строкам. Каждая строка начинается с метки (номера) строки. В одной строке могут размещаться несколько операторов, тогда они отделяются друг от друга символом ":". Ввод каждого составного строки осуществляется с помощью клавиши Enter, при этом обеспечивается автоматический переход на начало следующей строки.

Для автоматического ввода строк с заданным шагом используется команда AUTO.

Формат команды: AUTO (начальный номер), (шаг увеличения).

Если в команде аргументы отсутствуют, то команда эквивалентна AUTO 10,10. Для отмены режима вывода номеров строк стоит одновременно нажать клавиши CTRL + BREAK [10].

2.4. Выполнение программы

Введенная программа сохраняется в ОЗУ ПК. Для ее запуска используется команда RUN или использовать комбинацию клавиш Shift + F5.

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

При выполнении программы на экран выводятся запросы на ввод данных, необходимых для решения задач (операторы INPUT), а также результаты и объяснительные сообщение (операторы PRINT). После выполнения всех операторов программы на экран дисплея выводится сообщение OK, что означает готовность к продолжению работы [12].

При завершении работы с интерпретатором БЕЙСИК возвращение в операционную систему осуществляется набором команды SYSTEM.

2.5. Редактирование программы

При обнаружении ошибок в программе необходимо установить их причины. Для этого необходимо вывести на экран программу или ее часть, используя команду LIST.

Формат команды: LIST [начальный номер] [-] [конечный номер].

Примеры:

  • LIST - вывод всей программы;
  • LIST 40 - вывод строки с номером 40,
  • LIST 40-150 - вывод строк с 40 по 150 номер;
  • LIST -70 - вывод строк от начала до 70 номера;
  • LIST 70 - вывод строк с 70 номера до конца программы [2].

Число строк, выведенных на экран, не должно быть более 24. Для исправления ошибок в программе используются следующие приемы:

- Переместить курсор в позицию, содержащий ложный символ, и ввести на его место правильный;

- Удалить из строки лишний символ - переместить курсор в позицию, содержащий этот символ, и нажать клавишу Delete;

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

Для добавления новой строки в программу необходимо набрать строку с номером и нажать клавишу Enter. При этом новая строка располагается в программе в порядке номеров строк [14].

Для изменения строки можно набрать новую строку с тем же номером и нажать клавишу Enter. При этом старый строку с тем же номером удаляется.

Если ввести только номер существующего строки и нажать клавишу Enter, то строка с этим номером удаляется из программы.

Для удаления нескольких строк используется команда Delete.

Формат команды: Delete "начальный номер" "-" "конечный номер". Примеры:

  • Delete 50 - удаление строки с номером 50;
  • Delete 40-120 - удаление строк с 40 по 120 номер;
  • Delete -20 - удаление строк с начала по 20 номер;
  • Delete 20-- удаление строк с номерами 20 до конца программы;
  • Delete 1- - удаление всей программы.

Номера строк программы меняются, как правило, с шагом 10. Это дает возможность вставлять пропущенные строки в программу, не меняет номеров следующих строк. Если необходимо вставить более 9 строк, то следует исправить номера всех последующих строк. Для этого используется команда RENUM [11].

Формат команды: RENUM "новый начальный номер", "старый начальный номер", "шаг". Примеры:

  • RENUM 100,50,5 - команда изменит старые номера строк, начиная с 50 номера на новые с номерами от 100 с шагом 5;
  • RENUM 100,50 - команда изменит старые номера строк, начиная с 50 номера на новые с номерами от 100 с шагом 10.

Если старый начальный номер не указан, то номера меняются от начала программы и до ее конца. Если не указано нового начального номера, то он равен размеру шага.

Если есть операторы передачи управления GOTO, GOSUB и т.д., то команда RENUM меняет их аргументы (номера строк).

Для вывода отдельной строки на экран при редактировании можно использовать команду EDIТ, в который указывается номер этой строки. При этом курсор располагается в начале строки.

Команды TRON и TROFF служат соответственно для включения и выключения режима трассировки. В режиме трассировки, который используется для отладки программ, на экран дисплея выводятся в квадратных скобках номера всех выполняемых программных строк, расположенных между операторами TRON и TROFF, совместно с результатами, выведенными на экран.

Если используется только одна команда TRON, то трассировка программы осуществляется от этот команды до логического конца программы. В программе можно использовать произвольное число пар TRON - TROFF для трассировки отдельных ее частей [10].

2.6. Сохранение программы

Программа, созданная пользователем, сохраняется в оперативной памяти персонального компьютера (ПК). После окончания работы и выключения машины содержание памяти теряется. Для хранения программы ее необходимо записать на внешнее устройство (на диск) в виде программного файла. Для этого необходимо выполнить следующие действия:

  • Выбрать команду Сохранить или Сохранить как режима файла;
  • Ввести имя файла (рис. 3), под которым будет храниться программа;
  • Нажать клавишу [Enter] [17].

Рис. 3. Меню заставка для процедуры хранения файла

Имя файла назначается пользователем. Для обозначения типа файла при программировании на языке Бейсик используются стандартные расширения:

  • BAS - программный файл,
  • DAT - файл входных и выходных данных,
  • TMP - рабочий файл (временный) [10].

Для записи программы на магнитный диск в виде программного файла используется команда SAVE (сохранить).

Формат команды: SAVE "[диск:] имя файла". [2]

Если запись файла осуществляется на системный устройство, то имя устройства (дисковода) можно опустить.

Для вывода программы из ОЗУ на принтер используется команда LList

Формат команды: LList [ "начальный номер" - "конечный номер"], где "начальный номер" - "конечный номер" - номера начальной и конечной строк программы, черви выводятся на печать. Если аргумент не указан, то на печать выводится вся программа.

При записи программы на диск может оказаться, что на диске существует старая версия этой же программы. Если необходимо сохранить ее, то можно переименовать ее с помощью команды NAME.

Формат команды: NAME "старое имя" AS "новое имя".

После записи программы на магнитный диск стоит убедиться, что файл на диске существует. Для просмотра списка файлов, записанных на диск используется команда FILES.

Формат команды: FILES [имя файла]. [10]

Если аргумент опущен, то выводится полный список файлов, записанных на диске.

Программа, которая была сохранена с помощью команды SAVE, в следующем может быть считана с программного файла на магнитном диске в ОЗУ. Это осуществляется с помощью команды LOAD (загрузить).

Формат команды: LOAD "[диск:] имя файла".

Если программный файл находится на текущем устройстве, то достаточно указать только имя файла.

По команде LOAD очищается память, а затем в нее считывается программа.

Для удаления файлов на диске используется команда KILL.

Команду следует указывать с расширением файла, который удаляется. Команда может быть применена ко всем типам файлов [10].

Для выхода из среды QUICK-BASIC необходимо выполнить следующие действия:

- Выбрать команду Выход в режиме файла;

- Нажать клавишу [Enter].

3. Основы программирования в среде QBasic

3.1. Основные операторы языка БЕЙСИК

Основной синтаксической единицей языка БЕЙСИК является оператор. Операторы, как правило, компонуются из служебных слов (ключевых слов), используемых совместно с основными элементами языка: константами, переменными и арифметическими выражениями.

Ключевые слова (служебные слова) в языке определяют характер действий, которые должны быть выполнены в операторе. Согласно этому же слова и выражают эти действия.

Например: LET - присвоить, IF - если, GOTO - перейти, DIM-сокращенное слово, DIMENSION - что означает описание, READ -ввести, PRINT - печать и т.д. [15]

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

Все операторы языка БЕЙСИК разделяются на следующие группы:

- Основные операторы языка;

- Операторы преобразования информации;

- Операторы ввода-вывода;

- Дисковые операторы;

- Операторы преобразования данных;

- Операторы обработки графики;

- Матричные операторы;

- Операторы сортировки;

- Подпрограммы [10].

Весь набор операторов разделяется на два класса: выполняемые и не выполняемые.

Выполняемые операторы определяют действия.

Операторы, которые не выполняются, описывают характер и организацию данных, способ редактирования данных, функции и классификация программных единиц.

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

Операторы, которые не выполняются, располагаются чаще вначале программы. К таким операторов относится оператор - комментарий REM.

Формат оператора: n REM текст, где n - номер строки; текст - текст комментария, содержащего любые символы алфавита языка и буквы алфавита.

Ключевое слово REM может быть заменено апострофом. Каждую программу желательно начинать комментарием с объявлением имени программы, ее автора, даты разработки, назначения и другой необходимой информации [10].

К операторам, которые не выполняются, относится также оператор DIM, что описывает размерность массива.

Среди выполняемых операторов можно выделить операторы:

- Присваивания;

- Ввода-вывода;

- Передача управления;

- Операторы, организующие взаимодействие подпрограмм.

3.2. Оператор присваивания

Оператор присваивания LET служить для вычисления значения арифметического или строчного выражения и присваивания этого значения переменной.

Формат оператора: n [LET] v = a, где LET - необязательное имя оператора присваивания; v - имя простой или индексированной переменной, принимающей новое значение; а - выражение.

Переменные и выражения должны быть или одновременно числовыми или строчными.

При выполнении оператора присваивания вычисляется значение выражения в правой части, затем оно присваивается имени переменной [17].

Примеры записи операторов присваивания:

10 A = 21. 847

80 D = B * B-4 * A * C

90 X (I, J) = X (I, J) / X2

120 Z $ = "ЗИМНЯЯ"

130 Z $ = Z $ + "ОЛИМПИАДА"

200 I = I + 1: Z = SIN (X): D = LOG (A / X)

3.3. Операторы ввода данных

Данные, используемые в программе, можно задавать с помощью операторов присваивания. Однако этот способ носит частичный характер. Желательно в программе осуществлять ввод исходных данных, используя операторы ввода. К ним относятся операторы READ и DATA, выполняемые совместно: DATA размещает данные, а READ - к ним обращается.

Формат операторов READ и DATA:

  • n READ список переменных;
  • n DATA список констант.

В списке переменных перечисляются через запятые простые переменные и переменные с индексами, а в списке констант - любые допустимые числовые или строковые значения этих переменных. Строчная константа заключается в кавычки, если она начинается с пробелов или заканчивается ними, а также если оно содержит запятые или двоеточия.

Количество переменных в операторах READ и DATA должно совпадать. Однако операторы READ и DATA не обязательно должны быть парными. Например, двум операторам READ может отвечать один оператор DATA и наоборот [17].

Пример: необходимо присвоить значение переменных:

а = 1, у = 2, x = 5, у = 6.83, z = "Павлов".

Это можно выполнять различными способами:

1) Один оператор READ и один оператор DATA:

10 DATA 1,2,5,6.83, Павлов

20 READ A, B, X, Z $

2) Два оператора READ и один оператор DATA:

10 DATA 1,2,5,6.83, Павлов

20 READ A, B

30 '.................

100 READ X, У, Z $

3) Два оператора READ и два оператора DATA:

10 DATA 1,2

20 READ A, B

30 ......

100 DATA 5,6.83, Павлов

110 READ X, Y, Z $

Если в программе используется несколько операторов DATA, то все они участвуют в создании блока данных.

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

Неиспользованные значения из списка DATA игнорируются. Если блок данных исчерпан, то при попытке продолжить чтение данных выдается сообщение о погрешности [16].

Тип переменных и элементов массива, указанных в операторе READ, должны быть совместимы с типом значений, которые им присваиваются. Так, недопустимо, чтобы переменная была строчной, а значения - числовыми (или наоборот). Оператор DATA относятся к числу операторов, которые не выполняются. Их можно размещать в любой части программы до оператора END. Однако рекомендуется избегать разбрасывания операторов DATA по программе. Лучше всего их поместить в одном месте программы - в начале или в конце. Пример:

10 READ N, M, C $, D $

20 DATA 100, 20, РЕЖИМ, ГАЗ-24

После выполнения оператора READ переменные получат значение в следующем порядке: N = 100 M = -20 C $ = "РЕЖИМ" D $ = "ГАЗ-24".

Интерпретатор запоминает текущую позицию в списке констант оператора DATA с помощью указателя, перемещается вперед каждый раз, когда оператор READ берет из списка очередное значение. Можно вернуть указатель на начало блока данных, используя оператор RESTORE. Первый оператор READ, что следует после RESTORE, будет считывать первое значение из блока данных [17].

Формат оператора: n RESTORE. Пример:

10 READ A, B, C

20 RESTORE

30 READ D, E, F

40 ....

140 DATA -12,85,63,40,80

Первый оператор READ (строка 10) читает первые три значения с оператора DATA (строка 140):

A = -12 B = 85 C = 63

Затем оператор RESTORE (строка 20) перемещает указатель в начало блока данных (строка 140). Второй оператор READ (строка 30) снова читает первые три числа:

D = 12 E = 85 F = 63

Оператор ввода INPUT, так же как и READ, служит для ввода данных в программу. Разница заключается в том, что при использовании оператора READ все данные сначала помещаются в программу в операторах DATA, а при использовании оператора INPUT данные вводятся с клавиатуры непосредственно при выполнении программы в режиме диалога с ЭВМ (диалоговый ввод) [17].

Формат оператора: n INPUT список переменных.

При выполнении оператора INPUT на экране дисплея выводится знак и выполнения программы прекращается. После этого пользователь вводит с клавиатуры значение каждой переменной, указанной в списке, по порядку, разделяющей их запятыми. После введения последнего значения запятая не ставится, а нажимается клавиша Enter и продолжается выполнение программы.

После завершения программы данные, введенные оператором INPUT, не сохраняются. Например, при выполнении оператора 40 INPUT N $, K на экран дисплея будет выведен знак вопроса (?). Выполнение программы останавливается. Оператор дополняет строку данными, например ПОНЕДЕЛЬНИК, 19. После нажатия клавиши Enter программа продолжает работу, используя значение N $ = ПОНЕДЕЛЬНИК и К = 19.

Число введенных данных должно соответствовать числу переменных в операторе INPUT.

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

Оператор INPUT позволяет кроме вопросительного знака (или вместо него) выводит на экран текстовые наводящие сообщения. Текст наводящего сообщения должен указываться в операторе INPUT в виде строчной константы, которая стоит непосредственно за ключевым словом INPUT, при этом строчная константа берется в кавычки и отделяется от имени переменной точкой с запятой. Например, при выполнении оператора 10 INPUT "ВВЕДИТЕ 2 ЧИСЛА X, Y"; X, Y на экране появится сообщение ВВЕДИТЕ 2 ЧИСЛА X, Y?. Пользователь дополняет строку необходимой информацией:

ВВЕДИТЕ 2 ЧИСЛА X, Y? -349,567

Для отмены вопросительного знака точку с запятой в операторе INPUT после "подсказки" следует заменить запятой. Тогда введена пользователем запись будет располагаться непосредственно за последним символом сообщения.

Например, при выполнении оператора 30 INPUT "ДОМАШНИЙ АДРЕС:", N $ на экране появится сообщение ДОМАШНИЙ АДРЕС:

Оператор LINE INPUT используется для ввода строчных констант с сохранением начальных и конечных пробелов. Его действие аналогично оператору INPUT с той лишь разницей, что строчные константы набираются без кавычек и при этом сохраняются начальные и конечные пробелы [17].

Например, если при выполнении оператора 50 LINE INPUT "назовет имя", N $ ввести строку АННА ИВАНОВНА, то переменная N $ получит это значение.

3.4. Операторы вывода данных

Для вывода данных на экран дисплея в процессе выполнения программы используется оператор PRINT.

Формат оператора: n PRINT список вывода.

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

10 PRINT "УКАЖИТЕ ВАШЕ ИМЯ"

20 PRINT "СУММА ="

30 PRINT SIN (X), COS (X), EXP (X)

90 PRINT "АДРЕС"; A $, "ТЕЛЕФОН"; T $

170 PRINT "ТАБЛИЦА ЗНАЧЕНИЙ ФУНКЦИИ Y = F (X)"

210 PRINT "АРГУМЕНТ X", "ФУНКЦИЯ Y"

Оператор PRINT без списка аргументов выводит строку пробелов.

Например, оператор 1020 PRINT: PRINT вызывает пропуск двух строк на экране.

При использовании оператора PRINT можно организовать вывод данных в двух форматах - зонный и компактный [10].

При зонном формате строка разделяется на 5 зон по 14 позиций в каждой. Каждое выведеное значение размещается в своей зоне. Если последняя зона в строке заполнена, то вывод данных продолжается с первой зоны следующей строки. При выводе числовых констант первая позиция каждой зоны отводится под знак числа. Для вывода данных в этом формате необходимо элементы списка вывода отделять друг от друга запятыми. Если в списке оператора PRINT стоят две запятые подряд, то одна зона пропускается. Например, при выполнении операторов:

10 A = 1: B = 2: C = -3: D = 48: E = -50

20 PRINT A, B, C, D, E

30 A = 1: C = 3: D $ = "МЕРКУРИЙ": C $ = "САТУРН"

40 PRINT A ,, B ,, C, D $ ,, C $

На экран будет выведено:

1

2

-3

48

-50

-1

2

3

МЕРКУРИЙ

САТУРН

При компактном формате числовые значения выводятся через две или одну позицию (если перед числом стоит знак минус), а строчные значения - подряд без пробелов. Для организации вывода в таком формате необходимо отделить элементы списка вывода друг от друга точкой с запятой [17].

Например:

10 А = 1: У = 2: C = -3: D = 48: E = -50

20 PRINT A; B; C; D; E

30 PRINT "СУММА =" A + D

40 PRINT "СУММА ="; A + D

50 C $ = "ОСЕНЬ"

60 PRINT "ВРЕМЯ ГОДА"; C $

На экран будет выводиться:

1 2 -3 48 -50

СУММА = 49

СУММА = 49

ВРЕМЯ ГОДА ОСЕНЬ

Отсутствие запятой или точки с запятой в конце списка вывода вызывает переход на новую строку. Например:

100 PRINT X, Y,

110 PRINT W

Все три значения выводятся в одной строке и каждое из них в своей зоне. Запятая в конце списка в строке 100 блокирует переход на новую строку.

Например:

100 PRINT X, Y

110 PRINT W

Выводятся два значения (X и Y) в одной строке, а значение W - в следующем. Отсутствие запятой в конце списка в строке 100 вызывает переход к новой строке [17].

Запятые и точки с запятыми могут применяться в операторе PRINT совместно. Пример:

20 PRINT A; B; C,; D

Если в списке вывода указывается пояснительный текст к выводимому значению, целесообразно делать вывод в компактном формате, разделяя текст и значение точкой с запятой. Если текст и значение разделить запятой, то значения будут печататься в следующей зоне.

Например:

10 X = 45 Y = 2

20 PRINT "X + Y ="; X + Y

30 PRINT "X + Y =" X + Y

40 PRINT "СУММА X + Y РАВНО"; X + Y

На экране будет выведено

X + Y = 47

X + Y = 47

Сумма X + Y РАВНО 47

Вид выводимых числовых значений зависит от ряда факторов. Перед отрицательным числом печатается знак, а перед положительным - пробел. Числовые данные в интервале 0.01-99999 выводятся в виде десятичного числа целого или действительного с фиксированной точкой, в остальных случаях они выводятся в машинном представлении. Пример:

0.00000835 8.35E-06

Заключение

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

  • постановка задачи;
  • формализация (математическая постановка задачи);
  • выбор метода решения;
  • алгоритмизация задачи;
  • программирование задачи;
  • отладка программы;
  • решение задачи на ЭВМ и анализ результатов.

Язык программирования Бейсик – язык программирования высокого уровня. Он позволяет описывать алгоритм решения задачи в сжатой форме, используя слова разговорного английского языка.

Бейсик удобный для изучения основ программирования и начального освоения современной вычислительной техники. Он распространен практически на всех моделях компьютеров.

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

Список источников

  1. Альфред В. Ахо, Джон Э. Хопкрофт, Джеффри Д. Ульман Структуры данных и алгоритмы: — Санкт-Петербург, Вильямс, 2012 г.- 400с.
  2. Ахметов И.Г. Программирование для студентов и школьников на примере Small Basic. СПб.: БХВ-Петербург, 2012. — 160 с.
  3. Бобровский С.И. Программирование на языке QBasic для школьников и студентов. М.: ДЕСС КОМ: Инфорком-Пресс, 2001. — 208 с.
  4. Бойченко Л.П. Практикум по программированию в среде Visual Basic (примеры решения задач). Учебное пособие. — Ухта: УГТУ, 2010. — 162 с.
  5. Головин И.Г., Баева Н.В. Языки управления приложениями. Учебно-методическое пособие. – М.: Издательский отдел факультета ВМиК МГУ имени М.В. Ломоносова; МАКС Пресс, 2015. – 96 с.
  6. Грошев А.С. Информатика. Лабораторный практикум. Арханг. гос. техн. ун-т, 2012. - 148 с.
  7. Зикратов И.А., Косовцев В.В., Петров В.Ю. Разработка и стандартизация программных средств и информационных технологий. Учебное пособие. — СПб.: СПбГУ ИТМО, 2010. — 91 с.
  8. Караванова Т.П,Основы алгоритмизации и программирования: Пособие. - К.: Форум, 2011. – с.289
  9. Каспер Э. Освоим QBasic играючи! М.: Горячая линия - Телеком, Радио и связь, 2000. - 264 с.
  10. Кетков Ю.Л., Кетков А.Ю. Практика программирования: Бейсик, Паскаль, Си. СПб: БХВ, 2002. - 464 с.
  11. Пестриков В.М., Тяжев А.В. QBASIC на примерах. СПб.: БХВ-Петербург, 2010. — 304 с.
  12. Робертсон Л. А. Программирование - это просто. Пошаговый подход:— Москва, Бином. Лаборатория знаний, 2010 г.- 384 с.
  13. Сальников Ю. Н. Программирование. Базовый курс: — Москва, 2010 г.- 336 с.
  14. Сафронов И. Бейсик в задачах и примерах. 2-е изд. — СПб.: БХВ-Петербург, 2006. — 320 c.
  15. Семенов М.В. Информатика. - Ростов н/Д: Феникс, 2011. – 288с.
  16. Третьякова Н.М. Алгоритмизация и программирование инженерных задач. Учебное пособие. — Сыктывкар: СЛИ, 2004. — 104 с.
  17. Федоренко Ю.П. Алгоритмы и программы на Qbasic. Учебный курс. СПб.: Питер, 2002. — 288 с.