- •1.Этапы подготовки и решения задач на эвм
- •1.Этапы подготовки и решения задач на эвм
- •Характеристика переменных задач.
- •Основные этапы процесса подготовки и решения задач на эвм
- •2 . Алгоритмизация вычислительных процессов
- •2.1 Графический метод описания алгоритмов
- •2.2 Виды вычислительных процессов Основные структуры алгоритмов
- •2.2.1. Вычислительный процесс линейной структуры
- •2.2.2. Вычислительный процесс разветвляющейся структуры
- •2.2.3.Вычислительный процесс циклической структуры.
- •3.Языки программирования.
- •4.Основные понятия языка qbasic
- •4.1.Алфавит
- •4.2.Структура данных
- •4.3.Операторы языка
- •4.4.Операторы ввода-вывода
- •5.Примеры работы с символьными переменными.
- •6.Работа с файлами
- •6.1.Требования к имени файла
- •6.2.Операции над файлами
- •6.3.Открытие файла
- •6.4.Запись в файл
- •6.5.Чтение из файла
- •6.6.Изменения данных в файле
- •6.7.Добавление данных в файл
- •Команда Действие
- •Cn Значение нового цвета. Действует во всех дальнейших командах до нового назначения
- •О u(p)сновные команды перемещения изображены на рисунке.
- •9.Методические указания
- •10. Тестовые задания по теме:
- •11.Краткий справочник по языкуQbasic.
- •12.Сообщения об ошибках и их коды
4.2.Структура данных
Используемые различные типы данных имеют большое значение при программировании, т.к. определяют способы и алгоритмы обработки этих данных.
Под типом данных понимается множество допустимых значений переменных, а также совокупность операций над ними.
В QBASIC можно выделить следующие группы типов:
Целые типы;
Вещественные типы;
Логические данные;
Массив;
Символьные данные;
Файлы.
Целые типы. В QBASIC введено два стандартных целых типа, которые отличаются форматами и диапазонами допустимых значений.
Тип |
Значение |
Формат |
% - INTEGER |
От -32768 до 32767 |
Знаковый |
& - LONGINT |
От -231 до 231-1 |
Знаковый |
ABS(N) |
Абсолютная величина N |
A \B |
Целая часть от деления |
A MOD B |
Остаток от деления |
+ |
Сложение |
* |
Умножение |
- |
Вычитание |
^ |
Возведение в степень |
FIX(X) |
Получение целой части вещественного числа X |
CINT(X) |
Округление до целого вещественного числа X |
CLNG(X) |
Округление до длинного целого вещественного числа X |
INT(X) |
Получение наибольшего целого числа, которое меньше или равно X |
Вещественные типы. В QBASIC определено два стандартных вещественных типа, которые отличаются форматами и диапазонами допустимых значений: вещественные константы одинарной точности и вещественные константы двойной точности.
- вещественные константы одинарной точности тип REAL -вещественные числа, запись которых содержит до семи десятичных цифр и десятичную точку. Признаком вещественной константы одинарной точности может служить восклицательный знак в конце записи числа. Эти константы, могут быть записаны в экспоненциальной форме с использованием буквы “Е”. В этом случае число задаётся указанием мантиссы, записанной в виде целого числа или числа с десятичной точкой, и порядка числа, отделяемого от мантиссы буквой “Е”. Знак константы определяется знаком мантиссы, а значение есть произведение мантиссы на степень числа 10, показателем которой является указанный порядок числа. Допустимый диапазон представления чисел:
8.43^10-37<1х1<3.37*1038
- вещественные константы двойной точности тип DOUBLE- числа, содержащие более семи, но не более семнадцати десятичных цифр и десятичную точку. Признаком вещественной константы двойной точности может служить также знак # в конце записи или буква “D” вместо “Е” при экспоненциальной форме записи. Допустимый диапазон представления чисел:
4,19*10-307<1х1<1.67*10308
Результат работы функции сложения, умножения, деления, вычитания и возведения в степень вещественных чисел даёт вещественное число. Кроме этого, используются следующие функции, результат которых - вещественное число:
Функция |
Назначение |
ABS(X) |
Абсолютное значение X |
ATN(X) |
Арктангенс X |
COS(X) |
Косинус X |
SIN(X) |
Синус X |
TAN(X) |
Тангенс X |
EXP(X) |
Ex |
LOG(X) |
Натуральный логарифм |
SQR(X) |
Квадратный корень X |
RND(X) |
Получение случайного числа |
CDBL(X) |
Представление числа с двойной точностью |
CSNG(X) |
Представление числа с одинарной точностью |
NOT – логическое отрицание;
OR – объединение, или логическое сложение; дизъюнкция
AND – пересечение, или логическое умножение; конъюнкция
XOR – исключение ИЛИ или строгая дизъюнкция
EQV – эквивалентность;
IMP – импликация, или следование
Результат работы операций приведи в таблице значений:
A |
NOT A |
B |
A AND B |
A OR B |
A XOR B |
A EQV B |
A IMP B |
0 |
1 |
0 |
0 |
0 |
0 |
1 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
0 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
При обработке логических данных используются также операции сравнения, которые называются логическими отношениями:
+, <>, ><, >, <, <=, >=.
Результат операции логического отношения равен минус единице, если задаваемое отношение выполняется, и нулю, если условие ложно.
Массив представляет собой набор однородных данных (чисел, символов) имеющий имя и последовательную нумерацию. Массив может быть одномерным или многомерным. Чтобы задать массив, необходимо
использовать оператор DIM, значения индексов массива и тип компонентов массива.
Например, объявление одномерного массива и целых чисел может быть задано следующим образом:
DIM N%(20)
Интерпретатор устанавливает минимальное значение индекса, равное нулю.
Запись
DIM AA(5,7), х(4)
объявляет двумерный массив АА из 48 чисел обычной точности и одномерный массив из пяти таких чисел.
Оператор OPTIN BASE устанавливает минимальное значение индексов массива. Он должен быть указан до объявления массивов:
OPTIN BASE n
где n равно единице или нулю.
Оператор ERASE отменяет объявление массивов, сделанных оператором DIM:
ERASE список имен массивов
Символьные переменные и строки. Для того чтобы показать, что переменная имеет такой тип, необходимо к имени этой переменной добавить знак $: А$, DF$, STR$ и т. д. Этот тип является порядковым и значения символьных переменных могут сравниваться между собой (>, <, > =,,< =), например "viv" < "viva". Возможна между ними и конкатенация (+):
"мото" + "цикл" = "мотоцикл".
К символьным переменным относятся все прописные латинские буквы "А",
"В", "С", ...,"X" , строчные "а", "b", "с", ..., "k", цифры "0", "1", "2", ..., "9"; знаки препинания, всевозможные скобки, русские буквы и т. д. В программах их значения всегда заключаются в апострофы. Внутри каждого такого ряда коды символов упорядочены:
“А” < “В” < “С” < ...< ”Z”
“a” < ”b” < ”c” <…< ”z”
“О” < “1” < “2”< … < “9”
“А” < “Б” < “В”< ... < “Я”
“а” < “б” < “в” < … < “я”
коды всех строчных букв меньше всех прописных.
Для работы с таким типом данных часто используются функции, аргументы которых могут быть символьными переменными:
• преобразование кодов CHR$ и ASC;
• выделение определенной части символьных выражений LEFT$, MID$ и
RIGHT$;
• обмен символьными выражениями SWAP;
• формирование строки одинаковых знаков STRING$ и SPACE$;
• обработка в тексте численных выражений VAL и STR$;
• перевод чисел из одного счисления в другое OCT$ и HEX$;
- определение количественных характеристик LEN и INSTR
Функция |
Назначение |
CHR (N) |
Преобразование кода N в символьное представление |
ASC (X$) |
Преобразование символов X$ в десятичный код |
LEFT$ (X$,N) |
Выделение N символов, начиная с самого левого символа в символьном выражении Х$ |
MID$ (X$,N,M) |
Выделение М символов, начиная с N-гo символа в символьном выражении Х$ (М может быть опущено) |
RIGHT$ (X$,N) |
Выделение N символов, начиная с самого правого символа в символьном выражении Х$ |
SWAP X$,Y$ |
Обмен символьными выражениями Х$ и Y$ |
STRING$ (N,S) |
Формирование строки из N одинаковых символов |
SPACE$ (N) |
Формирование строки из N пробелов |
OCT$ (N) |
Перевод десятичных чисел в восьмеричное счисление |
HEX$ (N) |
Перевод десятичных чисел в шестнадцатеричное счисление |
LEN (X$) |
Определение длины символьного выражения |
STR$ (N) |
Переводит число в символьную форму, резервируя перед символьным выражением один пробел для знака |
INSTR (N,$,Y$) |
Поиск подстроки Y$ в строке Х$ начиная с N-гo символа N можно опустить |
Файл. Одним из типов данных в QBASIC является файловый тип, представляющий собой последовательность связанных между собой однотипных компонентов - записей, расположенных на внешнем носителе. Запись рассматривается как единое целое.
В QBASIC имеется 2 категории файлов, работа с которыми отличается друг от друга:
• последовательные;
• с произвольным доступом.