Определить числа, сумма которых равна 300 - QBasic

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

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

Дано 9 рандомных чисел. И надо вынести на экран те из них, что в сумме дадут число 300.

Решение задачи: «Определить числа, сумма которых равна 300»

textual
Листинг программы
Sub Main()
Dim X(0 To 8) As Integer
Dim P(0 To 8) As Integer
    Randomize
    For i% = 0 To 8
        X(i%) = Rnd() * 100
    Next i%
    For i% = 1 To 511
        s% = 0
        k% = 1
        For j% = 0 To 8
            If i% And k% Then
               s% = s% + X(j%)
               P(j%) = 1
            Else
               P(j%) = 0
            End If
            k% = k% * 2
        Next j%
        If s% = 300 Then
           For j% = 0 To 8
               If P(j%) Then Debug.Print X(j%); " ";
           Next j%
           Debug.Print
        End If
    Next i%
End Sub

Объяснение кода листинга программы

  1. Объявлены две матрицы: X и P. Обе матрицы имеют размерность 0-8 и содержат целочисленные значения.
  2. Задана начальная и конечная сумма для каждой строки матрицы P.
  3. В каждой строке матрицы X случайным образом генерируются числа от 0 до 100.
  4. Переменная i используется для перебора всех возможных комбинаций чисел от 0 до 8.
  5. Переменная s используется для хранения суммы чисел в текущей строке.
  6. Переменная k используется для перебора всех возможных комбинаций чисел от 0 до 8.
  7. Если i и k равны 1, то текущее значение X добавляется к s.
  8. Если i и k равны 0, то переменная P получает значение 0.
  9. Если i и k равны 1, то переменная P получает значение 1.
  10. Значение k умножается на 2.
  11. Если s равно 300, то выводится текущая строка чисел.
  12. Значение i умножается на 1 и добавляется к номеру строки.
  13. Если P равно 1, то выводится текущее значение X.
  14. Значение i умножается на 8 и добавляется к номеру столбца.
  15. Значение i умножается на 1 и добавляется к номеру строки.
  16. Значение i умножается на 8 и добавляется к номеру столбца.
  17. Если P равно 0, то выводится текущее значение X.
  18. Значение i умплицируется на 8 и добавляется к номеру строки.
  19. Значение i умплицируется на 1 и добавляется к номеру столбца.
  20. Значение i умплицируется на 8 и добавляется к номеру строки.

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


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

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

13   голосов , оценка 4.077 из 5
Похожие ответы