Basic

Basic

Задание.

Разработать программу для построения графика функции y = a-x.

Программа должна:

n обеспечивать построение графика заданной функции на экране ПК;

n производить масштабирование аргумента и значения функции;

n строить оси координат, наносить на них разметку с определенной дискретностью и подписывать их.;

n обеспечивать ввод коэффициентов заданной функции в диалоговом режиме с клавиатуры, а область значений аргумента из файла «dan.txt»;

n выводить значения функции в файл «dat.txt»;

n использовать процедуру – функцию для определения заданной функции;

n использовать процедуру – подпрограмму для построения осей координат, масштабной сетки, масштабирования.

Описание программы.

Для корректной работы программы необходимо иметь в каталоге бэйсика следующие файлы:

KURS_T.BAS

DAN.TXT

После входа в QuickBASIC необходимо открыть файл KURS_T.BAS. Для чего необходимо нажать клавишу «Alt», после чего в верху диалогового окна выделится пункт меню «Файл». Далее необходимо войти в него нажатием клавиши «Enter». После нажатия клавиши «Enter» высветится список подпунктов из которых необходимо выбрать подпункт «Открыть . . .» с помощью клавиш «­», «¯» и нажать «Enter».

После входа в подпункт меню «Открыть . . .» появится окно со списком файлов с расширением *.BAS. Для открытия файла необходимо нажать клавишу «Tab» и выбрать клавишами «­», «¯» файл с названием KURS_T и нажать клавишу «Enter».

После открытия файла KURS_T в диалоговом окне появится текст программы. Для запуска программы необходимо нажать функциональную клавишу F5, а для перезапуска программы одновременное нажатие клавиш «Shift» + F5.

После окончания работы программы необходимо выйти из бейсика, для чего необходимо войти в пункт меню «Файл» и подпункт «Выход».

Основным модулем программы является файл KURS_T.BAS состоящий из главной программы, процедуры – подпрограммы и процедуры – функции.

Главная программа осуществляет обращение к файлам, управление процедурами и построение графика заданной функции.

Процедура – подпрограмма осуществляет построение координатной сетки и ее разметки.

Процедура – функция позволяет рассчитать значение заданной функции.

Файл DAN.TXT необходим для ввода из него интервала изменения х.

После завершения программы появляется файл DAT.TXT в котором находятся значения функции.

Текст программы

DECLARE SUB xoy (d!, t!, a!, b!)

DECLARE FUNCTION y! (b!, a1!)

CLS : SCREEN 9

COLOR 10

PRINT " - x"

PRINT "Функция у = а"

INPUT "Введите коэффициент a"; a1

n$ = "dan.txt"

OPEN n$ FOR INPUT AS #1

INPUT #1, a: INPUT #1, b: PRINT "x э ["; a; ","; b; "]"

CLOSE

i1 = 0: d = (300 * a) / b

DIM y1(1400)

FOR i = a TO b

i1 = i1 + 1

y1(i1) = y(i, a1): 'PRINT y1(i1)

NEXT i

i1 = 0

t = y1(1)

d1 = 160 / y1(1)

CALL xoy(d, t, a, b)

OPEN "dat.txt" FOR OUTPUT AS #2

PRINT #2, " - x"

PRINT #2, "Функция y = "; a1

PRINT #2, "x э ["; a; ", "; b; "]"

FOR i = a TO b

i1 = i1 + 1

PRINT #2, "y("; i; ")= "; y1(i)

NEXT i

CLOSE

PSET (300 + d, 175 - y1(1) * d1)

FOR i = a + 1 TO b

LINE -(300 + i * d, 175 - y1(i) * d1)

NEXT i

END

SUB xoy (d, t, a, b)

LINE (300, 180)-(300, 0), 10

LINE (290, 175)-(650, 175), 10

FOR mx = 300 TO 625 STEP d

LINE (mx, 175)-(mx, 10), 3

NEXT mx

FOR my = 175 TO 10 STEP -16

LINE (300, my)-(625, my), 3

NEXT my

COLOR 13: LOCATE 1, 37: PRINT "y"

COLOR 13: LOCATE 14, 78: PRINT "x"

LOCATE 14, 35: PRINT 0: LOCATE 14, 74: PRINT b

LOCATE 2, 33: PRINT t

END SUB

FUNCTION y (b, a1)

y = a1 ^ (-b)

END FUNCTION

Вариант задания.

Вариант № 2, I четверть.

- x

Функция y = 2

x э [ 2 , 20 ]

y( 2 )= .125

y( 3 )= .0625

y( 4 )= .03125

y( 5 )= .015625

y( 6 )= .0078125

y( 7 )= 3.90625E-03

y( 8 )= 1.953125E-03

y( 9 )= 9.765625E-04

y( 10 )= 4.882813E-04

y( 11 )= 2.441406E-04

y( 12 )= 1.220703E-04

y( 13 )= 6.103516E-05

y( 14 )= 3.051758E-05

y( 15 )= 1.525879E-05

y( 16 )= 7.629395E-06

y( 17 )= 3.814697E-06

y( 18 )= 1.907349E-06

y( 19 )= 9.536743E-07

y( 20 )= 1.563283E-08

Список используемой литературы.

1. Т.Н. Быля, О.И. Быля «Изучаем информатику, программируя на Бэйсике», издание 2-е, исправленное, «Айрис рольф», 1997.