Главная страница
Навигация по странице:

  • Высшего профессионального образования «ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ УПРАВЛЕНИЯ»

  • Курсач, Вариант 3, часть первая. государственный университет управления


    Скачать 0.97 Mb.
    Названиегосударственный университет управления
    АнкорКурсач, Вариант 3, часть первая.doc
    Дата16.09.2018
    Размер0.97 Mb.
    Формат файлаdoc
    Имя файлаКурсач, Вариант 3, часть первая.doc
    ТипДокументы
    #24654
    КатегорияИнформатика. Вычислительная техника

    Государственное образовательное учреждение
    Высшего профессионального образования
    «ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ УПРАВЛЕНИЯ»

    ЗАДАНИЕ №1


    Составить программу расчета формулы A+B*6



    Рис. 1

    Рис.2
    ПРОГРАММНЫЙ КОД:
    Private Sub Command1_Click()

    Dim A As Single

    Dim B As Single

    A = Val(Text1.Text)

    B = Val(Text2.Text)

    Label4.Caption = A + B * 6

    End Sub


    ЗАДАНИЕ № 2

    Составить программу вычисления Y:

    Y = x*Exp(-x) при 0
    Y = Sin(x) – Exp(x)+5 при x<=-3 или x>8

    Рис. 3
    Рис. 4

    Рис. 5
    Рис. 6
    ПРОГРАММНЫЙ КОД:

    Private Sub Command1_Click()

    Dim x As Single, y As Single

    x = Val(Text1.Text)

    Label2.Caption = ""

    Text2.Text = ""

    Label3.Caption = ""

    Label4.Caption = ""

    If x > 0 And x <= 5 Then

    y = x * Exp(-x)

    Label2.Caption = "Функция вычисляется по формуле"

    Text2.Text = " x * Exp(-x)"

    Label3.Caption = "Получен результат Y ="

    Label4.Caption = Format(y, "###0.0000")

    ElseIf x <= -3 Or x > 8 Then

    y = Sin(x) - Exp(x) + 5

    Label2.Caption = "Функция вычисляется по формуле"

    Text2.Text = "Sin(x) - Exp(x) + 5"

    Label3.Caption = "Получен результат Y ="

    Label4.Caption = Format(y, "###0.0000")

    Else

    Label2.Caption = "Функция не определена"

    Label3.Caption = "Результата нет"

    End If

    End Sub


    ЗАДАНИЕ № 3

    Исходные данные: наименование марки стали, количество выпуска по плану, % выполнения плана. Выдать справку: наименование марки стали, выработано.


    Рис. 7


    Рис. 8



    Рис. 9
    ПРОГРАММНЫЙ КОД:

    Form 1:

    Private Sub Command1_Click()

    Dim name As String

    Dim plan, procent, itog As Single

    name = Text1.Text

    plan = Val(Text2.Text)

    procent = Val(Text3.Text)

    Load Form2 'Unload Form2

    Form2.Show 'Form2.Hide

    Form2.Text1 = name

    Form2.Label5.Caption = Format(((procent / 100) * plan), "#####0.0###")

    End Sub
    Form 2:

    Private Sub Command1_Click()

    End

    End Sub

    ЗАДАНИЕ 4

    Исходные данные: зарплата каждого из К арендаторов за каждый день рабочей недели. Исходные данные определяются путем обращения к датчику случайных чисел. Задание:

    1. Для любого арендатора определить день, в который получена наибольшая зарплата и её значение.

    2. Для любого дня определить среднее значение зарплаты арендаторов.


    Рис. 10

    Рис. 11
    ПРОГРАММНЫЙ КОД:

    Option Explicit

    Dim A() As Currency

    Dim N As Byte, M As Byte

    Dim k1 As Byte, k2 As Byte

    Dim MX1 As Currency
    Private Sub Form_Load()

    Randomize

    End Sub
    Private Sub HScroll1_Change()

    Text1.Text = HScroll1.Value

    VScroll1.Max = HScroll1.Value

    End Sub
    Private Sub HScroll2_Change()

    Text2.Text = HScroll2.Value

    VScroll2.Max = HScroll2.Value

    End Sub
    Private Sub Image3_Click()

    N = CByte(Text1.Text)

    M = CByte(Text2.Text)

    ReDim A(1 To N, 1 To M) As Currency

    Dim i As Byte, j As Byte

    Form1.Picture1.Cls

    For i = 1 To N

    For j = 1 To M

    A(i, j) = CCur(Rnd * 499 + 500)

    Form1.Picture1.Print " "; Format(A(i, j), "000.00"); Tab(10 * j);

    Next j

    Form1.Picture1.Print

    Next i

    End Sub
    Private Sub Image4_Click()

    Dim i As Byte, S As Currency

    k1 = CByte(Text3.Text): k2 = 1: MX1 = A(k1, 1)

    For i = 2 To M

    If A(k1, i) > MX1 Then MX1 = A(k1, i): k2 = i

    Next

    Form1.Picture2.Cls

    Form1.Picture2.Print "Арендатор "; k1; "в день"; k2; " получает максимальную з/п = "; Format(MX1, "000.00")

    End Sub
    Private Sub Image5_Click()

    Dim i As Byte, S As Currency

    k1 = CByte(Text4.Text): S = 0

    For i = 1 To N

    S = S + A(i, k1)

    Next

    S = S / M

    Form1.Picture3.Cls

    Form1.Picture3.Print "В день"; k1; " средняя зарплата арендаторов равна= "; Format(S, "000.00")

    End Sub
    Private Sub Image6_Click()

    End

    End Sub
    Private Sub Option1_Click()

    Image3.Picture = Image2.Picture

    Image4.Picture = Image1.Picture

    Image5.Picture = Image1.Picture

    Image6.Picture = Image1.Picture

    Image3.ToolTipText = "Нажми меня"

    Image4.ToolTipText = ""

    Image5.ToolTipText = ""

    Image6.ToolTipText = ""

    End Sub
    Private Sub Option2_Click()

    Image3.Picture = Image1.Picture

    Image4.Picture = Image2.Picture

    Image5.Picture = Image1.Picture

    Image6.Picture = Image1.Picture

    Image3.ToolTipText = ""

    Image4.ToolTipText = "Нажми меня"

    Image5.ToolTipText = ""

    Image6.ToolTipText = ""

    End Sub
    Private Sub Option3_Click()

    Image3.Picture = Image1.Picture

    Image4.Picture = Image1.Picture

    Image5.Picture = Image2.Picture

    Image6.Picture = Image1.Picture

    Image3.ToolTipText = ""

    Image4.ToolTipText = ""

    Image5.ToolTipText = "Нажми меня"

    Image6.ToolTipText = ""

    End Sub
    Private Sub Option4_Click()

    Image3.Picture = Image1.Picture

    Image4.Picture = Image1.Picture

    Image5.Picture = Image1.Picture

    Image6.Picture = Image2.Picture

    Image3.ToolTipText = ""

    Image4.ToolTipText = ""

    Image5.ToolTipText = ""

    Image6.ToolTipText = "Нажми меня"

    End Sub
    Private Sub VScroll1_Change()

    Text3.Text = VScroll1.Value

    End Sub
    Private Sub VScroll2_Change()

    Text4.Text = VScroll2.Value

    End Sub
    ЗАДАНИЕ №5

    Составить функцию для вычисления:

    Y=1+2/x+(2*3)/x^2+(2*3*2)/x^3+(2*3*2*3)/x^4+…

    принимая, что модуль “x” больше 3. Вычисление продолжать, пока модуль разности между слагаемым и его предыдущим значением больше малой заданной величины (точности вычисления). Напечатать таблицу значении функции “Y” для всех значений аргумента “x” от заданного до заданного конечного с заданным шагом изменений.



    Рис. 12

    Рис. 13

    Рис. 14
    Рис. 15

    Рис. 16
    ПРОГРАММНЫЙ КОД:

    Form 1:

    Private Sub Command1_Click()

    Dim x!

    x! = Val(Text1.Text)

    tv! = Val(Text2.Text)

    Text3.Text = Str(Y(x!, tv!))

    End Sub

    Private Sub Command2_Click()

    End

    End Sub

    Private Sub Command3_Click()

    Load Form2

    Form2.Show

    End Sub
    Form 2:

    Private Sub Command1_Click()

    Dim xn!, xk!, x!, st!, i%

    xn! = Val(Text1.Text)

    xk! = Val(Text2.Text)

    st! = Val(Text3.Text)

    x! = xn!: i% = 0

    Form2.Picture1.Cls: Print tv

    'Print tv!

    Form2.Picture1.Print " Таблица"

    Form2.Picture1.Print "------------------------------------------"

    Form2.Picture1.Print " X Y"

    Form2.Picture1.Print "------------------------------------------"

    Do

    Form2.Picture1.Print " "; Format(x, "00.00"), Format(Y(x!, tv!), "000.000")

    i% = i% + 1

    If i Mod 6 = 0 Then

    Form2.Picture1.Print "------------------------------------------"

    MsgBox "Нажми ОК", 16, "Продолжение таблицы"

    Form2.Picture1.Cls: Print

    Form2.Picture1.Print " Таблица"

    Form2.Picture1.Print "------------------------------------------"

    Form2.Picture1.Print " X Y"

    Form2.Picture1.Print "------------------------------------------"

    End If

    x! = x! + st!

    Loop Until x! > xk!

    Form2.Picture1.Print "------------------------------------------"

    End Sub

    Модуль 1:

    Public tv!

    Function Y(ByVal x As Single, ByRef t As Single) As Single

    Dim pr!, sl!, s!

    Dim m As Byte, zn%

    s = 0: pr = 0: sl = 1: m = 2: zn = 1

    Do While Abs(pr - sl) > t

    s = s + sl

    pr = sl: sl = sl * m / x

    m = m + zn: zn = -zn

    Loop

    Y! = s!

    End Function


    написать администратору сайта