QBasic - учебный язык программирования для персональных компьютеров.
Для запуска QBasic надо найти файл qbasic.exe
Запуск программы Shift-F5.
Выход из QBasic: Меню Файл, Выход.
Переменная - это область в памяти компьютера, где хранится некоторое значение. Каждая переменная имеет имя, значение и тип.
Имя переменной обозначается английской буквой, после которой может быть цифра, причем первой стоит буква, например: x, y, z, A1, B2. Имя переменной служит для обозначения некоторой величины в программе, которая при выполнении программы может иметь какое-либо значение, но может быть и не определена. Пример задания часто употребляемой константы: pi=3.14159.
бейсик первый урок.docx
QBasic учебный язык программирования для персональных компьютеров.
Для запуска QBasic надо найти файл qbasic.exe
Запуск программы ShiftF5.
Выход из QBasic: Меню Файл, Выход.
Переменная это область в памяти компьютера, где хранится некоторое
значение. Каждая переменная имеет имя, значение и тип.
Имя переменной обозначается английской буквой, после которой может быть
цифра, причем первой стоит буква, например: x, y, z, A1, B2. Имя переменной служит
для обозначения некоторой величины в программе, которая при выполнении
программы может иметь какоелибо значение, но может быть и не определена. Пример
задания часто употребляемой константы: pi=3.14159.
Типы переменых: целая, вещественная, логическая, символьная, строковая и др.
Если в переменной хранится число, то это числовая переменная, если в переменной
хранится слово или фраза, то это строковая (символьная) переменная. В QBasic
строковая переменная обозначается a$, b$ (в конце имени стоит знак доллара $).
Содержимое хранится в переменной, до тех пор, пока оно не будет специально
изменено.
Операция предачи новых данных в переменную называется присваиванием и
обозначается в QBasic знаком "=", например, x=10.
Оператор CLSоператор очистки экрана. С него часто начинаются программы,
работающие в текстовом режиме.
Директива END означает конец программы. Применение этой команды в конце
программы не является обязательным.
SQR(X) извлечение квадратного корня;
ABS(X) модуль (абсолютная величина) числа;
RND(X) случайное число;
Для вывода (печати) информации на экран применяется оператор PRINT. Пример:
PRINT X вывод на экран значения числа X.
PRINT "Скорость тела равна: V="; V; "м/с" выводимый на экран текст указывается в
кавычках. Вместо знака ";" можно ставить знак ",".
Просто оператор PRINT без текста и знаков даёт пустую строку на экране. Ввод данных с клавиатуры осуществляется с помощью оператора INPUT
Пример: INPUT X ввод числа X. На экране появится знак "?" и компьютер ждёт ввода
переменной Х (это приглашение ввести число).
INPUT "Введите число Х="; X можно вводить в кавычках подсказку, она будет
выводиться на экран. После подсказки можно ставить знак "," вместо знака ";", но тогда
знака вопроса "?" на экране не будет, а вместо него в качестве приглашения будет
мигать курсор.
Например: Вычисли скорость V пешехода. Значения пути S и времени Т задай с
клавиатуры.
CLS /очищаем экран монитора/
INPUT “Введите значение пути S=”; S /вводим с клавиатуры значение пути/
INPUT “Введите время пути Т=”; Т /вводим с клавиатуры значение времени/
V=S/T /записываем формулу для нахождения скорости/
PRINT “Скорость пешехода V=”; V /выводим ответ на экран/
END /конец программы/
А теперь сами в своих тетрадях попробуйте написать программу для нахождения
площади S и периметра P прямоугольника. Значение сторон a и b нужно задать с
клавиатуры.
CLS
INPUT “а=”; a
INPUT “b=”; b
P=(a+b)*2
S=a*b
PRINT “Периметр Р=”; Р
PRINT “Площадь S=”; S
END
Пример 2 (с использованием строковых переменных). Напечатайте на экране введённые
с клавиатуры фамилию, имя и класс ученика.
CLS
INPUT "Введите свою фамилию: ", f$
INPUT "Введите своё имя: ", i$
INPUT "Введите свой класс: ", k$
PRINT PRINT f$; " "; i$; ", "; k$
EУправляющие конструкции QBasic
1. Оператор безусловного перехода GOTO N, где Nметка. В качестве N можно взять
любое число, не обязательно совпадающее с номером строки, так как в QBasic 4.5
строки можно не нумеровать. Но двух одинаковых меток в одной программе не должно
быть. Исполнение программы будет продолжено с той её части, которая начинается с
указанной метки.
Пример:
.......
GOTO 10
.......
10 PRINT "Текст"
.......
2. Условный оператор IF...THEN...ELSE (Если...Тогда...Иначе):
IF <условие> THEN <список операторов> ELSE <список операторов>
Если заданное условие истинно, выполняется список операторов, стоящий после
THEN, в противном случае выполняется список операторов, стоящий после ELSE.
Слово ELSE может и отсутствовать. Тогда происходит переход к строке, следующей за
оператором IF...THEN.
Условия представляют собой логические соотношения: равенства или неравенства =
равно, <> неравно, > больше, < меньше, >= больше или равно, <= меньше или равно.
При использовании сложных условий (объединении двух и более условий) применяют
слова AND (И) и OR (ИЛИ): Условие1 AND (или OR) Условие2...
Условный оператор позволяет реализовать алгоритм с ветвлением.
Пример 1:
CLS
INPUT "Введите год основания Москвы: M="; M
IF M = 1147 THEN PRINT "Вы правы!" ELSE PRINT "Вы ошиблись!" Пример 2:
CLS
PRINT "Вычислите y=1/(x2) для всех x"
INPUT "Введите x=", x
IF x = 2 THEN PRINT "При x=2 функция не определена!": END
y = 1 / (x 2)
PRINT "y="; y
Применяется также частный случай условного оператора оператор условного
перехода: IF <условие> GOTO N ELSE <список операторов> Число N метка. Если
условие выполняется, то происходит переход по метке N, а иначе выполняется список
операторов, стоящих после ELSE. Слово ELSE может и отсутствовать. Тогда
происходит переход к строке, следующей за оператором IF...GOTO.
Пример 3:
CLS
INPUT "Если хочешь каникулы, вводи 1. Если нет, любое число. n=", n
IF n = 1 THEN GOTO 10 ELSE GOTO 20
10 PRINT "Хочу каникулы!": END
20 PRINT "Хочу учиться!"
3. Оператор цикла FOR...TO...NEXT... позволяет реализовать циклический алгоритм,
когда часть программы может быть выполнена много раз подряд. FOR...TO... начало
цикла, NEXT... конец цикла.
То, что стоит между началом и концом цикла, называется телом цикла. Иногда также
применяются вложенные циклы, то есть циклы могут быть вложенными один в другой.
FOR X=A TO B STEP H
...................
NEXT X
Здесь X переменная, A начальное значение переменной, B конечное значение
переменной, H шаг, с которым меняется переменная. Если шаг STEP H отсутствует,
то по умолчанию шаг H=1. При этом переменная X называется счётчиком цикла. Повторение участка программы с шагом H происходит до тех пор, пока XB.
Пример 1: Напечатать на экране текст 20 раз.
CLS
FOR X=1 TO 20
PRINT "С Новым Годом!"
NEXT X
Пример 2: Вычислить сумму n первых членов ряда S=1+1/4+1/9+...+1/n^2
CLS
INPUT "Введите число членов ряда: n=", n
FOR i = 1 TO n
S = S + 1 / i ^ 2
NEXT i
PRINT "Сумма n первых членов ряда равна: S=", S
Пример 3: Нарисуйте 15 разноцветных концентрических окружностей.
SCREEN 7
FOR i = 1 TO 15
CIRCLE (160, 100), i * 6, i
NEXT i
Пример 4: Разлинуйте экран в клеточку.
SCREEN 7
FOR i = 1 TO 32 LINE (0, 10 * i)(320, 10 * i), 15
LINE (10 * i, 0)(10 * i, 200), 15
NEXT i
Примеры 5,6 : Одновременное использование циклического и условного операторов.
Вычисление функций, имеющих ограничения в области определения.
Примечание: Оператор IF...THEN...ELSE в QBasic должен быть записан в одну строку!
Пример 5.
CLS
REM Вычислить функцию y=1/(x^25*x6)
FOR x = 10 TO 10
IF x ^ 2 5 * x 6 = 0 THEN PRINT "При x=1, x=6 функция не определена!"
ELSE y = 1 / (x ^ 2 5 * x 6)
PRINT "x="; x, " y="; y
NEXT x
Пример 6.
CLS
REM Вычислить функцию y=1/SQR(x^23*x+2)
FOR x = 5 TO 5
IF x >= 1 AND x <= 2 THEN PRINT "При 1<=x=<2 функция не определена!"
ELSE y = 1 / SQR(x ^ 2 3 * x + 2)
PRINT "x="; x, " y="; y
NEXT x
Для работы с целыми числами в языке Basic служат следующие операторы:
1) Оператор Y = INT(X) округляет до целого
дробное число X или результат деления A/B Y = INT(A/B).
Тоже самое действие выполняет деление \
X = A \ B
Например, INT(3.5) = 3
X = INT(8/3) = 2
X = 8 \ 3 = 2
2) Оператор MOD делит одно число на другое
и возвращает только остаток деления: A MOD B.
Он вычисляет остаток от деления, например:
1. 14 MOD 5 = 4
2. 11 MOD 4 = 3
3. 17 MOD 3 = 2
4. 15 MOD 2 = 1
Пример 1: Определение чётности или нечётности числа.
CLS
INPUT "Введите число N=", N
IF N MOD 2 THEN PRINT "Число нечётное" ELSE PRINT "Число чётное"
END
Пример 2: Разработать программу нахождения и вывода
на экран всех чисел, оканчивающихся на 5,
и делящихся на 3, из диапазона чисел от 5 до 1000.
CLS
FOR i = 5 TO 1000 STEP 5
x = i MOD 3
IF x = 0 THEN PRINT i;
NEXT i
END
Пример 3: Определите, является ли число простым, или нет.
Натуральное число N называется простым, если его делителями являются только два числа: 1 и N.
CLS
INPUT "Введите число N=", N
IF N <= 3 THEN GOTO 10
d = 2
IF N MOD 2 = 0 THEN GOTO 20
d = 3
FOR i = 1 TO N
d = d + 2
IF N MOD d = 0 THEN GOTO 20
IF N <= d * d THEN GOTO 10
NEXT i
10 PRINT "Число Nпростое."
INPUT "Для продолжения Enter.", z
END
20 PRINT "Число Nсоставное. Оно делится на"; d
INPUT "Для продолжения Enter.", w
END
Некоторые полезные команды QBasic.
Оператор LOCATE a, b указывает позицию экрана (aстрока, bстолбец), начиная с
которой будет печататься текст или число. Обычно используется перед оператором
PRINT. Пример: LOCATE 4, 10: PRINT "Здравствуй, мир!"
Оператор SWAP X1, X2 заставляет переменные X1 и X2 обменяться своими
значениями. Пример:
X = 3
Y = 5
SWAP X, Y
Директива FILES выдает список подкаталогов и файлов в текущем каталоге. Кроме
того, выдается свободная память на жестком диске.
Директива SHELL осуществляет сеанс связи с MSDOS. Возвращение обратно из DOS
в QBasic команда EXIT.
Кроме того, директива SHELL "name" позволяет запускать программу name.exe или
name.com, указанную в кавычках. Эта программа должна находиться в текущем
каталоге, там же, где и *.bas файл. Расширение exe или com можно не указывать.
Графические операторы в QBasic. 1. SCREEN N этот оператор очищает экран и задает графический режим, где N
определяет тип графического режима: N=1,7,8,9,12.
При N=12 в операторе COLOR цвет фона не задается. При N=7 режим экрана 320x200
пикселей и 16 цветов. Режим SCREEN 7 используется весьма часто.
Если задан оператор SCREEN N, то оператор CLS можно не использовать.
2. COLOR C1, C2. COLOR оператор, задающий цвет текста и фона, где C1 задаёт цвет
текста, а C2 цвет фона. C1, C2=015.
Пример использования этого оператора COLOR 14, 1
3. Рисование точки: PSET (X, Y), C, где X,Y координаты точки, C цвет точки. C=0
15. X=160, Y=100 координаты центра экрана для режима SCREEN 7.
Пример: PSET (160, 100), 10
4. Оператор стирания точки: PRESET (X, Y)
5. Рисование линии: LINE (X1,Y1)(X2,Y2), C. Здесь X1,Y1 и X2, Y2 координаты
концов линии, Cцвет. Пример: LINE (30, 100)(120, 150), 10
6. Рисование прямоугольной рамки:
LINE (X1,Y1)(X2,Y2), C, B. Здесь X1,Y1 и X2,Y2кординаты концов левой диагонали,
Cцвет. Пример: LINE (90, 110)(140, 170), 10, B
7. Рисование закрашенного прямоугольника:
LINE (X1,Y1)(X2,Y2), C, BF. Здесь X1,Y1 и X2,Y2кординаты концов левой
диагонали, Cцвет. Пример: LINE (90, 110)(140, 170), 12, BF
8. Рисование окружности: CIRCLE (X, Y), R, C
Здесь X,Y координаты центра, R радиус, C цвет.
Пример: CIRCLE (160, 110), 60, 13
9. Рисование закрашенной окружности:
CIRCLE (X, Y), R, C
PAINT (X, Y), C1, C2. Здесь PAINT оператор закрашивания. X,Y координаты точки
внутри закрашиваемой области, C1 цвет закрашивания, C2 цвет линии границы.
Пример: CIRCLE (160, 130), 50, 13
PAINT (160, 110), 11, 13
10. Рисование дуги и сектора: CIRCLE (X, Y), R, C, Ф1, Ф2
Здесь Ф1, Ф2 начальный и конечный углы дуги в радианах. У сектора перед Ф1 и Ф2
стоит знак минус:
CIRCLE (X, Y), R, C, Ф1, Ф2. Пример (pi=3.14159):
CIRCLE (160, 140), 70, 11, pi / 4, 3 * pi / 4
CIRCLE (160, 140), 60, 10, pi / 4, 3 * pi / 4
11. Рисование эллипса: CIRCLE (X, Y), R, C, , , K
Здесь K эксцентриситет эллипса. K<1эллипс вытянут вдоль большой оси. K>1
эллипс вытянут вдоль малой оси.
Пример: CIRCLE (160, 100), 70, 15, , , 0.5
Пример графики на QBasic: Квадрат, три концентрические окружности и точка.
Программа имеет вид:
SCREEN 7
COLOR 14, 8
PRINT "Пример графики на QBasic:"
LINE (100, 50)(220, 150), 13, B
CIRCLE (160, 100), 20, 11
CIRCLE (160, 100), 30, 12
CIRCLE (160, 100), 40, 14
PSET (160, 100), 15
END
Число Цвет
0 Черный
Установка цветов в операторе COLOR QBasic: 1 Синий
2 Зеленый
3 Голубой
4 Красный
5 Фиолетовый
6 Коричневый
7 Серый
8 Темносерый
9 Светлосиний
10 Светлозеленый
11 Светлоголубой
12 Светлокрасный
13 Светлофиолетовый
14 Желтый
15 Белый
Некоторые сочетания цветов в операторе COLOR QBasic:
1) 14, 8 желтый на темносером фоне;
2) 1, 7 синий на светлосером фоне;
3) 5, 14 фиолетовый на желтом фоне;
4) 4, 11 красный на голубом фоне;
5) 5, 10 фиолетовый на светлозеленом фоне;
6) 15, 5 белый на фиолетовом фоне;
7) 14, 1 желтый на синем фоне;
8) 15, 1 белый на синем фоне;
9) 8, 11 темносерый на голубом фоне; 10) 1, 15 синий на белом фоне.
Вопросы (к урокам 10 и 15)
1. Что такое математическая модель?
2. Какие бывают виды моделей? Приведите примеры физических моделей.
3. Что представляет собой процесс решения задачи на ЭВМ?
4. Что такое программирование и программа?
5. Какие требования предъявляются к программе и какие у неё свойства?
6. Что такое язык программирования и какие языки программирования Вы знаете?
7. Что такое алгоритм и какие он имеет свойства?
8. Какие алгоритмы Вы знаете?
9. Что такое исполнители алгоритмов?
10. Что такое ветвление и цикл? Что такое переменная? Какие бывают типы
переменных?
11. Что такое метод последовательной детализации?
12. Что такое транслятор, компилятор и интерпретатор?
Задачи (к урокам 10 и 15)
1. Нарисуйте блоксхему линейного алгоритма. Приведите пример программы с
линейным алгоритмом на языке QBasic.
2. Нарисуйте блоксхему разветвляющегося алгоритма. Приведите пример программы
на QBasic с разветвляющимся алгоритмом.
3. Нарисуйте блоксхему циклического алгоритма. Приведите пример программы на
QBasic с циклическим алгоритмом. Вычислите сумму первых n членов арифметической
прогрессии.
4. Используя графические операторы QBasic, создайте простейшие изображения
геометрических фигур.
ND
Лекция "QBasic "
Лекция "QBasic "
Лекция "QBasic "
Лекция "QBasic "
Лекция "QBasic "
Лекция "QBasic "
Лекция "QBasic "
Лекция "QBasic "
Лекция "QBasic "
Лекция "QBasic "
Лекция "QBasic "
Лекция "QBasic "
Материалы на данной страницы взяты из открытых истончиков либо размещены пользователем в соответствии с договором-офертой сайта. Вы можете сообщить о нарушении.