хочу написать!!!

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
TX
Новичок
Новичок
 
Сообщения: 48
Зарегистрирован: 26.04.2004 (Пн) 10:44
Откуда: RUссия

хочу написать!!!

Сообщение TX » 20.10.2004 (Ср) 5:45

дали задание написать прогу, которая бы -
говорила бы с тобой - типа - выбираешь раздел и начинаешь отгадывать то что в этом разделе есть водными вопросами
пример раздел "механика" ->
ты задаешь вопрос - колеса есть - машина говорит "да"(и у нее в базе данных сразу строитса дерево - допустим колеса есть у всей техники в этом разделе)
ты задаешь следующий вопрос - дуло есть - машина говорит "да"(сразу у нее отсееваетса половина техники, которые не имеют дуло) ... и так вот задавая вопросы ты подходишь к концу и комп показывает на кого ты пришел(какую технику ты отгадал)
+ комп может обучатса

какие могут быть предложения

FaKk2
El rebelde gurú
El rebelde gurú
Аватара пользователя
 
Сообщения: 2031
Зарегистрирован: 09.03.2003 (Вс) 22:10
Откуда: Los Angeles

Сообщение FaKk2 » 20.10.2004 (Ср) 7:36

Ну, в голову приходит банальный SELECT...
Для получения ответа надо продемонстрировать качества, позволяющие стать компетентным — внимательность, вдумчивость, наблюдательность, желание активно участвовать в выработке решения.

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 20.10.2004 (Ср) 10:46

Банальный SELECT и не банальная, а хорошо структурированная база :)
Lasciate ogni speranza, voi ch'entrate.

Ennor
Конструктивный критик
Конструктивный критик
 
Сообщения: 2504
Зарегистрирован: 18.12.2001 (Вт) 3:58
Откуда: Калуга -> Москва

Сообщение Ennor » 20.10.2004 (Ср) 10:48

Ага, причем не на SQL, а на Prolog - оно попроще программить будет...

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 20.10.2004 (Ср) 12:43

OMG, у меня исходник именно такой игры был в книге "Знакомьтесь, персональная ЭВМ Корвет". Ещё на том Бейсике, что с номерами строк...
Там было без базы, без SELECT-а и без Пролога...

(Там страниц 10 тетрадного формата, так что набивать не буду, а сканера у меня нету :-( )
Изображение

ta_gena
Бывалый
Бывалый
 
Сообщения: 264
Зарегистрирован: 30.10.2002 (Ср) 12:18
Откуда: Russia

Сообщение ta_gena » 20.10.2004 (Ср) 15:27

Чтобы железяка начала обучатса сдесь никаким SELECT'ом не обойдешся. Тут, наверно, надо WinAPI32 подключать где-нибудь сбоку.

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 20.10.2004 (Ср) 15:51

ta_gena, ты неправ дважды :-)
Во-первых, чтобы железяка начала обучаться, наряду c SELECT-ом нужен и INSERT :-)
А во-вторых, API здесь как раз никаким боком.
Изображение

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 20.10.2004 (Ср) 22:52

Вот, написал за час угадывалку, персистирующую в реестр...

Это должен быть ActiveX EXE, Start Mode -> Standalone

Модуль:
Код: Выделить всё
Option Explicit
Dim Root As Question

Sub Main()
Dim c As Question, s As String, pb As PropertyBag, v As Variant
'Инициализация
v = GetSetting(App.Title, "Data", "Root")
If Len(v) Then
    Dim b() As Byte
    Set pb = New PropertyBag
    b = v
    pb.Contents = b
    Set Root = pb.ReadProperty("Root")
Else
    Set Root = New Question
    Root.Thing = "компьютер"
End If
'Основной цикл
Do
    MsgBox "Задумай предмет"
    Set c = Root
    Do
        If Len(c.Thing) Then
            If MsgBox("Это " & c.Thing & "?", vbYesNo) = vbYes Then
                MsgBox "Ура, ура!"
                GoTo ThingDone
            Else
                Exit Do
            End If
        Else
            If MsgBox("Это " & c.Text & "?", vbYesNo) = vbYes Then
                Set c = c.Yes
            Else
                Set c = c.No
            End If
        End If
    Loop
    s = InputBox("Что это за предмет?")
    Set c.No = New Question
    c.No.Thing = s
    Set c.Yes = New Question
    c.Yes.Thing = c.Thing
    c.Thing = vbNullString
    c.Text = InputBox("Чем " & c.Yes.Thing & " отличается от " & c.No.Thing & "?")
ThingDone:
    If MsgBox("Продолжить?", vbYesNo) = vbNo Then Exit Do
Loop
Set pb = New PropertyBag
pb.WriteProperty "Root", Root
SaveSetting App.Title, "Data", "Root", pb.Contents
End Sub


Класс Question: (Instancing -> 5 - MultiUse, Persistable -> 1 - Persistable)
Код: Выделить всё
Option Explicit

Public Yes As Question
Public No As Question
Public Text As String
Public Thing As String

Private Sub Class_ReadProperties(PropBag As PropertyBag)
If PropBag.ReadProperty("Type", "Leaf") = "Leaf" Then
    Thing = PropBag.ReadProperty("Thing")
Else
    Set Yes = PropBag.ReadProperty("Yes")
    Set No = PropBag.ReadProperty("No")
    Text = PropBag.ReadProperty("Text")
End If
End Sub

Private Sub Class_WriteProperties(PropBag As PropertyBag)
If Len(Thing) Then
    PropBag.WriteProperty "Type", "Leaf", "Leaf"
    PropBag.WriteProperty "Thing", Thing
Else
    PropBag.WriteProperty "Type", "Node", "Leaf"
    PropBag.WriteProperty "Yes", Yes
    PropBag.WriteProperty "No", No
    PropBag.WriteProperty "Text", Text
End If
End Sub
Изображение

TX
Новичок
Новичок
 
Сообщения: 48
Зарегистрирован: 26.04.2004 (Пн) 10:44
Откуда: RUссия

Сообщение TX » 21.10.2004 (Чт) 8:19

ого - круто

TX
Новичок
Новичок
 
Сообщения: 48
Зарегистрирован: 26.04.2004 (Пн) 10:44
Откуда: RUссия

Сообщение TX » 21.10.2004 (Чт) 10:55

а как поклучить mysql ну чтобы окутда он брал готовые ответы


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: AhrefsBot, Google-бот и гости: 17

    TopList