Найти среднее арифметическое положительных и отрицательных элементов массива - QBasic

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

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

Дан массив Ai, i=1....15. Найти среднее арифметическое положительных и отрицательных элементов массива R1 и R2. Определить какой из найденных элементов меньше по абсолютной величине. С помощью qbasic Помогите пожалуйста

Решение задачи: «Найти среднее арифметическое положительных и отрицательных элементов массива»

textual
Листинг программы
  1. CLS : c = 15
  2. DIM a(1 TO c)  AS INTEGER
  3. s1 = 0: s2 = 0: r1 = 0: r2 = 0
  4. RANDOMIZE TIMER
  5.   PRINT "Задан массив:"
  6.   FOR i = 1 TO c
  7.     a(i) = RND(7) * 100 - 50: PRINT USING "#######"; a(i);
  8.     IF i MOD 10 = 0 THEN PRINT
  9.     IF a(i) > 0 THEN
  10.          s1 = s1 + a(i): r1 = r1 + 1
  11.        ELSEIF a(i) < 0 THEN
  12.               s2 = s2 + a(i): r2 = r2 + 1
  13.     END IF
  14.   NEXT i: PRINT
  15.   s1 = s1 / r1: s2 = s2 / r2: PRINT
  16.   PRINT "Положительных чисел:"; r1; " их среднее арифметическое = "; s1
  17.   PRINT "Отрицательных чисел:"; r2; " их среднее арифметическое = "; s2
  18.   SELECT CASE ABS(s2) - ABS(s1)
  19.      CASE 0: PRINT "Средние арифметические равны"
  20.      CASE IS > 0: PRINT "Модуль Среднего арифметического положительных чисел меньше"
  21.      CASE ELSE: PRINT "Модуль Среднего арифметического отрицательных чисел меньше"
  22.   END SELECT

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

  1. Объявляется переменная c типа INTEGER и присваивается ей значение 15.
  2. Создается массив a(1 TO c) типа INTEGER.
  3. Инициализируются переменные s1, s2, r1, r2 типа INTEGER со значениями 0.
  4. Выполняется команда RANDOMIZE TIMER.
  5. Выводится сообщение Задан массив: и в цикле от 1 до c выводятся элементы массива a(i) с шагом 10 строк.
  6. Если текущий элемент массива a(i) больше 0, то к переменной s1 прибавляется значение a(i), а к переменной r1 прибавляется единица.
  7. Если текущий элемент массива a(i) меньше 0, то к переменной s2 прибавляется значение a(i), а к переменной r2 прибавляется единица.
  8. После цикла выводится сообщение Положительных чисел:r1 их среднее арифметическое = s1.
  9. Выводится сообщение Отрицательных чисел:r2 их среднее арифметическое = s2.
  10. Выполняется команда SELECT CASE ABS(s2) - ABS(s1).
  11. В зависимости от результата сравнения модуля среднего арифметического отрицательных чисел и модуля среднего арифметического положительных чисел выводится соответствующее сообщение.
  12. Код завершается.

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


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

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

14   голосов , оценка 4.071 из 5

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

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

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