АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Задание A

Читайте также:
  1. Window(x1, y1, x2, y2); Задание окна на экране.
  2. В основной части решается практическое задание.
  3. Домашнее задание
  4. Домашнее задание
  5. Домашнее задание
  6. Домашнее задание
  7. Домашнее задание
  8. Домашнее задание
  9. Домашнее задание
  10. Домашнее задание
  11. Домашнее задание
  12. Домашнее задание

Вычислить значение функции Y(x)=x2+ 1,5 при изменении аргумента x в диапазоне Xn ≤ X ≤ Xk с шагом Dx. Вывести таблицу значений X и Y.

Базовая управляющая структура «ЦИКЛ» и её разновидности представлены в приложении А. Для визуального представления алгоритма используем блоки, представленные в работе [10], в приложении Б, в котором указаны обозначение и функциональное назначение некоторых блочных символов графического описания алгоритмов (визуальных алгоритмов).

Визуальное представление алгоритма решения задачи в виде цикла-ПОКА с предусловием дано на рисунке 1.

Это цикл с заданным числом повторений ](Xk – Xn)/Dx[ + 1. Перед первым выполнением цикла необходимо задать начальное значение аргумента X, равное Xn, а затем ](Xk – Xn)/Dx[ + 1 раз выполнить вычисление и вывод значений функции Y. При каждом новом выполнении цикла необходимо изменять аргумент на величину шага, равного Dx. Чтобы процесс не был бесконечным, необходимо задать условие повторения или окончания цикла.

В схеме циклического алгоритма присутствуют обязательные блоки в этих структурах: установка начального значения параметра (блок 4), проверка условия достижения конечного значения параметра (блок 5), изменение параметра (блок 8).

Телом данного циклического процесса являются блоки: 5, 6, 7 и 8. Параметром данного цикла является переменная x.

Представим данную схему циклического алгоритма с помощью цикла типа «ДЛЯ» или цикла с параметром, которыйявляется модификацией цикла «ПОКА» для ситуации, когда заранее известно количество повторений некоторых действий (рис. 2). Все три необходимых блока – блок 4, блок 5 и блок 8 собираются в один – блок 4, в котором указывается начальное, конечное значение параметра и шаг изменения.

 

Рис. 1. Визуальное представление алгоритма табулирования функции

в виде цикла типа «ПОКА»

На рисунке 2 блок 4 для большей наглядности изображен в «развернутом» виде. Общепринятым является компактное изображение такого блока (рис. 3). Именно такое представление мы будем использовать в даль-нейшем.

 

Рис. 2. Визуальное представление алгоритма табулирования функции

в виде цикла типа«ДЛЯ» или цикла с параметром

Рис. 3. Компактное представление цикла с параметром

 

Программа на языке QBasic

REM ЦИКЛ С ИЗВЕСТНЫМ ЧИСЛОМ ПОВТОРЕНИЙ В ЦИКЛЕ

INPUT “введите начальное, конечное знач. X и шаг”; XN, XK, DX

PRINT “XN =”; XN; XK=”; XK;”DX=”; DX

PRINT “ ФУHКЦИЯ Y(X)»

PRINT “-------------------------------“

PRINT “: X: Y:”

PRINT “-------------------------------“

FOR X=XN TO XK STEP DX

Y=X^2+1.5

PRINT USING “: ##.##: ##.##:”; X, Y

NEXT X

PRINT “-------------------------------“

END

Описание среды программирования QBasic приведено в работе [10], в приложении B. Операторы, реализующие структуру «ЦИКЛ», подробно описаны в приложении Б.

Результаты выполнения программы при xn=0, xk=4, Dx=0.5:

 

введите начальное, конечное знач. X и шаг? 0,4,0.5

XN= 0 XK= 4 DX=.5

ФУHКЦИЯ Y(X)

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

: X: Y:

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

: 0.00: 1.50:

: 0.50: 1.75:

: 1.00: 2.50:

: 1.50: 3.75:

: 2.00: 5.50:

: 2.50: 7.75:

: 3.00: 10.50:

: 3.50: 13.75:

: 4.00: 17.50:

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

 

Теперь рассмотрим пример разработки программного кода того же примера, используя объектно ориентированное программирование, реализуемое средствами языка VBA, используя экранные формы.

Создадим графический интерфейс приложения. Чтобы спроектировать наше приложение, нужно взять некоторые стандартные элементы управления, поместить их на форму, затем установить начальные свойства этих элементов и создать код обработки событий, связанных с этими элементами. Последовательность всех этих действий рассмотрена в работах [10] и [11].

Разместим на экранной форме (рис. 4), используя метод «drag-and-drop», следующие стандартные элементы управления: пять элементов типа Label (Label1, Label2, Label3, Label4 и Label5), в которых потом расположим надписи XN, XK, DX, X, Y, изменив свойства элементов Caption; три элемента типа TextBox (TextBox1, TextBox2 и TextBox3) для размещения исходных данных Xn, Xk, Dx; для запуска программы поместим командную кнопку CommandButton1 , в которой расположим надпись «Пуск»; для хранения списка значений аргумента X и функции Y используем два элемента управления ListBox (Список) .

 

Рис. 4. Форма и расположение на ней элементов управления

 

Зададим новые значения свойств элементам управления, размещенным на форме (рис. 4) согласно общепринятым соглашениям. Форма и расположение на ней элементов управления после задания новых свойств этим элементам представлена на рисунке 5.

 

Рис. 5. Форма и её элементы управления после переименования

и изменения свойств

Сгенерируйте процедуру обработки события Click (кликанье левой кнопки мыши) для командной кнопки Cmd. Для этого достаточно быстро кликнуть на этой кнопке два раза левой кнопкой мыши. В результате будет создана нужная нам процедура, в которую надо ввести следующий код.

 

Программный код

Private Sub Cmd_Click()

Dim x As Single

Dim y As Single

Dim strX As String

Dim strY As String

XN = Val(TxtXN.Value)

XK = Val(TxtXK.Value)

DX = Val(TxtDX.Value)

For x = XN To XK Step DX

y = (sqr(2*x)-sin(x))/tan(x)+x

strX = Str(x)

strY = Str(y)

LbxX.AddItem strX

LbxY.AddItem strY

Next x


1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 |

Поиск по сайту:



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