Здравствуйте. Помогите написать программу ** языке Бейсик. Дан массив А из 20 элементов....

0 голосов
60 просмотров

Здравствуйте. Помогите написать программу на языке Бейсик.
Дан массив А из 20 элементов. Заменить отрицательные элементы массива на среднее арифметическое элементов массива. Результат вывести на печать.
Спасибо.


Информатика (15 баллов) | 60 просмотров
0

50 P=1

0

60 FOR I=1 TO 20

0

70 P=P+A(I)

0

80 NEXT

0

90 PRINT P

0

100 END

0

Это вообще Бейсик какой-то древний. Или задание взято из древней книги. В последние лет 20 Бейсик нумерацию строк уже не использует.

0

Вы эту задачу будете где-то запускать или просто текст привести надо?

0

Мне просто написать текст.

0

Я сама была в шоке от такого задания в контрольной работе ВУЗа

Дан 1 ответ
0 голосов
Правильный ответ
Программа на qBASIC 7.01
DIM a(20)
s = 0
FOR i = 1 TO 20
   INPUT a(i)
   s = s + a(i)
NEXT i
s = s / 20
FOR i = 1 TO 20
   IF a(i) < 0 THEN a(i) = s
   PRINT a(i); " ";
NEXT i
PRINT
END

Тестовое решение:
? 5
? 8
? -3
? 7
? 11
? -12
? 6
? 0
? -13
? 9
? 11
? 0
? 7
? -4
? 1
? 9
? 4
? 5
? -11
? 3
 5   8   2.15   7   11   2.15   6   0   2.15   9   11   0   7   2.15   1   9
 4   5   2.15   3

Чтобы продолжить, нажмите любую клавишу

(142k баллов)
0

Можно еще вопрос: текст после тестового решения тоже является ответом на поставленную задачу?

0

Под Windows qBASIC работает на виртуальной машине DOS и вывод идет в окно консоли. Чтобы после завершения программы оно не схлопывалось, qBASIC организует цикл ожидания с выдачей системного сообщения DOS при помощи стандартной команды PAUSE, которую он генерирует неявно. Текст "Чтобы продолжить..." - это как раз системное сообщение. Поскольку это результат работы не программы, а исполняющей системы, его приводить в ответе не надо.