Введение в программирование

Основы программирования на языке QBasic

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

Главное меню содержит перечень основных команд, доступных системе программирования.
Чтобы использовать пункты главного меню нужно нажать Alt.
Переход по пунктам осуществляется при помощи функциональных клавиш со стрелками.
Увидеть список команд определенного пункта меню можно, нажав клавишу Enter.
Команды выбираем при помощи функциональных клавиш со стрелками.
Выполнение команды осуществоляется нажатием клавиши Enter.
Отмена команды – Esc.

 

Необходимо усвоить следующие пункты меню и команды:

В окне редактора набирают текст программы на языке QBasic.
Чтобы решать задачи с помощью языка программирования, необходимо научиться писать программы на этом языке. А для этого надо знать его систему команд.
Программа на языке QBasic – это последовательность команд, выполнение которых приведет к результату (решению задачи).
Отдельная команда на алгоритмическом языке называется оператором.
Конец программы обозначается командой  End.
Различают два режима работы в среде Qbasic: текстовый и графический.

Графический режим. Основные графические операторы

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

Для удобства определения координат можно использовать сетку:

При запуске среды QBasic экран монитора автоматически устанавливается в текстовый режим.
Чтобы переключить экран в графический режим используется оператор SCREEN.
Формат:  SCREEN <номер графического режима>
Номер графического режима указывает, на какое количество пикселей будет разбит экран. Для разбиения 640 х 480 удобно использовать графический режим с номером 12.

Оператор: SCREEN 12.
В этом режиме любой пиксель может принимать один из 16 цветов.

Рисование точки

Для рисования точки определенного цвета используется оператор PSET.
Формат:  PSET (X, Y), C
PSET – служебное слово,
X, Y – координаты точки,
C – цвет (число от 0 до 15).

 

Таблица цветов:

0
1
2
3
4
5
6
7
 -  Black
 -  Blue
 -  Green
 -  Cyan
 -  Red
 -  Magenta
 -  Brown
 -  DarkGray
        8
9
10
11
12
13
14
15
 -  LightGray
 -  LightBlue
 -  LightGreen
 -  LightCyan
 -  LightRed
 -  LightMagenta
 -  Yellow
 -  White

 

Задание: Нарисовать созвездие большой медведицы.

Программа:
CLS
SCREEN 12
PSET (80, 240), 15
PSET (160, 160), 15
PSET (240, 160), 15
PSET (320, 160), 15
PSET (360, 240), 15
PSET (400, 320), 15
PSET (480, 320), 15
PSET (540, 200), 15
END

 

Задания для самостоятельного решения.
1. Нарисовать созвездие Кассиопеи.

Рисование линии

Для рисования прямых линий используется оператор LINE.
Формат:  LINE (X1, Y1) - (X2, Y2), C
LINE – служебное слово,
X1, Y1 – координаты начала линии,
X2, Y2 – координаты конца линии,
C – номер цвета линии.


 

Задание: Нарисовать лестницу.

Программа:
CLS
SCREEN 12
LINE (160, 80) - (160, 400), 4
LINE (400, 80) - (400, 400), 4
LINE (160, 160) - (400, 160), 4
LINE (160, 240) - (400, 240), 4
LINE (160, 320) - (400, 320), 4
END

 

Задание: Нарисовать звезду не отрывая руки.

Программа:
SCREEN 12
LINE (160, 420) - (320, 80), 4
LINE (320, 80) - (480, 400), 4
LINE (480, 400) - (120, 200), 4
LINE (120, 200) - (520, 200), 4
LINE (520, 200) - (160, 420), 4
END

 

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

 

Программа (второй вариант):
SCREEN 12
LINE (160, 420) - (320, 80), 4
LINE - (480, 400), 4
LINE - (120, 200), 4
LINE - (520, 200), 4
LINE - (160, 420), 4
END

 

Задания для самостоятельного решения.

 

1. Нарисовать кораблик 2.  Нарисовать кружку. 3. Нарисовать палатку.
4.  Нарисовать конверт. 5. Нарисовать дом.

Рисование прямоугольников

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

Для рисования прямоугольников используется специальная форма оператора LINE.
Формат:   LINE (X1, Y1) – (X2, Y2), C, B
LINE – служебное слово,
X1, Y1 – координаты левого верхнего угла прямоугольника,
X2, Y2 – координаты правого нижнего угла прямоугольника,
C – цвет линии,
B – служебное слово, обозначающее прямоугольник (box).

 

Для рисования закрашенных прямоугольников вместо служебного слова В используется служебное слово BF.
Формат:  LINE (X1, Y1) – (X2, Y2), C, BF
В данном случае  С означает цвет заливки.

 

Задание: Нарисовать синий прямоугольник с желтым контуром.

Программа:
SCREEN 12
LINE (160, 160) - (480, 400), 1, BF
LINE (160, 160) - (480, 400), 14, B
END

 

Задания для самостоятельного решения
 

1. Нарисовать пирамидку 2.  Нарисовать парту

 

Рисование окружностей

Чтобы нарисовать окружность необходимо знать радиус и центр окружности.
Для рисования окружностей используется оператор CIRCLE.
Формат:  CIRCLE (X, Y), R, C
CIRCLE – служебное слово,
X, Y – координаты центра окружности,
R – размер радиуса в пикселях,
C – номер цвета линии.


 

Задание: Нарисовать олимпийские кольца.

Программа:
SCREEN 12
CIRCLE (160, 160), 80, 1
CIRCLE (320, 160), 80, 7
CIRCLE (480, 160), 80, 4
CIRCLE (240, 240), 80, 14
CIRCLE (400, 240), 80, 2
END

Оператор заливки

Закрашивать можно только замкнутые области, ограниченные линиями одного цвета.
Для закраски замкнутых областей применяется оператор PAINT.
Формат:  PAINT (X, Y), C1, C2
PAINT – служебное слово
X, Y – координаты любой точки внутри области,
C1 – цвет заливки,
C2 – цвет линий, ограничивающих область.

 

Задание: Нарисовать цветочек.

Программа:
SCREEN 12
CIRCLE (240, 240), 80, 7
PAINT (240, 240), 1, 7
CIRCLE (320, 320),  80, 7
PAINT (320, 320), 1, 7
CIRCLE (400, 240), 80, 7
PAINT (400, 240), 1, 7
CIRCLE (320, 160), 80, 7
PAINT (320, 160), 1, 7
CIRCLE (320, 240), 40, 7
PAINT (320, 240), 14, 7
END

 

Задания для самостоятельного решения.
Нарисовать вазу с мороженым.

Дополнительная информация

Для пояснения текста программы используют комментарии.
Комментарий — пояснение к программе или к какой-либо части программы. Комментарий может быть составлен из слов как на русском, так и на английском языке, с использованием цифр и знаков препинания.
Формат оператора: REM текст
Служебное слово REM  можно заменить знаком апострофа (например, ‘ текст комментария).
Тот текст, который идет за оператором комментария, не будет обрабатываться компьютером.

 

Копирование и вставка текста программы с помощью функциональных клавиш

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

Буфер хранит информацию временно. Информация в буфере хранится до тех пор, пока туда не бубет помещена новая информация. Буфер опустошается также при завершении работы.

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

SHIFT + клавиша "стрелка влево" (выделяются буквы справа налево)

SHIFT + клавиша "стрелка вправо" (выделяются буквы слева направо)

SHIFT + клавиша "стрелка вверх" (выделяются строчки снизу вверх)

SHIFT + клавиша "стрелка вниз" (выделяются строчки сверху вниз)

SHIFT + клавиша END (выделяется вся строчка от начала до конца)

SHIFT + клавиша HOME (выделяется вся строчка от конца до начала)

 

После того, как текст будет выделен, необходимо нажать клавиши одновременно CTRL +  INSERT. Точная копия текста, который был выделен, окажется в буфере. На экране при этом ничего не изменится.
Затем необходимо поставить курсор в то место программы, куда необходимо вставить текст, и нажать одновременно две клавиши SHIFT +  INSERT.

Текстовый режим. Основные операторы

Экран монитора в текстовом режиме представляет собой 25 строк. В каждой строке можно разместить по 80 символов в строку.
Для очистки экрана от ненужной информации применяют оператор CLS (ClearScreen). С этого оператора чаще всего начинают программу.

 

Оператор вывода информации на экран

На экран можно выводить текст, константы  и значения переменных.

Текст — любая последовательность символов. Текст необходимо заключать в кавычки (например, "С добрым утром, страна!").
Константа – постоянная величина (например, число 5 или число 100.85).
Переменная – ячейка памяти компьютера, значение которой может изменяться в ходе выполнения программы. Переменная имеет свое уникальное имя. Имя переменной может быть буквой латинского алфавита или составляться из букв латинского алфавита, цифр и символа подчеркивания. Имя переменной должно начинаться только с буквы (или символа подчеркивания).

 

Примеры правильных имен: a, mama, sum, b56_c, _a.
Примеры неправильных имен: мама (используются русские буквы), 1a (имя начинается с цифры), a#1 (используется спецсивол).

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

 

Формат:  PRINT "текст" , переменная
PRINT — служебное слово
Текст, константы  и переменные отделяются друг от друга запятой.


Например,
PRINT "hello"                         вывод строки hello
PRINT "hello,", "world"          вывод строки hello, world

 

Задание: Вывести на экран следующую информацию:
Привет, меня зовут Миша!
Я ученик школы №9.
Я изучаю QBasic!


 

Программа:
CLS
PRINT " Привет, меня зовут Миша!"
PRINT " Я ученик школы №9."
PRINT " Я изучаю QBasic!"
END


 

Чтобы вывести информацию в несколько столбцов, текст каждой строки разбивается запятыми на столбцы.
 PRINT "..",  "..",  ".."
Здесь первый столбец  выводится с первой позиции (место символа в строке), второй – с 15-ой, третий – с 30-ой и т.д.

 

Задание: Написать программу, выводящую на экран  столбцы:

 

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


Программа:
CLS
PRINT " Зима", "Весна", "Лето", "Осень"
PRINT ""
PRINT "Декабрь", "Март", "Июнь", "Сентябрь"
PRINT " Январь", "Апрель", "Июль", "Октябрь"
PRINT " Февраль", "Май", "Август", "Ноябрь"
END

 

Задания для самостоятельного решения.
Задача: Напишите программу, выводящую на экран расписание звонков в форме:

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

Оператор ввода данных  используется для ввода данных с клавиатуры в память компьютера.
Формат: INPUT данные
INPUT — служебное слово
данные — это перечисленные через запятую переменные, в которые после выполнения оператора будут содержаться введенные с клавиатуры величины.

 

Механизм работы оператора INPUT
После запуска программы на экране появится знак вопроса ? и будет мигать курсор. Программа останавливается и ждет.
С помощью клавиатуры надо набрать данные. Затем нажать клавишу ENTER.
Данные разместятся по порядку перечисления переменных.

 

Например,
INPUT a, b, c

 Если набрать на клавиатуре числа 10, 20, 30 , то переменная a будет содержать число 10, переменная b – число 20, переменная c – число 30. Если вместо чисел ввести, например, буквы, то это вызовет ошибку.

Задание: Даны координаты трех точек экрана. Нарисовать по точкам треугольник.


Программа:
REM Треугольник
CLS
REM Ввод координат всех четырех точек и номера цвета с клавиатуры
PRINT "введи координаты 3-х точек и цвет"
INPUT x1, y1, x2, y2, x3, y3, с
` Рисование треугольника
SCREEN 12
LINE (x1, y1) — (x2, y2), c
LINE — (x3, y3), c
LINE — (x1, y1), c
END

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

 

Формат:    переменная = выражение
переменная — имя ячейки памяти
 =  — служебный знак
выражение — арифметическое выражение, состоящее из чисел, переменных и знаков арифметических операций. Выражение вычисляется по правилам математики. Полученный результат заносится в ячейку памяти, связанную с переменной.

Задание: Написать программу, рисующую мишень, если заданы координаты центра, радиус и расстояние до концов мишени.

Решение:
Обозначим координаты одного конца горизонтальной линии х1 и у1, а координаты другого конца х2 и у2.
Обозначим координаты одного конца вертикальной линии х3 и у3, а координаты другого конца х4 и у4.
Договоримся рисовать окружность цветом с1, а линии цветом с2.

 

Часть программы, рисующая мишень, будет выглядеть так:
SCREEN 12
CIRCLE (x, y), R, c1
PAINT (x, y), c1, c1
LINE (x1, у1 ) — (x2, y2), c2
LINE (x3, y3) — (x4, y4), c2

 

Если известно расстояние от центра мишени до концов (m) и координаты центра мишени (х и у), то через эти данные можно выразить х1, у1, х2, у2, x3, y3, x4, y4:
x1 = x - m
y1 = y
x2 = x + m
y2 = y
x3 = x
y3 = y - m
x4 = x
y4 = y + m


Программа:
CLS
PRINT " введи координаты центра мишени "
INPUT x, y
PRINT " введи радиус "
INPUT R
PRINT " введи расстояние до концов мишени "
INPUT  m
PRINT " введи цвета мишени и линий "
INPUT с1, c2
REM вычисление концов линий
x1 = x - m
y1 = y
x2 = x + m
y2 = y
x3 = x
y3 = y - m
x4 = x
y4 = y + m
REM Рисование мишени
SCREEN 12
CIRCLE (x, y), R, c1
PAINT (x, y), c1, c1
LINE (x1, у1 ) — (x2, y2), c2
LINE (x3, y3) — (x4, y4), c2
END

 

Задание: Написать программу, рисующую лодку, если заданы её размеры и координаты точки левого верхнего угла рисунка .


Решение:
Чтобы нарисовать самый простой рисунок, приходится вводить много данных с клавиатуры. Чтобы этого избежать, будем вводить координаты только одной точки, а координаты всех остальных точек вычислять.
Попробуем определить координату правой верхней точки. У нас есть точка с координатами (x, y). Мы смещаемся от нее вправо на 240 пикселей только по горизонтальной оси. Тогда координаты правой верхней точки будут равны (x + 240, y).
Точно также попробуем определить координату левой нижней точки. Будем смещаться только по вертикальной оси сверху вниз. Координаты левой нижней точки будут равны (x, y + 80).
Чтобы определить координату правой нижней точки, необходимо сместиться на 210 пикселей по горизонтальной оси и на 80 пикселей по вертикальной оси. Координаты правой нижней точки будут равны (x + 210, y + 80).


Программа:
REM Ввод данных с клавиатуры
CLS
PRINT " Введите координаты точки "
INPUT x, y
SCREEN 12
` Рисование лодки
LINE (x, y) — (x + 240, y), 7
LINE  - (x + 210, y + 80), 7
LINE  - (x, y + 80), 7
LINE  - (x, y), 7
PAINT (x + 1, y + 1), 14, 7
END

 

Решение математических задач

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

 

Задание: Найти произведение двух чисел.


Решение:
Два числа можно ввести с клавиатуры с помощью оператора INPUT, а произведение вывести на экран с помощью оператора PRINT.
CLS
REM Ввод данных с клавиатуры
PRINT "Введите числа"
INPUT a, b
` Вычисление произведения чисел
p = a * b
PRINT "произведение чисел равно:", p
END

 

Обратите внимание:
1) В переменных a и b хранятся два числа. В переменную p помещается результат выполнения операции a * b.
2) При использовании оператора PRINT для вывода текста на экран, текст пишем в кавычках. Он появляется на экране в том виде, в котором написан.
Оператор PRINT может выводить на экран и значение переменных.
Если написать имя переменной в кавычках, то система воспримет его как текст и выведет на экран просто это имя. Но если написать переменную без кавычек, то на экране появится число, которое в ней хранится.

 

Задание : Вычислить значение арифметического выражения:

Значения переменных a, b, c, d вводятся с клавиатуры.
Обратите внимание, что в языке программирования нельзя писать арифметические выражения в виде неправильной дроби. Также нельзя терять знаки арифметических операций (например, как в математике, когда не пишут знак умножения).
Сначала перепишем арифметическое выражение в том виде, который может понять компьютер:

Программа:
REM Ввод данных с клавиатуры
CLS
INPUT " Введите данные: а,b,c,d "
PRINT a , b, c, d
` Вычисление значения арифметического выражения
Z = (a + b + c) / 20 + 25 * d  
PRINT " Значение выражения  равно " , Z
END

 

Задания для самостоятельного решения.
1. Даны величины сторон прямоугольника. Вычислить площадь прямоугольника.
2. Найти среднее арифметическое пяти чисел.
3. Записать арифметические выражения в понятном для среды QBasic виде:

4. Записать арифметическое выражение в обычной математической форме:
a)   44 / 4 * 5 + 10
b)   a - b / c + d
c)   e / (z + x / y)


5.  Найти значение выражения: 

Адрес: 614039, г. Пермь, ул. Комсомольский проспект, 45
Телефон: +7 (342) 212-80-71
E-Mail: school9-perm@ya.ru
Вопрос администратору сайта