Домашние задания: Другие предметы

Задача по информатике (QBasic)

Задача звучит примерно так: создать упорядоченный массив F с помощью input состоящий из 13 элементов.
Код вроде бы не должен быть большим так что если кто то понимает информатику напишите пожалуйста))
Заполнение одномерного массива с клавиатуры

Рассмотрим следующий пример:

CLS
INPUT "Введите количество элементов массива"; N
DIM MASS(N)
FOR 1=1 ТО N
? "Введите"; N; "элемент массива"
INPUT MASS(I) NEXT I
7
FOR 1=1 TO N? MASS(I); NEXT I

Программа требует некоторых пояснений. Первая команда тра-диционна — очистка экрана. Далее идет запрос с клавиатуры количества элементов массива. Потом цикл, в котором от 1 до N программа последовательно запрашивает у пользователя ввод очередного элемента массива и записывает его значение по указанному адресу mass(i) . После первого цикла выполняется оператор print без параметров. Он отображает пустую строку между вводом значений и их выводом. Последний оператор цикла выводит значения массива на экран в строчку, что обеспечивается
добавлением к оператору print точки с запятой. Результаты работы программы для трех элементов будут выглядеть так:

Введите 1 элемент массива
? 23
Введите 2 элемент массива
? 13
Введите 3 элемент массива
? 98
23 13 98

Заполнение одномерного массива заранее известными значениями из оператора DATA

Часто встречаются задачи, когда данные для обработки уже известны и содержатся в операторе data. (Однако, если их много, тяжелый труд — их туда заносить. Обычно — работа для молодых программистов. )

DATA 23, 13, 98, 77, 45, 56, 32,' 10, 90, 55
CLS
INPUT "Введите количество элементов массива"; N
DIM MASS(N)
FOR 1=1 ТО N
READ MASS(I)
? MASS(I); NEXT I

Программа стала несколько короче, т. к. в этом случае можно совместить чтение данных из data и одновременный вывод их на экран — ведь пользователь освобожден от необходимости вводить данные с клавиатуры. Мы сразу увидим массив на экране.
Этот способ экономичней первого, и, кроме того, при отладке программы нет нужды всякий раз заново вводить данные.

Заполнение массива при помощи стандартных функций

Так как чаше мы решаем учебные задачи, то конкретные числовые или строковые значения элементов массива нас мало интересуют. Важно, чтобы программа работала правильно. Поэтому часто массив заполняется случайными значениями.

CLS
RANOMIZE TIMER
INPUT "Введите количество элементов массива"; N
DIM MASS(N)
FOR 1=1 ТО N
MASS(I)=INT(RND(l)*100)
? MASS(I); NEXT I

Мы вычисляем какую-либо функцию, например синус, и значения этой функции заносим в массив. Пусть дана функция y-sinx, где х меняется от 1 до 10 с шагом 0,5. Здесь мы должны сначала решить для себя, а сколько будет значений вычислено. Мы это уже делали, но, повторение — мать учения.

N=(Хнач. — Хкон.) /шаг+1

В нашем случае:

N=(10-1)/0.5 +1=19

Тогда программа будет выглядеть так:

CLS
INPUT "Введите начальное, конечное значения аргумента
и шаг приращения"; XN, XK, DX
N=INT((XK - XN)/DX)+1
DIM MASS(N)
1=1
FOR X=XN TO XK STEP DX
MASS(I)=SIN(X)
? MASS(I);
1=1+1 NEXT X

Здесь нам уже приходится вручную наращивать индекс г, т. к. параметром цикла в данном случае является х.
После заполнения массива настает пора его обрабатывать. Чаще всего приходится обрабатывать все элементы массива, поэтому действия выполняются в цикле.
Изменение значений элементов массива ведется с помощью оператора присваивания, например:

MASS(1!=13
MASS(3)=12
MASS(3)=SQR(MASS(1)+MASS(3))
? MASS(3)

Вопрос. Какое значение будет выведено на экран? Чему равны значения mass ( i ) и mass (3) ?
Задания. Прежде всего попрактикуемся в заполнении массивов и выводе на экран не только численных значений элементов массива, но и графической их интерпретации.
Svetlana Botnarenco
Svetlana Botnarenco
113
Лучший ответ