Заполнить вектор индексами элементов вектора А размерности n, значения которых равны ключу поиска - VB

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

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

Программа работает, но выводит первй найденный индекс столько раз, сколь совпадений по ключу поиска она нашла, почему?
Листинг программы
  1. Private Sub Command1_Click()
  2. Dim j As Byte, n As Byte, b() As Single, a() As Single, k As Single, r As Single, l As Single, f As Single
  3. n = InputBox("Введите размерность вектора B")
  4. ReDim b(1 To n)
  5. Cls
  6. Print
  7. Print Spc(2); "Вектор B:"
  8. For j = 1 To n
  9. b(j) = InputBox("Введите значение b(" & j & ")")
  10. Print Spc(3); b(j);
  11. Next j
  12. Print
  13. Print
  14. k = InputBox("Введите ключ поиска")
  15. Print Spc(2); "k = " & k & ""
  16. Print
  17. f = 0
  18. For j = 1 To n
  19. If b(j) = k Then
  20. f = f + 1
  21. End If
  22. Next j
  23. If f > 0 Then
  24. ReDim a(1 To f)
  25. Print Spc(2); "Вектор, составленный из индексов элементов вектора B,"
  26. Print Spc(2); "значения которых равны ключу поиска:"
  27. For j = 1 To n
  28. If b(j) = k Then
  29. For l = 1 To f
  30. a(l) = j
  31. Print Spc(3); a(l);
  32. Next l
  33. End If
  34. Next j
  35. Else
  36. Print Spc(4); "В векторе B нет элементов, равных ключу поиска."
  37. End If
  38. End Sub

Решение задачи: «Заполнить вектор индексами элементов вектора А размерности n, значения которых равны ключу поиска»

textual
Листинг программы
  1.  f=0
  2.  Print Spc(3);
  3.  For j = 1 To n
  4.     If b(j) = k Then
  5.        f=f+1
  6.        a(f) = j
  7.        Print  a(f);
  8.     End If
  9.   Next j

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


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

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

7   голосов , оценка 3.429 из 5

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

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

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