Определить значение элемента массива, наиболее близкого к среднему арифметическому всех элементов - QBasic

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

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

Определить значение и номер элемента массива X(n), наиболее близкого к среднему арифметическому всех элементов массива. Вывести массив и полученные значения. Упорядочить массив X(n) по убыванию. Вывести полученный массив. Исходный массив элементов получить с помощью датчика случайных чисел. Значения буквенных переменных задавать с клавиатуры.

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

textual
Листинг программы
  1. CLS
  2. RANDOMIZE TIMER
  3. INPUT "Введите N:", N
  4. REDIM X(1 TO N)
  5. PRINT "Исходный массив:"
  6. FOR I = 1 TO N
  7.     X(I) = INT(RND * 100)
  8.     PRINT X(I);
  9.     S! = S! + X(I)
  10. NEXT I
  11. S! = S! / N
  12. PRINT
  13. PRINT "Среднее значение: "; S!
  14. J = 1
  15. FOR I = 1 TO N
  16.     IF ABS(X(N) - S) > ABS(X(I) - S) THEN
  17.         J = I
  18.     END IF
  19. NEXT I
  20. PRINT "Ближайшее значение элемента: "; X(J); "("; LTRIM$(STR$(J)); ")"
  21. PRINT "Сортировка..."
  22. FOR I = 1 TO N
  23.     FOR J = 1 TO N - 1
  24.       IF X(J) < X(J + 1) THEN
  25.           SWAP X(J), X(J + 1)
  26.       END IF
  27.     NEXT J
  28. NEXT I
  29. PRINT "Полученный массив:"
  30. FOR I = 1 TO N
  31.     PRINT X(I);
  32. NEXT I

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

  1. Объявляется переменная N типа String, в которую с клавиатуры вводится количество элементов в массиве.
  2. Создается массив X размером N x 1.
  3. Выводится сообщение Исходный массив: и элементы массива X по одному в строке.
  4. Сумма всех элементов массива сохраняется в переменной S!.
  5. Среднее значение всех элементов массива вычисляется как S! / N и сохраняется в переменной S!.
  6. Переменная J инициализируется значением 1.
  7. В цикле перебираются все элементы массива X.
  8. Если абсолютное значение разности X(N) и S! больше, чем абсолютное значение разности X(I) и S!, то значение переменной J заменяется на I.
  9. Цикл завершается.
  10. Выводится сообщение Ближайшее значение элемента: и значение элемента массива X(J), а также сообщение (; LTRIM$(STR$(J)); ).
  11. Выводится сообщение Сортировка...
  12. В цикле перебираются все элементы массива X.
  13. Внутренний цикл перебирает элементы от J до N-1.
  14. Если X(J) < X(J+1), то значения элементов X(J) и X(J+1) меняются местами с помощью команды SWAP X(J), X(J+1).
  15. Внутренний цикл завершается.
  16. Внешний цикл завершается.
  17. Выводится сообщение Полученный массив:
  18. В цикле перебираются все элементы массива X.
  19. Выводится значение элемента X(I).
  20. Цикл завершается.

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


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

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

11   голосов , оценка 3.818 из 5

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

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

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