Поиск ошибки в программе - VB

Узнай цену своей работы

Формулировка задачи:

Задание такое:Дан текст, в котором встречаются арифметические выражения вида a Å b, где Å - один из знаков +, -, *, /. Выписать все арифметические выражения и вычислить их значения. Кому не трудно помогите разобраться. Тему работы с файловыми и строковыми типами данных почти не понял
Листинг программы
  1. Dim i, plus, minus, umnojenie, delenie As Integer
  2. Private Sub Command1_Click()
  3. Picture1.Cls
  4. For i = 1 To Len(Text1.Text)
  5. If a >= "0" And a <= "9" Then
  6. If b >= "0" And b <= "9" Then
  7. If Mid(Text1.Text, i, 1) = "a + b" Then
  8. plus = Val(a) + Val(b)
  9. If Mid(Text1.Text, i, 1) = "a - b" Then
  10. minus = Val(a) - Val(b)
  11. If Mid(Text1.Text, i, 1) = "a * b" Then
  12. umnojenie = Val(a) * Val(b)
  13. If Mid(Text1.Text, i, 1) = "a / b" Then
  14. delenie = Val(a) / Val(b)
  15. End If
  16. End If
  17. End If
  18. End If
  19. End If
  20. End If
  21.  
  22. Picture1.Print "a + b ="; plus
  23. Picture1.Print "a - b ="; minus
  24. Picture1.Print "a * b ="; umnojenie
  25. Picture1.Print "a / b ="; delenie
  26. End Sub
  27. Next

Решение задачи: «Поиск ошибки в программе»

textual
Листинг программы
  1. Dim a%, b%, c%, m$, m1$
  2.  
  3. Private Sub Command1_Click()
  4. List1.Clear
  5.  
  6. For i = 1 To Len(Text1.Text):
  7.    If Mid(Text1.Text, i, 1) = "+" Then 'если встретили "+"
  8.      m = Mid(Text1.Text, i - 1, 3) 'выписываем это арифметическое выражение в отдельную строку
  9.      a = Val(Mid(m, 1, 1)) 'определяем 1-е число
  10.      b = Val(Mid(m, 3, 1)) 'определяем 2 число
  11.      c = a + b 'производим арифметическое действие
  12.      m1 = m + "=" + CStr(c) 'составляем ЕГО полную строковую запись
  13.      List1.AddItem m1 'и выводим эту запись в ListBox
  14.   End If
  15.  
  16.    If Mid(Text1.Text, i, 1) = "-" Then 'если встретили "-"
  17.      m = Mid(Text1.Text, i - 1, 3)
  18.       a = Val(Mid(m, 1, 1))
  19.       b = Val(Mid(m, 3, 1))
  20.       c = a - b
  21.       m1 = m + "=" + CStr(c)
  22.       List1.AddItem m1
  23.    End If
  24.    
  25.    If Mid(Text1.Text, i, 1) = "*" Then 'если встретили "*"
  26.      m = Mid(Text1.Text, i - 1, 3)
  27.       a = Val(Mid(m, 1, 1))
  28.       b = Val(Mid(m, 3, 1))
  29.       c = a * b
  30.       m1 = m + "=" + CStr(c)
  31.       List1.AddItem m1
  32.    End If
  33.    
  34.    If Mid(Text1.Text, i, 1) = "/" Then 'если встретили "/"
  35.      m = Mid(Text1.Text, i - 1, 3)
  36.       a = Val(Mid(m, 1, 1))
  37.       b = Val(Mid(m, 3, 1))
  38.       c = a / b
  39.       m1 = m + "=" + CStr(c)
  40.       List1.AddItem m1
  41.    End If
  42. Next i
  43. End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 3.9 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы