Разработка программной модели целесообразного поведения индивида в стационарных средах (автомат Крылова ("осторожный"))

Автор: Пользователь скрыл имя, 17 Января 2012 в 08:49, курсовая работа

Описание работы

В данной работе проведено моделирование поведение индивида в стационарных средах. Осуществляется это на трех машинном комплексе, функции каждой из четырех машин фиксированы - три клиента моделирует одну из веток исходного автомата, четвертая является сервером, который обрабатывает данные приходящие от клиентов.
Данное техническое устройство обеспечивает целесообразное поведение в стационарной среде.

Содержание

Введение………………………………………………………………….3
Выбор и обоснование средств информационной системы……………4
2.1. Требования к системе и ее контекст. Диаграмма использования UML…………………………………………………………………………5
2.2. Состав технических устройств (ЭВМ, устройства связи), система интерфейсов……………………………………………………………………….5
2.3. Способы взаимодействия пользователя с системой, организация вычислительных процессов………………………………………………………6
2.4. Состав информационного и программного обеспечения…………...8
2.4.1. Структура и форматы данных………………………………………8
2.4.2. Описание процедур………………………………………………...9
Указания по использованию программы…………………………15
Результаты эксперимента…………………………………………16
Взаимодействие процедур и данных……………………………...17
Ш. Заключение…………………………………………………………………...19
3.1.Достоинства и недостатки разработанной информационной системы…………………………………………………………………………...19
3.2. Пути совершенствования разработанного программного продукта…………………………………………………………………………..19
3.3. Рекомендации пользователю………………………………………...19
IV. Используемая литература…………………………………………………...20
Приложение……………………………………………………………………....21

Работа содержит 1 файл

курсач.doc

— 273.00 Кб (Скачать)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

    Приложение

    Client 1: 

    Public sostoianie As Integer

    Public deistvie As Integer

    Public glubina As Integer

    Public penalty As Integer 

    Private Sub butVihod_Click()

        socetCl.Close

        End

    End Sub 

    Private Sub butSoed_Click()

         socetCl.Connect txtHost.Text, Val(txtPort.Text)

         labelKL.Caption = "Создание соединения"

         glubina = Val(txtGlubina.Text)

         Timer1.Interval = Val(txtVremia1.Text)

    End Sub

    Private Sub Form_Load()

        sostoianie = 0

    'penalty = 0

    End Sub

    Private Sub socetCl_DataArrival(ByVal requestID As Long)

        Dim strData As String

        Dim str() As String

        socetCl.GetData strData

        str = Split(strData, ";")

        labelKL = strData

        deistvie = Val(str(0))

        sostoianie = Val(str(1))

        Client.Refresh

    End Sub

    Private Sub socetCl_Close()

        labelKL.Caption = "шаги закончились"

        Timer1.Enabled = False

    End Sub

    Private Sub Timer1_Timer()

        Dim ocenkasost As Double

        Dim veroiatnost As String

        Dim iNum As Integer

        Randomize (1)

        ocenkasost = Rnd()

        iNum = Rnd * 1

        Randomize (1)

        veroiatnost = str(Int(ocenkasost * 100) / 100) + ";"

        veroiatnost = veroiatnost + str(txtVer1.Text) + ";"

        veroiatnost = veroiatnost + str(Int(iNum * 100) / 100)

        txtTekOcenka.Text = veroiatnost

        socetCl.SendData (veroiatnost)

        Client.Refresh

    End Sub 

    Private Sub Form_Paint()

        Dim h As Integer

        Dim w As Integer

        Dim i As Integer

        Dim d As Integer

        Dim r As Integer

        Dim x As Integer

        Dim y As Integer

       

        h = Client.Height

        w = Client.Width

        q = Val(txtGlubina.Text)

        d = h / 2 / q

        If w > d Then

            r = d / 2

        Else: r = w / 2

        End If 

       x = w / 1.3

        y = h / 4

        For i = 0 To q - 1

            Circle (x, y + i * d), r, vbGreen

            If i = sostoianie And deistvie = 0 Then

                For j = 0 To r

                    Circle (x, y + i * d), j, vbGreen

              Next

            End If

        Next

    End Sub 
     

      Client 2:

    Public sostoianie As Integer

    Public deistvie As Integer

    Public glubina As Integer 

    Private Sub butVihod_Click()

        socetCl.Close

        End

    End Sub

    Private Sub butSoed_Click()

        socetCl.Connect txtHost.Text, Val(txtPort.Text)

        labelKL.Caption = "Создание соединения"

         glubina = Val(txtGlubina.Text)

        Timer2.Interval = Val(txtVremia2.Text)

    End Sub

    Private Sub Form_Load()

        sostoianie = 0

    End Sub

    Private Sub socetCl_DataArrival(ByVal requestID As Long)

        Dim strData As String

        Dim str() As String

        socetCl.GetData strData

        str = Split(strData, ";")

        labelKL = strData

        deistvie = Val(str(0))

        sostoianie = Val(str(1))

        Client.Refresh

    End Sub 

    Private Sub socetCl_Close()

        labelKL.Caption = "шаги закончились рролд"

        Timer2.Enabled = False

    End Sub 

    Private Sub Timer2_Timer()

        Dim ocenkasost As Double

        Dim veroiatnost As String

        Dim iNum As Integer

        Randomize (2)

        ocenkasost = Rnd()

        iNum = Rnd * 1

        Randomize (2)

        veroiatnost = str(Int(ocenkasost * 100) / 100) + ";"

        veroiatnost = veroiatnost + str(txtVer2.Text) + ";"

        veroiatnost = veroiatnost + str(Int(iNum * 100) / 100)

        txtTekOcenka.Text = veroiatnost

        socetCl.SendData (veroiatnost)

        Client.Refresh

    End Sub 

    Private Sub Form_Paint()

        Dim h As Integer

        Dim w As Integer

        Dim i As Integer

        Dim d As Integer

        Dim r As Integer

        Dim x As Integer

        Dim y As Integer

        h = Client.Height

        w = Client.Width

        q = Val(txtGlubina.Text)

        d = h / 2 / q

        If w > d Then

            r = d / 2

        Else: r = w / 2

        End If

        x = w / 1.3

        y = h / 4

        For i = 0 To q - 1

            Circle (x, y + i * d), r, vbGreen

            If i = sostoianie And deistvie = 1 Then

                For j = 0 To r

                    Circle (x, y + i * d), j, vbGreen

                Next

            End If

        Next

    End Sub

      Client 3:

    Public sostoianie As Integer

    Public deistvie As Integer

    Public glubina As Integer

    Private Sub butVihod_Click()

        socetCl.Close

        End

    End Sub 

    Private Sub butSoed_Click()

        socetCl.Connect txtHost.Text, Val(txtPort.Text)

        labelKL.Caption = "Создание соединения"

        glubina = Val(txtGlubina.Text)

        Timer3.Interval = Val(txtVremia3.Text)

    End Sub

    Private Sub Form_Load()

        sostoianie = 0

    End Sub

    Private Sub socetCl_DataArrival(ByVal requestID As Long)

        Dim strData As String

        Dim str() As String

        socetCl.GetData strData

        str = Split(strData, ";")

        labelKL = strData

        deistvie = Val(str(0))

        sostoianie = Val(str(1))

        Client.Refresh

    End Sub

    Private Sub socetCl_Close()

        labelKL.Caption = "шаги закончились"

        Timer3.Enabled = False

    End Sub 

    Private Sub Timer3_Timer()

        Dim ocenkasost As Double

        Dim veroiatnost As String

        Dim iNum As Integer

        Randomize (3)

        ocenkasost = Rnd()

        iNum = Rnd * 1

        Randomize (3)

        veroiatnost = str(Int(ocenkasost * 100) / 100) + ";"

        veroiatnost = veroiatnost + str(txtVer3.Text) + ";"

        veroiatnost = veroiatnost + str(Int(iNum * 100) / 100)

        txtTekOcenka.Text = veroiatnost

        socetCl.SendData (veroiatnost)

        Client.Refresh

    End Sub

    Private Sub Form_Paint()

        Dim h As Integer

        Dim w As Integer

        Dim i As Integer

        Dim d As Integer

        Dim r As Integer

        Dim x As Integer

        Dim y As Integer

        h = Client.Height

        w = Client.Width

        q = Val(txtGlubina.Text)

        d = h / 2 / q

        If w > d Then

            r = d / 2

        Else: r = w / 2

        End If

        x = w / 1.3

        y = h / 4

        For i = 0 To q - 1

            Circle (x, y + i * d), r, vbGreen

            If i = sostoianie And deistvie = 2 Then

               For j = 0 To r

                    Circle (x, y + i * d), j, vbGreen

                Next

            End If

        Next

    End Sub 
     

    Server:

    Option Explicit

    Dim work As Boolean

    Dim ocenka1 As Double

    Dim porog1 As Double

    Dim generator1 As Double

    Dim ocenka2 As Double

    Dim porog2 As Double

    Dim generator2 As Double

    Dim ocenka3 As Double

    Dim porog3 As Double

    Dim generator3 As Double

    Public WithEvents krug As Class1 

    Private Sub Form_Load()

        socet1.LocalPort = 50001

        socet1.Listen

        socet2.LocalPort = 50002

        socet2.Listen

        socet3.LocalPort = 50003

        socet3.Listen

        labelKlient1.Caption = "..."

        labelKlient2.Caption = "..."

        labelKlient3.Caption = "..."

        labelClient.Caption = "жду запроса..."

    End Sub

    Private Sub butVihod_Click()

        socet1.Close

        socet2.Close

        socet3.Close

        End

    End Sub 

    Private Sub socet1_ConnectionRequest(ByVal requestID As Long)

        labelClient.Caption = "Запрос на соединение"

        If socet1.State <> sckClosed Then

            socet1.Close

            socet1.Accept (requestID)

        End If

        lblClient1.Caption = "Клиент1@50001"

        labelKlient1.Caption = "Соединение установлено"

Информация о работе Разработка программной модели целесообразного поведения индивида в стационарных средах (автомат Крылова ("осторожный"))