Автор: Пользователь скрыл имя, 17 Декабря 2011 в 13:18, контрольная работа
В контрольной работе содержаться решения трех задач по дисциплине "информатика".
… операторы
NEXT<переменная цикла>
Где <переменная цикла> - числовая переменная, используется как счетчик цикла.
A, B – числовые выражения, определяющие начальное и конечное условие цикла.
C – величина приращения счетчика после каждого цикла.
Если С=1, то обычно приращение не указывается.
Циклы FOR…NEXT могут быть вложенными друг в друга. Тогда каждый оператор цикла должен иметь своё имя переменной цикла (имя счетчика).
Хотя компилятору это безразлично, располагайте операторы между FOR и NEXT, с отступом на 2 или 3 пробела от края, выделяя, таким образом, структуру цикла.
Оператор DIM
Оператор DIM – объявляет массивы.
Формат команды:
DIM {переменная (индексы)} где:
«переменная» - идентификатор, используемый для обозначения массива.
«индексы»
- список, состоящий из одного или большего
числа выражений целого типа, разделенных
запятыми, и определяющих размер массива.
Оператор используется для явного описания размерности массива и количества его элементов путем указания имени массива, за которым следует одно или два числа, заключенных в скобки. Если в программе отсутствует описание массива, то при первом использовании его элемента BASIC по умолчанию резервирует место в памяти для 11 элементов одномерного массива или для 121 элемента двумерного массива. Имена массивов в списке разделяется запятыми.
Пример:
300
DIM A(5), В(4,5)
Значение
индекса элементов массива
Переменные
с индексами разрешается
Пример:
10
DIM C%(10), A$(5,6), D(7)
Где массив С – одномерный массив из целых значений.
Где массив А – двумерный массив из строковых переменных.
Где
массив D – одномерный вещественный массив.
GOSUB и RETURN (подпрограмма).
Подпрограмма представляет собой набор операторов программы, к которому можно обратиться с помощью оператора GOSUB из любой строки программы. Когда операторы подпрограммы исполнены и достигнут оператор RETURN, управление автоматически передается обратно, к оператору в строке, непосредственно следующее из GOBUS.
Формат команды:
GOSUB №(номер строки программы)
RETURN
Пример:
10 REM ”главная программа”
…
…
100 GOSUB 500
110
…
…
200 GOSUB 500
210
…
…
300 STOP
500 REM
…
…
600 RETURN
700 END
Процедура FUNCTION имя [(параметры)] [STATIC]
имя [блок операторов]
Имя = выражение [блок операторов]
END FUNCTION
-
имя – имя функции и
параметры – одна или несколько переменных, указывающих параметры, которые передаются в функцию при ее вызове:
переменная – имя переменной.
тип – тип данной переменной
переменная [()][AS тип][, переменная[()][AS тип]]…
[STATIC] – указывает, что значение локальных переменных функции сохраняются между вызовами функций.
[выражение]
– возвращаемое значение
Задание №3 содержит два вида заданий программирование разветвляющегося и циклического алгоритмов. Первый вид задания имеет нечетные номера вариантов - второй четные. Кроме этого в приложениях №1 и№2 даны среда программирования QBASIC и образец оформления третьего задания. В приложении №3 приводятся встроенные функции реализованные в среде QBASIC.
Пример №1. Программирование разветвляющегося алгоритма.
Пусть имеется программа,
Алгоритм решения данной задачи будет иметь вид:
По
полученному алгоритму запишем
текст программы (используя блочную
форму оператора IF):
CLS
REM С разветвлением
Pi=3.14
INPUT «Введите а»;а
INPUT «Введите х»;х
IF x>0 THEN
y=sin(Pi/(12+x))+x^2-5*a
ELSE
y=sin(Pi/(12+x))+x^2+5*a
END IF
PRINT «y=»;y
END
В данной программе имеются две ветви. В зависимости от значений переменной X процесс вычисления пойдет только по одной из них, другая же в это время будет игнорирована.
Пример №2. Программирование циклического алгоритма.
Пусть необходимо составить программу для вычисления функции:
для х=-1 до 3 с шагом 0.5
Алгоритм решения
данной задачи будет иметь вид:
Приведем один из возможных вариантов
программы:
CLS
REM
Циклическая программа
FOR х=-1 TO 3 STEP 0.5
y=(exp(x^2)+exp(-x^2))/2
PRINT “y(”;x;”)=”;y
NEXT х
END