Тест на наличие болезни (чтение с текстового файла) - Visual Basic .NET
Формулировка задачи:
Доброго времени суток.
Требуется разработать тест, который считывает с файла "Вопросы" - все вопросы и один за одним выводит их на форму, только после того как нажата кнопка "Да" или "Нет" открывается следующий вопрос.
И потом после всех вопросов (13 их), выводится диагноз, считывается файл "Ответы", где идет обозначение ответов "ДА".
И после всего это во второй текстбокс выводится один из файлов с описанием той или иной болезни.
____
Форму создал, добавил все элементы.
Создал текстовые файлы с вопросами и ответами и кинул их в Debug.Насчет структуры файлов "Вопросы" и "Ответы" не уверен.
_____
Так же написал код, но закончить не знаю как.Коменнтари в коде есть.
Помогите пожалуйста,код:
Спойлер
Спойлер
Так же прикладываю проект.Болезни.rar
Решение задачи: «Тест на наличие болезни (чтение с текстового файла)»
textual
Листинг программы
Imports System.IO Public Class Form1 Private questions() As String Private rezult() As Integer Private qu As Integer Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Dim MyFile1 As String = "Вопросы.txt" TextBox1.Clear() TextBox2.Clear() Button1.Enabled = False Button2.Enabled = False If File.Exists(MyFile1) Then questions = File.ReadAllLines(MyFile1, System.Text.Encoding.Default) ReDim rezult(questions.Length - 1) Else MsgBox("Файл Вопросы.txt не найден!") End If End Sub Private Sub Start_Click(sender As System.Object, e As System.EventArgs) Handles Button3.Click qu = 0 TextBox1.Text = questions(qu) TextBox2.Clear() Button1.Enabled = True Button2.Enabled = True Button3.Enabled = False End Sub Private Sub Yes_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click qSecond(True) End Sub Private Sub No_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click qSecond(False) End Sub Private Sub qSecond(ByVal bb As Boolean) If bb Then rezult(qu) = 1 qu += 1 If qu = questions.Length Then Button1.Enabled = False Button2.Enabled = False Button3.Enabled = True conclusion() TextBox1.Clear() Else TextBox1.Text = questions(qu) End If End Sub Private Sub conclusion() Dim otveti() As String Dim lst0 As New List(Of String) Dim lst1 As New List(Of String) If File.Exists("Ответы.txt") Then otveti = File.ReadAllLines("Ответы.txt", System.Text.Encoding.Default) For Each s As String In otveti Dim sp() As String = s.Split(vbTab) lst0.Add(sp(0)) lst1.Add(sp(1)) Next Dim ss As String = "" For i = 0 To rezult.Length - 1 If rezult(i) = 1 Then ss &= i + 1 & "," Next ss = ss.TrimEnd(",") For i = 0 To lst0.Count - 1 If lst1(i) = ss Then TextBox2.Text = File.ReadAllText(lst0(i) & ".txt", System.Text.Encoding.Default) Exit For End If Next If TextBox2.Text.Length = 0 Then TextBox2.Text = "Такой болезни нет.Идите к врачу!))" TextBox2.SelectionLength = 0 Else MsgBox("Файл Ответы.txt не найден!") End If End Sub End Class
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д