Лабораторные работы в QBasic.
методическая разработка по информатике и икт (10,11 класс) по теме
Материал включает пять тем: условный оператор, циклы, массивы, строки, графика.
Скачать:
Вложение | Размер |
---|---|
LR_Uslovnye_operatory.doc | 744.5 КБ |
LR_Cikly.doc | 32 КБ |
LR_Massivy.doc | 30.5 КБ |
LR_Stroki.doc | 43.5 КБ |
LR_Grafika.doc | 37.5 КБ |
Предварительный просмотр:
Лабораторная работа «Условные операторы»
Краткие теоретические сведения:
IF … THEN … ELSE
IF…THEN…ELSE – управляющий оператор, осуществляющий условное ветвление операций, основанное на оценке логического выражения.
Синтаксис | Пример |
IF логическое_выражение_1 THEN [операторы_1] [ELSEIF логическое_выражение_2 THEN Операторы_2] [ELSE [операторы_n]] END IF | IF X>0 THEN PRINT “X – положительное» ELSEIF X<0 THEN PRINT “X – отрицательное» ELSE PRINT “X – ноль” END IF |
SELECT …END SELECT
SELECT…END SELECT – управляющий оператор, выполняющий один из нескольких блоков операторов в зависимости от значения выражения.
Синтаксис | Пример |
SELECT CASE выражение_выбора [CASE список_выражений_1] [операторы_1] [CASE список_выражений_2] [операторы_2] … … [CASE ELSE [операторы_n]] END SELECT | INPUT TestValue SELECT CASE TestValue CASE 1, 3, 5, 7, 9 PRINT «Нечетное» CASE 2, 4 ,6, 8 PRINT «Нечетное» CASE IS <1 PRINT “Очень маленькое” CASE IS >9 PRINT “Очень большое” CASE ELSE PRINT “Не целое значение” END SELECT |
- выражение выбора – любое числовое или символьное выражение
- список выражений – одно или более выражений такого же типа, как и выражение выбора. Ключевое слово CASE должно предшествовать блоку операторов;
Задание к лабораторной работе
1. Написать программу, определяющую принадлежит ли точка с заданными координатами (x,y) заштрихованной области на прилагаемом графике.
2. Оператор выбора
2.1 Написать программу, реализующую простейший калькулятор на 4 действия (ввод первого операнда, знака операции, второго операнда и вывод результата).
2.2. Написать программу, предлагающая пользователю осуществить перевод температуры из шкалы Цельсия в шкалу Фаренгейта или наоборот.
2.3. Для каждой введенной цифры (0 — 9) вывести соответствующее ей название на английском языке (0 — zero, I — one, 2 — two,... ).
2.4. Пусть элементами круга являются радиус (первый элемент), диаметр (второй элемент) и длина окружности (третий элемент). Составить программу, которая по номеру элемента запрашивала бы его соответствующее значение и вычисляла бы площадь круга.
2.5. Написать программу, которая по номеру месяца выдает название следующего за ним месяца (при т = 1 получаем февраль, 4 - май и т.д.).
2.6. Написать программу, которая бы по введенному номеру единицы измерения (1 — дециметр, 2 — километр, 3 — метр, 4 — миллиметр, 5 — сантиметр) и длине отрезка L выдавала бы соответствующее значение длины отрезка в метрах.
2.7. Написать программу, которая по введенному числу от 1 до 12 (номеру месяца) выдает все приходящиеся на этот месяц праздничные дни (например, если введено число 1, то должно получиться 1 января — Новый год, 7 января — Рождество).
2.8. Написать программу, которая бы по введенному номеру единицы измерения (1 — килограмм, 2 — миллиграмм, 3 — грамм, 4- тонна, 5 — центнер) и массе М выдавала бы соответствующее значение массы в килограммах.
2.9. Составить программу для определения подходящего возраста кандидатуры для вступления в брак, используя следующее соображение: возраст девушки равен половине возраста мужчины плюс 7, возраст мужчины определяется соответственно как удвоенный возраст девушки минус 14.
2.10. Вычислить номер дня в невисокосном году по заданным числу и месяцу.
Предварительный просмотр:
Лабораторная работа «Циклы».
Краткие теоретические сведения:
Циклы используются в том случае, когда необходимо несколько раз выполнить один и тот же фрагмент исходного кода. В BASIC существуют три вида цикла: FOR…NEXT, DO…LOOP, WHIL…WEND.
Цикл FOR…NEXT – это цикл с заранее заданным количеством повторений. Можно также выйти из цикла не дожидаясь выполнения всех повторений - воспользовавшись альтернативным выходом из цикла при помощи оператора EXIT FOR. Управление будет передано на оператор, стоящий после NEXT.
‘этот цикл повторяется 5 раз
FOR i%=1 TO 5
PRINT «Оператор цикла»
NEXT i%
Цикл DO…LOOP выполняется до тех пор, пока истинно условие в начале или конце цикла. Из цикла возможен выход так же с помощью оператора EXIT DO, который передает управление на оператор, следующий за LOOP.
‘этот цикл повторяется до тех пор,
‘пока пользователь не введет число,
‘превышающее 10
DO
INPUT “Введите число n”; n
LOOP WHILE n<=10
При использовании цикла WHILE … WEND условие может быть только в начале цикла. Альтернативный выход из цикла невозможен.
WHILE n<=10
INPUT “Введите число n”; n
WEND
Задание к лабораторной работе
- Написать программу печати таблицы перехода от градусов Цельсия к градусам Фаренгейта. (Цельсий=(5/9)*(Фаренгейт-32)).
- Написать программу, рассчитывающую сумму денег по вкладу при вложении начальной суммы с фиксированной процентной ставкой дохода через определенное количество лет. Пользователь должен вводить с клавиатуры начальный вклад, число лет и процентную ставку.
- Написать программу, вычисляющую, сколько лет потребуется для того, чтобы при заданной процентной ставке и величине начального вклада сумма на счете достигла запрашиваемого значения. Для хранения найденного числа лет использовать переменную целого типа (можно отбросить дробную часть значения, полученного в результате расчета).
- Одноклеточная амеба каждые 3 часа делится на 2 клетки. Определить, сколько амеб будет через 3, 6, 9, 12, ..., 24 часа.
- Составить программу для проверки утверждения: «Результатами вычислений по формуле х2 + х + 17 при 0 < х< 15 являются простые числа». Все результаты вывести на экран.
- Составить программу для проверки утверждения: «Результатами вычислений по формуле х2 + х + 41 при 0 < х < 40 являются простые числа». Все результаты вывести на экран.
- Ежемесячная стипендия студента составляет А руб., а расходы на проживание превышают стипендию и составляют В руб. в месяц. Рост цен ежемесячно увеличивает расходы на 3%. Составьте программу расчета суммы денег, которую необходимо единовременно попросить у родителей, чтобы можно было прожить учебный год (10 месяцев), используя только эти деньги и - стипендию.
- Составить программу, которая запрашивает пароль (например, четырехзначное число) до тех пор, пока он не будет правильно введен.
- Вычислить сумму кодов всех символов, которые в цикле вводятся с клавиатуры до нажатия на клавишу Esc.
- Покупатель должен заплатить в кассу S руб. У него имеются монеты и купюры по 1, 5, 10, 50, 100, 500, 1000 и 10000 руб. Сколько монет и купюр разного достоинства отдаст покупатель, если он начинет платить с самых крупных купюр?
Предварительный просмотр:
Лабораторная работа «Массивы»
Краткие теоретические сведения:
Если в программе используется группа однотипных переменных (например оценки каждого учащегося в группе, дневная температура в течение месяца и т.д.), то такую группу однородных объектов удобно представить в виде массива переменных. Отдельные переменные в массиве называются элементами. Каждый элемент имеет номер (индекс), по которому можно обратится к значению элемента. Индекс – числовое выражение целого типа. Размерностью называется число индексов, определяющих элемент массива. Например V(10) – значение в одноразмерном массиве (векторе), T(1, 4) – двухразмерный массив. Количество элементов в массиве называется размером массива.
Каждый массив, используемый в программе, должен быть заранее объявлен оператором DIM или REDIM (если размер массива будет меняться). При объявлении массива можно указывать границы для его размерностей (верхнюю и нижнюю):
DIM A% (10 TO 15)
Пример:
‘поиск максимального элемента в массиве
CONST N=10
DIM a(N) AS INTEGER
FOR i=1 TO N
INPUT “element” ; a(i)
NEXT i
max=a(1)
FOR i=2 TO N
NEXT i
PRINT max
Задание к лабораторной работе
Вариант 1
В одномерном массиве, состоящем из n целых элементов, вычислить:
1) произведение элементов массива с четными номерами;
2) сумму элементов массива, расположенных между первым и последним нулевыми элементами.
Вариант 2
В одномерном массиве, состоящем из n вещественных элементов, вычислить:
1) сумму элементов массива с нечетными номерами;
2) сумму элементов массива, расположенных между первым и последним отрицательными элементами.
Вариант 3
В одномерном массиве, состоящем из n вещественных элементов, вычислить:
1) минимальный элемент массива;
2) сумму элементов массива, расположенных между первым и последним положительными элементами.
Вариант 4
В одномерном массиве, состоящем из n целых элементов, вычислить:
1) номер максимального элемента массива;
2) произведение элементов массива, расположенных между первым и вторым нулевыми элементами.
Вариант 5
В одномерном массиве, состоящем из n вещественных элементов, вычислить:
1) номер минимального элемента массива;
2) сумму элементов массива, расположенных между первым и вторым отрицательными элементами.
Вариант 6
В одномерном массиве, состоящем из n вещественных элементов, вычислить.
1) максимальный по модулю элемент массива;
2) сумму элементов массива, расположенных между первым и вторым положительными элементами.
Предварительный просмотр:
Лабораторная работа «Работа со строками»
Символьные переменные STRING могут включать в себя любые символы из таблицы ASCII. Для присвоения значения символьной переменной значение берется в кавычки.
Над строками можно осуществлять следующие действия – конкатенацию (сложение) и сравнение.
Конкатенация – это сложение двух символьных строк. Для сложения используется символ (+).
Сравнение производится при помощи операторов сравнения: <, >, =. Сравнение строк производится в соответствии с ASCII кодом каждого символа в сравниваемых строках.
Функции для работы со строками
Функция | Назначение | Описание |
LCASE$ (символьное_выражение) | Функция, возвращающая символьную строку, в которой все латинские буквы преобразованы в строчные | CLS READ Word$ PRINT LCASE$(Word$) DATA “THIS IS THE STRING in lower case” |
UCASE$ (символьное_выражение) | Функция, возвращающая символьное значение, в котором все латинские буквы – заглавные. | |
LTRIM$ (символьное_выражение) | Возвращает копию строки с удаленными начальными пробелами | |
RTRIM$ (символьное_выражение) | Возвращает символьную строку с удаленными правыми пробелами | |
SPACE$ (n) | Возвращает строку пробелов длиной n | |
STRING$ (m, n) STRING$ (m, символьное_выражение) | Возвращает строку, заполненную символами данного ASCII – кода или данным символом | m – числовое выражение, длина строки n – числовое выражение в пределах 0-255, код символа – заполнителя символьное_выражение – указывает строку, первый символ которой используется для заполнения строки |
INSTR ([начало, ] строка 1, строка 2) | Возвращает позицию первого вхождения подстроки в указанной строке | Начало – смещение от начала строки Строка 1 – строка, в которой производится поиск Строка 2 – искомая строка |
LEFT$( символьное_выражение, n) RIGHT (символьное_выражение, n) | Возвращает строку, содержащую n левых / правых символов исходной строки | CLS A$ = “QBasic Forever!” B$ = LEFT$ (A$, 5) PRINT B$ |
MID$ (символьное_выражение, начало [, длина]) | Функция, возвращает фрагмент указанной строки | символьное_выражение – указанная строка начало – позиция начала длина – длина фрагмента |
STR$ (числовое выражение) | Возвращает символьное представление числа или числового выражения | |
LEN (символьное_выражение) | Возвращает количество символов данной строки. |
Пример: преобразование имени вида «Имя Фамилия» в форму «Фамилия Имя»
CLS
LINE INPUT “Имя: “; Nm$
Sposs=INSTR(1, Nm$, “ ”)
IF Sposs=0 THEN
PRINT Nm$ ‘введена только фамилия
ELSE
Lastname$=RIGHT$( Nm$, LEN(Nm$)-Sposs)
Firstname$=LEFT$( Nm$, Sposs-1)
PRINT Lastname$; “ ,“; Firstname$
END IF
END
Задание
- Напишите программу, заменяющую два и более пробела в строке на один.
- Напишите программу, выводящую строку в обратном программе.
- Задана строка символов. Подсчитайте количество символов «k» в строке.
- Напишите программу, заменяющую все заглавные буквы в строке на строчные.
- Напишите программу, подсчитывающую количество предложений в тексте.
- Напишите программу, которая подставляет в конце каждой строки ее порядковый номер.
Предварительный просмотр:
Лабораторная работа «Графика»
Для получения графических образов необходимо задать графический экран (например SCREEN 9). Для задания цвета используется оператор COLOR.
Графические операторы языка Qbasic
Оператор | Назначение | Описание |
CLS | Оператор, очищающий экран дисплея | |
COLOR [основной][,[фоновый][,[рамка]] | Оператор, устанавливающий экранные цвета | Основной – цвет текста (0-31); Фоновый – цвет экрана (0-7) Рамка – цвет вокруг экрана (0-15) |
SCREEN 0, 1,2,7,8,9,10,11, 12, 13 | Оператор, устанавливающий режим экрана | |
CIRCLE [STEP](x,y),радиус[,[цвет][,[начало][,[конец] [,коэф-нт]]]] | Графический оператор, рисующий эллипс или окружность с определенным центром и радиусом | (x,y) – экранная координата центра окружности или эллипса Радиус – радиус в текущей координатной системе STEP – указывает, что x, y – относительный центр от текущей позиции курсора Начало, конец – используется для рисование дуг Цвет – атрибут цвета Коэф-нт – коэффициент сжатия. |
LINE [[STEP] (x1,y1) ]-[STEP] (x2, y2) [,[цвет] [,[B [F] ][,стиль]]] | Рисует линию или прямоугольник | (x1, y1) – координаты начала линии (x2, y2) – координаты конца линии Цвет – номер цвета линии В – опция, рисующая прямоугольник BF – опция, рисующая закрашенный прямоугольник Стиль – тип линии |
PRESET, PSET [STEP](x,y)[цвет] | Оператор, рисующий точку на экране | |
DRAW символьное выражение | Оператор, интерпретирующий символьное выражение и рисующий графический объект | Символьное выражение – одна или более команд рисования. |
PAINT [STEP](x,y)[,[краска][,[цвет рамки][, фон ]]] | Оператор, закрашивающий ограниченную площадь указанным цветом или образо. |
Пример:
SCREEN 0
COLOR 1, 2
LOCATE 12, 25: PRINT «Нажмите любую клавишу»
DO: LOOP WHILE INKEY$ =””
SCREEN 1
COLOR 1, 0
LINE (20, 20) – (300, 180), 3, B
LOCATE 12, 7: PRINT «Нажмите любую клавишу»
DO: LOOP WHILE INKEY$ =””
COLOR 2, 1
CIRCLE (200, 100), 60, , 0, 6.28
LOCATE 12, 7: PRINT «Нажмите любую клавишу»
DO: LOOP WHILE INKEY$ =””
SCREEN 0
COLOR 7, 0
CLS
END
Задание
- Напишите программу, выводящую в центр экрана мигающую точку, изменяющую цвет
- Нарисуйте «рожицу» на экране
- Нарисовать график функции y=1/x;
- Нарисовать вложенный в квадрат треугольник;
- Реализовать вращение прямоугольника вокруг своего центра;
- Изобразите небо с разноцветными мигающими звездами.
По теме: методические разработки, презентации и конспекты
Базы данных. Основы работы с СУБД MS Access: разработка и заполнение таблиц, создание связей (лабораторная работа 1)
Документ в формате pdf представляет собой первую часть лабораторной работы и содержит пошаговую инструкцию по началу работы в программе MS Access:создание БД;создание таблиц;заполнение таблиц;создание...
Виртуальные лабораторные работы как один из способов реализации темы самообразования «Использование ИКТ в работе учителя физики»
Использование ИКТ в работе учителя физики...
Лабораторная работа "Измерение работы и мощности в электрической лампочке"(8класс)
Работа выполнена в виде презентации и дополнена подробным конспектом урока. Возможно использование интерактивной доски....
Лабораторная работа №2 Тема: «VBA. Работа со списком»
По выбранным данным в списке в MS Excel осуществляется отбор данных в базе данных MS Access. Код написан на VBA. Результат представлен в MS Excel...
Использование проблемно-диалогической технологии на лабораторных работах.Лабораторная работа ,, Внутреннее строение рыбы"
Особенности проблемно - диалогического обучения и его использование на уроках биологии.Описание этапов внедрения технологии при проведении лабораторныхработ...
Лабораторная работа Особенности внешнего строения и передвижения рыб. Лабораторная работа для 7 класса, в соответствии с программой под руководством В.В. Пасечник
Для того чтобы выяснить как влияет водная среда, на внешнее строение рыб мы выполним лабораторную работу “Внешнее строение и особенности передвижения рыбы”.Лабораторную работу вы будете выполнять в па...
ЛАБОРАТОРНАЯ РАБОТА «ГАЗООБМЕН, ОПРЕДЕЛЕНИЕ УГЛЕКИСЛОГО ГАЗА CO2» НА СОВРЕМЕННОМ ЛАБОРАТОРНОМ ХИМИЧЕСКОМ ОБОРУДОВАНИИ
Авторская разработка лабораторной работы...