Платежеспособный зверь
8821 / 4248 / 1618
Регистрация: 28.10.2009
Сообщений: 11,389
1

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

26.04.2010, 21:07. Показов 53035. Ответов 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
Если вы запомните, как это делается, считайте, что половину задачи вы уже решили. А это уже много.
23
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.04.2010, 21:07
Ответы с готовыми решениями:

Как заполнить массив путем чтения данных из списка и вывести его на экран
Добрый день! Не получается заполнить массив чтением данных из списка. В блокноте Windows...

Заполнить двумерный массив 6 на 6 и вывести его на экран
Заполнить двумерный массив 6 на 6 таким образом 1 0 0 0 0 1 0 2 0 0 2 0 0 ...

Заполнить массив рядом чисел от 0 до 9, вывести его на экран
дан массив на 10 элементов (задания делать с помощью циклов). - Заполнить его рядом чисел от 0 до...

Функции: заполнить массив биномиальными коэффициентами и вывести его на экран
Сформировать массив M, элементы которого mi = Cn i , где: Cn i = n! / i! (n - i)! , n = 20; i =...

2
3 / 3 / 1
Регистрация: 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 и одновременный вывод их на экран-ведь кодер освобожден от необходимости вводить данные с клавы.
Мне кажется этот способ гораздо экономичней, того который ты привел и при отладке проги нет нужды всякий раз заново вводить данные.=)
1
Платежеспособный зверь
8821 / 4248 / 1618
Регистрация: 28.10.2009
Сообщений: 11,389
04.04.2011, 17:31  [ТС] 3
Оператор DATA, к сожалению, сокращает массовость алгоритма:
Алгоритм должен быть применим не только для конкретной задачи, но и для всех подобных задач. То есть, для любых вводимых данных. Скажем, программа запускается 5 раз. Одно дело - ввести 5 разных списков данных, другое - 5 раз переписывать программу.
А для отладки - согласен, DATA здесь облегчает ввод.
4
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
04.04.2011, 17:31
Помогаю со студенческими работами здесь

Заполнить ступенчатый массив заданным образом и вывести его на экран
Заполнить ступенчатый массив заданным образом и вывести его на экран: Вот примерно я что то...

Заполнить одномерный массив случайными числами и вывести его на экран
1)заполнить одномерный массив случайными числами и вывести его на экран.Выбрать минимальный элемент...

Заполнить ступенчатый массив заданным образом и вывести его на экран
Заполнить ступенчатый массив заданным образом и вывести его на экран: 0 1 2 3 4 0 1 2 3 ...

Одномерный массив 15 элементов заполнить случайными значениями, вывести его на экран
Одномерный массив 15 элементов заполнить случайными значениями, вывести его на экран. Определить...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru