Расставить арифметические знаки между цифрами, чтобы выполнялось равенство - VB

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

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

Если у нас есть пример, в котором не выполняется равенство, допустим: 1 + 2 + 3 + 4 + 5 + 6 = 0 И пользователь должен изменить знаки так, чтоб оно выполнялось Как это реализовать?)

Решение задачи: «Расставить арифметические знаки между цифрами, чтобы выполнялось равенство»

textual
Листинг программы
  1. Function Calc(A() As Integer, p As Integer) As Integer
  2.      n% = 1
  3.      r% = 0
  4.      For i% = 1 To 5
  5.          If i% = 1 Then
  6.             If p And n% Then
  7.                r% = A(i%) + A(i% + 1)
  8.             Else
  9.                r% = A(i%) - A(i% + 1)
  10.             End If
  11.          Else
  12.             If p And n% Then
  13.                r% = r% + A(i% + 1)
  14.             Else
  15.                r% = r% - A(i% + 1)
  16.             End If
  17.          End If
  18.          n% = n% * 2
  19.      Next i%
  20.      Calc = r%
  21. End Function
  22.  
  23. Sub PrintStr(A() As Integer, p As Integer)
  24.     n% = 1
  25.     For i% = 1 To 5
  26.         Debug.Print A(i%);
  27.         If p And n% Then
  28.            Debug.Print "+";
  29.         Else
  30.            Debug.Print "-";
  31.         End If
  32.         n% = n% * 2
  33.     Next i%
  34.     Debug.Print A(6); "=";
  35. End Sub
  36.  
  37.  
  38. Sub Test()
  39.  
  40. Dim A(1 To 6) As Integer
  41.  
  42.     A(1) = 1
  43.     A(2) = 2
  44.     A(3) = 3
  45.     A(4) = 4
  46.     A(5) = 5
  47.     A(6) = 6
  48.  
  49.     For p% = 0 To 31
  50.         PrintStr A(), p%
  51.         Debug.Print Calc(A, p%)
  52.     Next p%
  53.  
  54. End Sub

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


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

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

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

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

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

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