Урок-презентация Основы программирования на языке QBASIC Разработка преподавателя дисциплины: «Информатика и ИКТ» Руф О.Э.
Цели и задачи урока:
Для чего нужны программы? Наше общество на своем пути развития ставит задачи разного уровня и разной сложности. Для достижения целей нам на помощь пришли компьютерные технологии. Вычислительная техника может справиться с глобальным числом задач, но для этого нам нужно научиться составлять программы, ведь любая техника не понимает нашего языка общения.
Основные понятия урока:
Этапы решения задач с элементами программирования Постановка задачи Создание математической модели Разработка алгоритма решения Программирование Тестирование и отладка программы Анализ результатов и сопровождение программы
Для выполнения этапа программирования необходимо: Освоить язык программирования, в который входит: алфавит, семантика и синтаксис языка Правила записи арифметических выражений Стандартные функции языка Операторы команд выполнения
Основы языка Qbasic Алфавит языка QBASIC включает: прописные и строчныебуквылатинского и русского алфавитов; буквы русского алфавита разрешается использовать только в комментариях и текстовых константах; все команды и операторы языка QBASIC записываются только латинскими буквами; арабскиецифрыот 0 до 9; знакиарифметических операций: + сложение / деление - вычитание \ целочисленное деление * умножение ^ возведение в степень; знаки операций отношения: = равно >= больше / равно > больше
Математические функции на языке QBasic. Корень SQR(X) Модуль числа ABS(X) Синус SIN(X) Косинус COS(X) Тангенс TAN(X) Целая часть числа INT(X) Натуральный логарифм LOG(X) случайное число RND(X) показательная (экспоненциальная) функция EXP(X)
Некоторые правила записи арифметических выражений аргумент функции записывается после имени функции и заключается в скобки, пример: ABS(X) в качестве аргумента функции используется число, переменная или выражение, пример: SIN(3.14); COS(A+B); TAN(X^3) При записи дробных чисел вместо запятой используется точка: 1,5 → 1.5; 0,82 → 0.82 или .82; -5,25 → -5.25 При использовании тригонометрических функций угол должен быть выражен в радианах. Формула перевода угла из градусов в радианы: Xрад=Xград · 3,14/180 Экспоненциальная запись числа 3·10-8 → 3E-08; -1,8·1014 →-1.8E+14
Попробуем перевести математическую запись выражения в форму языка программирования Выберите правильный вариант (X+Y^2)/(2*T^3) 1 (X+Y^2)/2*T^3 3 (X+Y^2)/2T^3 2
Порядок вычисления арифметических выражений: действия внутри скобок; вычисление значений функций; возведение в степень; умножение, деление; сложение, вычитание. Операции одного приоритета выполняются последовательно слева направо.
Переменная в программе Переменная - это область в памяти компьютера, где хранится некоторое значение. Каждая переменная имеет имя, значение и тип. Имя переменной обозначается английской буквой, после которой может быть цифра, причем первой стоит буква, например: x, y, z, A1, B2. Пример задания часто употребляемой константы: pi=3.14159.
Типы переменных Типы переменных Символ обозначения Диапазон чисел строковый тип данных $ Ото до32 767 символов целый тип данных (INTEGER) % от -32768 до 32767 длинный целый тип данных (LONG) & от -2147483648 до 2147483647 вещественный тип данных (SINGLE) ! от -3,402823*1038 до -1,401298*10-45 и от 1,401298*10-45 до 3,402823*1038. вещественный тип данных двойной точности (DOUBLE). # от -1,79769313486232*10308 до -4,94065645841247*10-324 и от 4,94065645841247*10-324 до 1,79769313486232*10308.
Установите тип данных информатика 0.235 -26Е-20 -10 LONG
Операция передачи новых данных в переменную называется присваиванием и обозначается в QBasic знаком "=", ПРИМЕР: Х%=255 Константы (числовые и символьные) не меняются в ходе исполнения программы. Значения констант указывается явно, числом или строкой символов в кавычках. ПРИМЕР: А$=«Красноярск»
Переведите математические выражения на язык qbasic а). 2 + |56,75 - 3| 0,532 б). (2,7 + 8,43 ) + 0,354 328,57 – 3,62 : 4,12 в). sin 25 cos 30 tg 45 г). sin 60 + 5,2·|cos π | 4,5 · tg 28
Некоторые основные директивы QBasic REM - обозначает комментарий к программе или команде. CLS-оператор очистки экрана END означает конец программы LOCATE a, b - указывает позицию экрана (a-строка, b-столбец), начиная с которой будет печататься текст или число Оператор SWAP X1, X2 - заставляет переменные X1 и X2 обменяться своими значениями.
Основные операторы языка QBasic. PRINT – оператор вывода. INPUT – оператор ввода. Оператор безусловного перехода GOTO N, где N-метка. В качестве N можно взять любое число, указывающее на номер строки. Исполнение программы будет продолжено с той её части, которая начинается с указанной метки. Строка программы Выполнениестроки PRINT"сумма равна"; 25 Суммаравна 25 Строка программы Выполнениестроки INPUT "Введите число Х="; X Введите Х ?
DIM – оператор описания типа переменной DATA список данных READ список переменных Служат для автоматического ввода данных из программы. Оператор DATA должен предшествовать оператору READ. Чтение данных производится последовательно. Строки программы Врезультате переменным присваиваются значения перечисленные операторомDATA DATA1,2,3,4,5 READА1,А2,А3,А4,А5 А1=1 А2=2 А3=3 А4=4 А5=5
Перейдем к составлению программы Составим программу на основании линейного алгоритма, в которой все операторы (команды) будут выполняться последовательно друг за другом начало R, PI L = 2 * PI * r s= PI * r * r L, S конец REM Вычисление длины окружности и площади круга INPUT "Введите радиус ",r PI = 3.14 L= 2 * PI *r s=PI *r*r PRINT "Длина окружности равна: ",L PRINT "Площадь равна: ",s END
Составьте линейные программы Составьте программу вычисления выражения |x|+x5 , если x=−2 Пользователь вводит время в минутах и расстояние в километрах. Найдите скорость в м/c. Пользователь вводит три числа. Увеличьте первое число в два раза, второе числа уменьшите на 3, третье число возведите в квадрат и затем найдите сумму новых трех чисел.
Ветвление в алгоритмах и программах Запись условного оператора на языке Basic. IF THEN ELSE Если заданное условие истинно, выполняется список операторов, стоящий после THEN, в противном случае выполняется список операторов, стоящий после ELSE. Слово ELSE может и отсутствовать. Тогда происходит переход к строке, следующей за оператором IF...THEN. Условия представляют собой логические соотношения: равенства или неравенства = равно, неравно, > больше, < меньше, >= больше или равно,
Программа с ветвлением - в зависимости от выполнения или невыполнения условия, исполняется либо одна команда, либо другая . начало х Х=2 у конец да нет y = 1 / (x - 2) REM "Вычислитеy=1/(x-2)для всехx" INPUT "Введитеx=", x IF x= 2THEN PRINT"Приx=2 функция не определена!": END y= 1 / (x- 2) PRINT "y=";y END
Задания для творческого решения Составить программу определяющую чётное число или нет (используйте функцию остатка от деления MOD) Составьте программу решения квадратного уравнения Пользователь вводит три числа. Найти сумму тех чисел, которые делятся на 5. Если таких чисел нет, то вывести error.
Циклы в алгоритмах и программах Циклическая программа – описание операторов(команд), которые должны повторяться указанное число раз или пока не выполнено заданное условие. Перечень повторяющихся действий называют телом цикла. Такие циклы называются – циклы со счетчиком. На языке Basic они записываются следующим образом: FOR Счетчик = Нач.Знач. TO Кон.Знач. [STEP шаг] тело цикла NEXT [Счетчик] Параметры указанные в квадратных скобках являются не обязательными (их можно не записывать). По умолчанию шаг цикла равен одному, т.е. каждый раз после прохождения тела цикла счетчик увеличивается на единицу.
Пример циклической программы начало S=0 I=10 S=S+I I=I+1 I
Задачи для самостоятельного решения Выведите на экран таблицу умножения для чисел от 1 до 10. Пользователь вводит ненулевые целые числа до тех пор, пока не введет ноль. Найдите количество четных чисел, которые он ввел Вычислите значения функции f(x)=x2−sinx на отрезке [a;b] с шагом h . Результат представить в виде таблицы.
Функции для работы со строками LEN(s$) Вычисляет длину строки (количество символов). MID$(s$,n,k) Выделяет из строки s$ k символов начиная с n-го символа. VAL(s$) Преобразует числовую часть начала строки в число. STR$(x) Преобразует число в символьную форму. ASC(s$) Вычисляет десятичный код символа. CHR$(x) Преобразует код в символ. INKEY$ Функция опроса клавиш, нажатых на клавиатуре.
С помощью символьных операторов, мы можем: Определять есть ли буква в тексте Является ли введённый текст перевёртышем (например: слово «КАЗАК») Менять в тексте букву на другую, или удалять/добавлять в текст букву Создавать программы шифровки текста по ключевой фразе. И даже создавать бегущую строку на экране
Программа получения предложения в обратном порядке следования символов 10 REM обратный порядок букв 20 ss$="" 30 INPUT "Введите предложение", s$ 40 FOR I=LEN(s$) TO 1 STEP -1 50 ss$=ss$+MID$(s$,I,1) 60 NEXT I 70 PRINT "Исправленная строка: ", ss$ 80 END
Другие возможности Qbasica При работе с большим числом данных одного типа очень удобно использовать массивы. В ряд версий Бейсика встроен специальный подъязык, который позволяет программировать музыку. Работа в графическом режиме
Графические возможности языка QBasic Можно создавать рисунки используя графические операторы Создать робота художника Использовать оператор DRAW ЭТО ТЕМА СЛЕДУЮЩЕГО ЗАНЯТИЯ!!!
Подведение итогов. Сегодня вы познакомились с основами языка программирования QBASIC Рассмотрели основные операторы языка Познакомились с разными возможностями данного языка Изучили правила создания программ Прошли все этапы программирования
Контрольные вопросы Что представляет собой процесс решения задачи на ЭВМ Что такое программирование и программа? Что такое переменная? Какие бывают типы переменных? Приведите пример программы с линейным, развлетвляющимся, циклическим алгоритмами на языке QBasic.
Создайте и реализуйте на практике следующие программы: вычислить факториал числа а (записывается так: а!). Факториал – это произведение чисел от 1 до а. Например, 5!=1*2*3*4*5 2. Вывести на экран фигуру из звездочек: ******* ******* ******* ******* 3. Составить программу подсчитывающую, количество букв "а" в предложении.
УРОК ЗАКОНЧЕН! ВСЕМ СПАСИБО!!!