Программирование на алгометрическом языке QBASIC

Составление схемы алгоритма на языке Бейсик для печати таблицы значений функции при заданном значении. Структурная схема алгоритма типа цикл в цикле для расчета таблиц. Программа итерационного процесса нахождения корня трансцендентного уравнения.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 07.08.2013
Размер файла 94,8 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru

Московский Государственный Открытый Университет

Факультет КиИТ

Курсовая работа по ВТ и Программированию

Выполнил: Ладнюк Данила Николаевич

Специальность: 210601

Шифр: 611209

Москва 2012г

Задача №1

алгоритм функция цикл уравнение

Составить схему алгоритма и программу на языке Бейсик для расчета и печати таблицы значений функции у при заданном значении а.

при х, принимающем значения 0.1; 0.2; 0.4; 0.8; … 51.2, а=3.2

1) Словесный алгоритм решения задачи

Шаг 1. Присвоить а = 3.2, х=х0=0.1.

Шаг 2. Вычислить значение функции . Напечатать х,у.

Увеличить х в два раза.

Шаг 3. Если х<х1=51.2, вернуться к шагу 2, иначе закончить работу.

2) Структурная схема алгоритма решения задачи

3) Программа решения задачи

Программа решения задачи на языка GWBASIC (файл Task1.bas)

0020 DEF FNF(X,A) = A^3*(LOG(A*X))^2/(1+A*X^4)

0100 A = 3.2

0110 PRINT "*******************"

0120 PRINT USING "Task 1 (a=#.#)";A

0130 PRINT "-------------------"

0140 PRINT " X Y "

0150 PRINT "-------------------"

0160 X = 0.1

0170 WHILE X<52

0180 V = FNF(X,A)

0190 PRINT USING " ##.# ###.######";X, V

0200 X = X*2

0210 WEND

0220 PRINT "-------------------"

0230 END

4) Результат решения задачи на компьютере

5) Объяснение полученного результата

В результате выполнения программы вычислены значения заданной функции для заданных значений аргумента. Вычисленные значения выведены на экран компьютера в табличном виде.

6) Описание операторов , встречающихся в программе

Cтроки

программы

Оператор

(пример)

Описание

20

DEF FN

Оператор определения функции

100, 160, 180, 200

A = 3.2

Арифметический оператор: присваивает переменным значения, получаемые в результате вычислений

110, 120, 130,

140, 150, 190, 220

PRINT

Оператор вывода на экран

170

WHILE X<52

Оператор цикла типа WHILE

210

WEND

Оператор конца цикла типа WHILE

230

END

Оператор конца программы

Задача №2

Для данных задачи №1 составить структурную схему алгоритма типа цикл в цикле (вложенные циклы) для расчета и печати 10 таблиц для указанной функции при указанных значениях х и при а=1.1; 1.2; 1.3; … 2.0.

1) Словесный алгоритм решения задачи

Шаг 1. Присвоить а = 1.1.

Шаг 2. Присвоить х=х0=0.1.

Шаг 3. Вычислить значение функции . Напечатать х,у.

Увеличить х в два раза.

Шаг 4. Если х?х1=51.2, вернуться к шагу 3.

Шаг 5. Увеличить а на Да=0.01.

Шаг 6. Если а?2.0, вернуться к шагу 2, иначе закончить работу.

2) Структурная схема алгоритма решения задачи

3) Программа решения задачи

Программа решения задачи на языка GWBASIC (файл Task2.bas):

0020 DEF FNF(X,A) = A^3*(LOG(A*X))^2/(1+A*X^4)

0090 OPEN "Task2Res.txt" FOR OUTPUT AS #1

0100 PRINT#1,"Task 2"

0110 A = 1.1

0120 WHILE A<2.05

0200 PRINT#1,"*******************"

0210 PRINT#1,USING "a=#.#";A

0220 PRINT#1,"-------------------"

0230 PRINT#1," X Y "

0240 PRINT#1,"-------------------"

0250 X = 0.1

0260 WHILE X<52

0270 V = FNF(X,A)

0280 PRINT#1,USING " ##.# ###.######";X, V

0290 X = X*2

0300 WEND

0310 PRINT#1,"-------------------"

0320 A = A+0.1

0330 WEND

0340 CLOSE #1

0400 END

4) Результат решения задачи на компьютере

Выходные данные помещаются программой в файл TASK2RES.TXT.

Содержимое файла после выполнения программы:

Task 2

*******************

a=1.1

-------------------

X Y

-------------------

0.1 6.484003

0.2 3.046067

0.4 0.872535

0.8 0.014994

1.6 0.051817

3.2 0.018118

6.4 0.002745

12.8 0.000315

25.6 0.000031

51.2 0.000003

-------------------

*******************

a=1.2

-------------------

X Y

-------------------

0.1 7.767323

0.2 3.512607

0.4 0.903148

0.8 0.001931

1.6 0.082952

3.2 0.024665

6.4 0.003565

12.8 0.000400

25.6 0.000039

51.2 0.000004

-------------------

*******************

a=1.3

-------------------

X Y

-------------------

0.1 9.143828

0.2 3.978419

0.4 0.909222

0.8 0.002205

1.6 0.123784

3.2 0.032513

6.4 0.004520

12.8 0.000498

25.6 0.000048

51.2 0.000004

-------------------

*******************

a=1.4

-------------------

X Y

-------------------

0.1 10.605720

0.2 4.436555

0.4 0.890586

0.8 0.022398

1.6 0.175400

3.2 0.041751

6.4 0.005615

12.8 0.000608

25.6 0.000058

51.2 0.000005

-------------------

*******************

a=1.5

-------------------

X Y

-------------------

0.1 12.145020

0.2 4.880521

0.4 0.848115

0.8 0.069493

1.6 0.238842

3.2 0.052464

6.4 0.006858

12.8 0.000732

25.6 0.000070

51.2 0.000006

-------------------

*******************

a=1.6

-------------------

X Y

-------------------

0.1 13.753620

0.2 5.304302

0.4 0.783709

0.8 0.150789

1.6 0.315110

3.2 0.064731

6.4 0.008254

12.8 0.000869

25.6 0.000082

51.2 0.000007

-------------------

*******************

a=1.7

-------------------

X Y

-------------------

0.1 15.423370

0.2 5.702389

0.4 0.700262

0.8 0.273833

1.6 0.405170

3.2 0.078629

6.4 0.009811

12.8 0.001021

25.6 0.000096

51.2 0.000008

-------------------

*******************

a=1.8

-------------------

X Y

-------------------

0.1 17.146110

0.2 6.069794

0.4 0.601636

0.8 0.446359

1.6 0.509949

3.2 0.094231

6.4 0.011532

12.8 0.001188

25.6 0.000111

51.2 0.000010

-------------------

*******************

a=1.9

-------------------

X Y

-------------------

0.1 18.913730

0.2 6.402064

0.4 0.492628

0.8 0.676236

1.6 0.630344

3.2 0.111607

6.4 0.013424

12.8 0.001370

25.6 0.000127

51.2 0.000011

-------------------

*******************

a=2.0

-------------------

X Y

-------------------

0.1 20.718180

0.2 6.695287

0.4 0.378942

0.8 0.971432

1.6 0.767223

3.2 0.130825

6.4 0.015492

12.8 0.001567

25.6 0.000144

51.2 0.000012

-------------------

5) Объяснение полученного результата

В результате выполнения программы вычислены значения заданной функции для заданных значений параметра а и заданных значений аргумента. Вычисленные значения выведены в текстовый файл (поскольку имеют значительный объем).

6) Описание операторов , встречающихся в программе

Cтроки

программы

Оператор

(пример)

Описание

20

DEF FN

Оператор определения функции

90

OPEN

Оператор открытия выходного файла для записи результатов работы

100, 200, 210,

221, 230, 240, 220, 280, 310

PRINT

Оператор вывода на экран

110, 250, 270, 200, 290, 320

A = 1.1

Арифметический оператор: присваивает переменным значения, получаемые в результате вычислений

120, 260

WHILE X<52

Оператор цикла типа WHILE

300, 330

WEND

Оператор конца цикла типа WHILE

340

CLOSE

Оператор закрытия файла

400

END

Оператор конца программы

Задача №3

Составить структурную схему алгоритма и программу итерационного процесса нахождения одного корня трансцендентного уравнения с заданными начальными условиями.

для а0=1.1, Д=0.01

1) Словесный алгоритм решения задачи

Отыскание корня трансцендентного уравнения f(x)=0 выполняется в два этапа. Сначала выполняется локализация корня: находится такой отрезок, на котором функция f(x) непрерывна и на концах которого она принимает значения разного знака. Затем выполняется собственно определение корня с заданной точностью половинного деления. Поскольку в функцию f(x) входит как слагаемое функция tg(x), имеющая разрывы 2-го рода в точках x= (k=0, ±1, ±2,…) , то на каждом интервале уравнение f(x)=0 имеет не менее одного корня. Его локализация может быть выполнена смещением от точки х0 в отрицательном (если f(x0)>0 ) или положительном (если f(x0)<0 ) направлении. Дальнейшее отыскание корня методом половинного деления - итерационный процесс уточнения границ отрезка, на котором содержится корень. При этом на каждом шаге длина отрезка уменьшается вдвое до тех пор, пока не станем меньшей, чем заданная точность е.

2) Структурная схема алгоритма решения задачи

3) Программа решения задачи

Программа решения задачи на языка GWBASIC (файл Task3.bas):

0010 DEF FNF(X) = tan(X)-sin(X)+exp(-X)

0020 PRINT "Task 3"

0030 PRINT "Equation tg(x)-sin(x)+exp(-x)=0"

0040 PRINT "--------------------------------"0110 X2 = 1.1

0120 F2 = FNF(X2):

0130 IF F2>0 THEN d = -0.01 ELSE d = 0.01

0140 X1 = X2+d

0150 F1 = FNF(X1)

0200 WHILE F2*F1 > 0

0210 F2 = F1

0220 X2 = X1: X1 = X2+d

0230 F1 = FNF(X1)

0240 WEND

0300 eps = 0.00001

0310 WHILE (X2-X1)>eps

0320 C = (X1+X2)/2

0330 FC = FNF(C)

0340 IF F1*FC>0 THEN X1=C: F1=FC ELSE X2=C: F2=FC

0350 WEND

0360 R = (X1+X2)/2

0400 PRINT USING "Root=##.#####";R

0500 END

4) Результат решения задачи на компьютере

5) Объяснение полученного результата

В результате выполнения программы найден корень а=-1.37010 уравнения с точностью е=0.0001. Найденный корень выведен на экран компьютера.

6) Описание операторов , встречающихся в программе

Cтроки

программы

Оператор

(пример)

Описание

10

DEF FN

Оператор определения функции

20, 30, 40, 400

PRINT

Оператор вывода на экран

120, 140, 150,

210, 220, 230,

300 320, 330,

340, 360

X1 = X2+d

Арифметический оператор: присваивает переменным значения, получаемые в результате вычислений

200, 310

WHILE

Оператор цикла типа WHILE

240, 350

WEND

Оператор конца цикла типа WHILE

130

IF

Условный оператор: в зависимости от выполнения или невыполнения заданного условия выполняет те или иные операторы

500

END

Оператор конца программы

Задача №4

Задан одномерный массив из 20 переменных Xi, принимающих случайные значения в диапазоне -100 - +100. Составить структурную схему алгоритма и программу на языке Бейсик для:

0) вычисления и печати среднего значения ХМ и дисперсии D по формулам:

1)

1) определения и печати наибольшего по абсолютной величине элемента массива Хмакс.

1) Словесный алгоритм решения задачи

Массив целых чисел заданной длины (20) инициализируется случайными значениями в диапазоне от -100 до +100. Затем вычисляются суммы , и определяется , после чего вычисляется среднее значение и дисперсия .

2) Структурная схема алгоритма решения задачи

3) Программа решения задачи

Программа решения задачи на языка GWBASIC (файл Task4.bas):

0050 OPEN "Task4Res.txt" FOR OUTPUT AS #1

0100 PRINT#1, "Task 4"

0200 DIM X(20)

0210 RANDOMIZE TIMER

0300 FOR i=1 TO 20

0310 X(i) = INT(RND*201-100)

0320 PRINT#1, i, X(i)

0330 NEXT

0400 S1=0: S2 = 0: Xmax = 0

0410 FOR i=1 to 20

0420 S1 = S1+X(i)

0430 S2 = S2 + X(i)^2

0440 IF abs(X(i)) > abs(XMax) THEN Xmax = X(i)

0450 NEXT

0500 Xm = S1/20

0510 D = S2/20 - Xm^2

0520 PRINT#1,USING "Xm = ###.###";Xm

0530 PRINT#1,USING "D = ####.###";D

0540 PRINT#1,USING "Xmax = ###";Xmax

0550 CLOSE #1

0600 END

4) Результат решения задачи на компьютере

Выходные данные помещаются программой в файл TASK4RES.TXT.

Содержимое файла после выполнения программы:

Task 4

1 -27

2 -51

3 -91

4 -2

5 -86

6 -48

7 70

8 64

9 -71

10 -74

11 -62

12 -75

13 -13

14 76

15 -26

16 24

17 -74

18 -4

19 46

20 -38

Xm = -23.100

D = 2793.690

Xmax = -91

5) Объяснение полученного результата

В результате выполнения программы создан набор из 20 случайных целых чисел в диапазоне [-100; +100], для которых определено математическое ожидание, дисперсия и найдено максимальное по абсолютной величине значение. Найденные значения вместе с исходными данными выведены в файл Task4Res.txt.

6) Описание операторов , встречающихся в программе

Cтроки программы

Оператор (пример)

Описание

50

OPEN

Оператор открытия выходного файла для записи результатов работы

100, 320,

520, 530, 540

PRINT

Оператор вывода на экран

200

DIM X(20)

Оператор объявления переменной-массива

210

RANDOMIZE TIMER

Оператор инициализации датчика случайных чисел

310, 400,

420, 430,

500, 510

S1 = S1+X(i)

Арифметический оператор: присваивает переменным значения, получаемые в результате вычислений

300, 410

FOR i=1 TO 20

Оператор цикла типа FOR

330, 450

NEXT

Оператор конца цикла типа FOR

440

IF … THEN …

Условный оператор: в зависимости от выполнения или невыполнения заданного условия выполняет те или иные операторы

550

CLOSE

Оператор закрытия файла

600

END

Оператор конца программы

Размещено на Allbest.ru


Подобные документы

  • Решение трансцендентного уравнения методом Ньютона. Построение графика функции. Блок-схема алгоритма решения задачи и программа решения на языке Pascal. Вычисление значения интеграла методом трапеции, блок-схема алгоритма, погрешности вычисления.

    задача [163,4 K], добавлен 16.12.2009

  • Алгоритм решения задачи: расположение значений ветора в порядке возрастания методом "Всплывающих пузырьков". Блок-схема алгоритма решения задачи. Описание блок-схемы, распечатка программы. Операторы: rem, dim, print, input, lprint using, for-next.

    курсовая работа [17,4 K], добавлен 27.02.2010

  • Разработка программы для расчета корня уравнения в определенном отрезке, по количеству итераций. Рисование в окне консоли на языке программирования C++. Реализация вывода графика функции и корня уравнения. Математическая модель и алгоритм решаемой задачи.

    курсовая работа [521,3 K], добавлен 09.07.2017

  • Выполнение арифметических операций, этапы решения задач с помощью ЭВМ - постановка задачи, составление алгоритма решения, программная реализация алгоритма в среде Qbasic. Решение систем линейных уравнений по формулам Крамера. Графический режим Qbasic.

    курсовая работа [101,7 K], добавлен 29.09.2009

  • Составление блок-схемы и алгоритма программы для решения уравнения с приближенным значением корня по методу Ньютона, расчета приближенного значения интеграла по формуле трапеций, вычисления уравнения длины вектора. Типы формул общего члена суммы.

    курсовая работа [41,3 K], добавлен 15.12.2012

  • Анализ заданной сложной функции и разработка структурной схемы алгоритма по её вычислению. Программирование отдельных блоков и структур алгоритма решаемой задачи на языке Паскаль. Полная программа в соответствии с алгоритмом. Результаты расчётов на ПК.

    курсовая работа [59,2 K], добавлен 09.04.2012

  • Составление схемы алгоритма и программы для построения графика временной функции, работающей как в машинном, так и в реальном времени. Пример вычисления степенного ряда с помощью схемы Горнера. Описание переменных программы, листинг, процедуры и функции.

    курсовая работа [67,6 K], добавлен 20.11.2012

  • Методика разработки программного модуля для нахождения методом хорд корня уравнения x3-x-0,3=0 с точностью до 0,001 на языке программирования Visual Basic for Application. Схема программного модуля и описание процедуры обработки кнопки "Найти корни".

    курсовая работа [394,0 K], добавлен 08.09.2010

  • Выбор языка программирования и его обоснование. Определение системных требований. Схема алгоритма и программа на языке Qbasic. Разработка руководства пользователя. Способы конструирования программ. Особенности и принципы динамического программирования.

    курсовая работа [398,8 K], добавлен 21.01.2014

  • Программирование на алгоритмическом языке Turbo Pascal на примере разработки алгоритма и программы расчета временной функции. Выбор, обоснование методов решения. Схемы алгоритмов основной программы и подпрограмм. Распечатка исходных и вычисленных величин.

    реферат [154,8 K], добавлен 15.03.2012

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.