Вычисление функций комплексного переменного на языке программирования VBA

Страницы работы

Содержание работы

Новосибирский Государственный Технический Университет

Лабораторная работа № 5

Тема:Функции комплексного переменного и матрицы в VBA

Группа: АП-318       Дата: 3.11.2003

Преподаватель: Веретельникова С.Л.

Студенты: Иванчиков И.В.

                        Вриант: III

г.Новосибирск 2003г.


Задание 1:

Цель: Научиться вычислять функции комплексного переменного на языке программирования VBA.

Задача: По передаточной функции W(s), заданной по вариантам в табл. 6 и 7, построить амплитудно-частотную характеристику X(w) и ее график.

W(s)=3; K=6; T1=0,3; T2=0,03; T3=0,6; W(s)=

Ход работы:

1. Создаём форму.

2. В General Declaration пишем:

       Option Explicit

       Dim w As Integer, i As Integer, znamenat1 As Single

       Dim rew As Single, imw As Single, absw As Single

3. Создаём кнопку1

     Caption=”Начать”

     Процедура CommandButton1_Click()

     w = 0

    For i = 1 To 51

    znamenat1 = (0.03 * w * w + 1) ^ 2 + 0.36 * w * w

    rew = (-6 * (0.03 * w * w + 1) + 1.08 * w * w) / znamenat1

    imw = (1.8 * w * (0.03 * w * w + 1) + 3.6 * w) / znamenat1

    absw = Sqr(rew ^ 2 + imw ^ 2)

    Cells(i + 1, 1).Value = i

    Cells(i + 1, 2).Value = w

    Cells(i + 1, 3).Value = rew

    Cells(i + 1, 4).Value = imw

    Cells(i + 1, 5).Value = znamenat1

    Cells(i + 1, 6).Value = absw

    w = w + 2

Next

4. Создаём кнопку2

      Caption=”Отчистить”

Процедура CommandButton2_Click()

      Лист1.Range("A2:M52").Clear

5. Создаём кнопку3

     Caption=”Выход”

     Процедура CommandButton3_Click()

   End

Вывод: Научились вычислять функции комплексного переменного на языке программирования VBA.
Задание 2:

Цель: Научиться выполнению операций над матрицами и векторами на языке программирования VBA.

Задача: Для матрицы размером n´n найти наибольшую сумму элементов столбца  и сложить его с матрицей.

Ход работы:

1. Создаём форму.

2. В General Declaration пишем:

Option Explicit

Dim i As Integer, j As Integer

Dim a() As Integer, sum() As Integer

Dim maxsum As Integer, nomer As Integer, n As Integer

3. Создаём процедуру UserForm_Activate()

Randomize

CommandButton4_Click

n = InputBox("Укажите размер матрицы:", "Размер", 5)

ReDim a(1 To n, 1 To n)

For i = 1 To n

For j = 1 To n

a(i, j) = Rnd * 5

Cells(j + 2, i).Value = a(i, j)

Next

Next

4. Создаём кнопку1

     Caption=”Новая матрица”

     Процедура CommandButton1_Click()

UserForm_Activate

5. Создаём кнопку2

     Caption=”Начать”

     Процедура CommandButton2_Click()

maxsum = 0

ReDim sum(1 To n)

For j = 1 To n

sum(j) = 0

For i = 1 To n

sum(j) = sum(j) + a(i, j)

Next

Cells(n + 4, j) = sum(j)

If sum(j) > maxsum Then

maxsum = sum(j)

nomer = j

End If

Next

Cells(n + 4, n + 2) = maxsum

For i = 1 To n

    If nomer = i Then

        For j = 1 To n

            Cells(j + 2, n + 2) = Cells(j + 2, i)

        Next

    End If

Next

For i = 1 To n

    For j = 1 To n

        Cells(i + 2, n + 3 + j) = Cells(i + 2, n + 2) + Cells(i + 2, j)

    Next

Next

6. Создаём кнопку3

      Caption=”Отчистить”

Процедура CommandButton3_Click()

Лист2.Range("a3:z26").Clear

7. Создаём кнопку4

     Caption=”Выход”

     Процедура CommandButton4_Click()

End

Вывод: Научились выполнению операций над матрицами и векторами на языке программирования VBA.

Похожие материалы

Информация о работе