Найти два числа, среднее арифметическое которых ближе к А - QBasic

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

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

Даны действительные числа А и b(1), b(2),....,b(m).В последовательности b(j) найти два числа, среднее арифметическое которых ближе к А. Помогите пожалуйста. Срочно надо!

Решение задачи: «Найти два числа, среднее арифметическое которых ближе к А»

textual
Листинг программы
CLS
RANDOMIZE TIMER
m = 20
A = 77
DIM B(1 TO m)
 
FOR i = 1 TO m
   B(i) = 100 * RND + 20
   PRINT USING "###.##  "; B(i);
NEXT i
 
min = 100
 
FOR i = 1 TO m - 1
FOR j = i + 1 TO m
   SA = (B(i) + B(j)) / 2
   IF ABS(A - SA) < min THEN
      min = ABS(A - SA)
      im = i
      jm = j
   END IF
NEXT j, i
 
PRINT : PRINT
PRINT "B("; im; ") ="; B(im)
PRINT "B("; jm; ") ="; B(jm)
PRINT
PRINT "SA ="; (B(im) + B(jm)) / 2
PRINT "A ="; A
 
END

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

  1. В первой строке используется команда CLS для очистки экрана.
  2. RANDOMIZE TIMER используется для случайной генерации чисел.
  3. Переменная m устанавливает количество сгенерированных чисел, равное 20.
  4. Переменная A устанавливает искомое среднее арифметическое на 77.
  5. Создается массив B(1 TO m) для хранения сгенерированных чисел.
  6. Используется цикл FOR для генерации 20 случайных чисел и их печати.
  7. Устанавливается начальное значение переменной min равное 100.
  8. Используется вложенный цикл FOR для нахождения двух чисел, среднее арифметическое которых ближе всего к переменной A.
  9. Внутри вложенного цикла определяется значение переменной SA как среднее арифметическое двух текущих чисел.
  10. Если разница между переменной A и SA меньше текущего значения переменной min, то обновляются значения переменных min, im и jm.
  11. После окончания вложенного цикла, выводятся значения переменных im и jm, которые содержат индексы двух чисел, среднее арифметическое которых ближе всего к переменной A.
  12. Вычисляется и выводится значение переменной SA как среднее арифметическое двух чисел с индексами im и jm.
  13. Выводится значение переменной A.
  14. Код завершается командой END.

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


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

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

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