Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

QBasic

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 224, средняя оценка - 4.77
кот Бегемот
Платежеспособный зверь
8033 / 3752 / 675
Регистрация: 28.10.2009
Сообщений: 9,517
#1

Как заполнить массив и вывести его на экран - QBasic

26.04.2010, 21:07. Просмотров 30202. Ответов 2
Метки нет (Все метки)

Начнем с того, что массив надо объявить. Если размеры массива заданы, например а(20) или a(5,6), первой командой программы пишем объявление массива. Легче всего это сделать просто добавив впереди слово DIM. Для первого примера
PureBasic
1
DIM a(20)
для второго
PureBasic
1
DIM a(5,6)
Если размеры массива в условии не заданы, вводим их с клавиатуры, а потом уже объявляем.
Для одномерного массива:
PureBasic
1
2
INPUT "vvedite kolichestvo elementov N ",n
DIM a(n)
Для двумерного:
PureBasic
1
2
3
INPUT"vvedite kolichestvo strok M ",m
INPUT"vvedite kolichestvo stolbcov N ",n
DIM a(m,n)
Теперь, когда массив объявлен, надо его заполнить.
Есть 3 основных варианта заполнения массива:
1. Ручной ввод с клавиатуры
2. Чтение данных из списка
3. Заполнение случайными числами
Есть и другие способы, но они применяются редко, и мы о них пока не будем говорить.
Разберём самый популярный способ
Ручной ввод.
Для одномерного массива мы пишем команду цикла FOR и в цикле заполняем массив командой INPUT
Для нашего примера это будет выглядеть так:
PureBasic
1
2
3
FOR i=1 to N
input "vvedite element ",a(i)
next
или, если количество элементов известно, скажем, 20, то
PureBasic
1
2
3
FOR i=1 to 20
input "vvedite element ",a(i)
next
Для двумерного массива циклов FOR будет 2 - для строк и для столбцов, поэтому заполнение будет выглядеть так:
PureBasic
1
2
3
4
5
FOR i=1 to m
FOR j=1 to n
input "vvedite element ",a(i,j)
next
next
Массив заполнен. Выводим его на экран теми же командами цикла
Одномерный:
PureBasic
1
2
3
FOR i=1 to N
print a(i);
next
Двумерный:
PureBasic
1
2
3
4
5
6
FOR i=1 to m
FOR j=1 to n
print a(i,j);
next
print
next
Команда PRINT во второй раз пишется для перехода на следующую строку.

Итак, мы объявили, заполнили и вывели массив. С этого начинаются все программы на массивы.
Соберём всё в одну программу.
Программа заполнения и вывода одномерного массива:
PureBasic
1
2
3
4
5
6
7
8
9
INPUT "vvedite kolichestvo elementov N ",n
DIM a(n)
FOR i=1 to N
input "vvedite element ",a(i)
next
print "massiv"
FOR i=1 to N
print a(i);
next
Программа заполнения и вывода двумерного массива:
PureBasic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
INPUT"vvedite kolichestvo strok M ",m
INPUT"vvedite kolichestvo stolbcov N ",n
DIM a(m,n)
FOR i=1 to m
FOR j=1 to n
input "vvedite element ",a(i,j)
next
next
print "matrica "
FOR i=1 to m
FOR j=1 to n
print a(i,j);
next
print
next
Если вы запомните, как это делается, считайте, что половину задачи вы уже решили. А это уже много.
22
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.04.2010, 21:07
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как заполнить массив и вывести его на экран (QBasic):

Массив в 10 элементов заполнить случайными двухзначными числами, вывести на экран сумму четных чисел. - QBasic
Ребят помогите ломаю голову сижу.... вообщем в qbasic'e Задача 1 : Массив в 10 элементов заполнить случайными двухзначными числами,...

Образовать двумерный массив Q(5*5) и вывести его на экран - QBasic
Образовать двумерный массив Q(5*5) и вывести его на экран, если: Q(i , j) = 2i + 3j. Подсчитать сумму квадратов его элементов массива. ...

Построить массив размерности n×n вида и вывести его на экран - Basic
Помогите пожалуйста с задачей. Построить массив размерности n×n вида и вывести его на экран.

Заполнить двумерный массив номерами мест, подсчитать количество мест у окон и вывести на экран схему мест - QBasic
В автобусе 6 рядов кресел по 4 места в каждом ряду. Чётные номера находятся у окон.Необходимо заполнить двумерный массив номерами мест,...

Как преобразовать матрицу А в одномерный массив и вывести на экран? - QBasic
как преобразовать матрицу А в одномерный массив и вывести на экран?

Заполнить массив У элементами массива Х, находящимися после его максимального значения - QBasic
Заполнить массив У элементами массива Х, находящимися после его максимального значения в Х.

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
viwald
2 / 2 / 0
Регистрация: 13.12.2010
Сообщений: 51
17.12.2010, 20:41 #2
Привет КотБегемот=)я тут в учебничке глянул, форма заполнения одномерного массива гораздо удобнее с помощью DATA,выглядит примерно так:

PureBasic
1
2
3
4
5
6
7
DATA 23, 13, 98, 77, 45, 56, 32,' 10, 90, 55
CLS
INPUT "Введите количество элементов массива"; N
DIM MASS(N)
FOR I=1 ТО N
READ MASS(I)
? MASS(I); NEXT I
Программа становится несколько короче ,так как в этом случае можно совместить чтение из DATA и одновременный вывод их на экран-ведь кодер освобожден от необходимости вводить данные с клавы.
Мне кажется этот способ гораздо экономичней, того который ты привел и при отладке проги нет нужды всякий раз заново вводить данные.=)
0
кот Бегемот
Платежеспособный зверь
8033 / 3752 / 675
Регистрация: 28.10.2009
Сообщений: 9,517
04.04.2011, 17:31  [ТС] #3
Оператор DATA, к сожалению, сокращает массовость алгоритма:
Алгоритм должен быть применим не только для конкретной задачи, но и для всех подобных задач. То есть, для любых вводимых данных. Скажем, программа запускается 5 раз. Одно дело - ввести 5 разных списков данных, другое - 5 раз переписывать программу.
А для отладки - согласен, DATA здесь облегчает ввод.
3
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.04.2011, 17:31
Привет! Вот еще темы с ответами:

Сформулировать массив K состоящий из 27 элементов и заполнить его случайными целыми числами - QBasic
Ребят помогите пожалуйста в QBasic ) 1.Сформулировать массив K состоящий из 27 элементов и заполнить его случайными целыми числами в...

Вывести на экран число и его корень - QBasic
Написать программу которая выводит следующий : =============================== Сhislo koren =============================== ...

Заполнить одномерный массив случайными числами таким образом, чтобы все его элементы были различны - Basic
Заполнить одномерный массив с помощью случайных чисел таким образом, чтобы все его элементы были различны. Вот сделал только не робит :( ...

Массив A%(20) переформировать в массив B%(5,4) и вывести на экран - QBasic
Помогите решать задачу. задать и вывести на экран массив A%(20) (состоит из целых,случайных. диапазон от -10 до 10 ) Переформировать...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Закрытая тема Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru