Что определяет индекс массива
Тест по теме «Одномерные массивы» 9 класс
ТЕСТ ПО ТЕМЕ «ОДНОМЕРНЫЕ МАССИВЫ» 9 класс
1. Что называется массивом?
a) Под массивом понимается совокупность конечного числа данных различных типов.
b) Под массивом понимается совокупность конечного числа данных одного типа.
c) Под массивом понимается совокупность бесконечного числа данных одного типа.
2. Укажите правильное описание массива
a) Var a:array[1..1000] of integer;
b) Var А, В, С: ARRAY [1..50] OF REAL or INTEGER;
c) Var А: ARRAY [1..50 OF REAL];
3. Числовой массив А заполнен последовательно числами: 7, 15, 87, 34. Укажите значение элемента А[2].
4. Какая команда заполняет массив с клавиатуры?
5. Что производит следующий фрагмент программы?
for i:=1 to n do write(a[i],’ ‘);
a) Ввод элементов массива с клавиатуры.
b) Вывод элементов массива на экран монитора.
c) Ввод элементов массива из файла.
6. Что производит следующий фрагмент программы?
for i:=1 to n do begin
a) Заполняет массив случайными числами и не выводит их на экран.
b) Заполняет массив случайными числами и выводит их на экран.
c) Заполняет массив одинаковыми числами и выводит их на экран.
ТЕСТ ПО ТЕМЕ «ОДНОМЕРНЫЕ МАССИВЫ» 9 класс
1. Что определяет индекс массива?
a) Индекс определяет положение элемента массива данных относительно друг друга.
b) Индекс определяет положение элемента массива данных относительно его конца.
c) Индекс определяет положение элемента массива данных относительно его начала.
2. Укажите правильное описание массива
a) Var c: ARRAY [1..50 OF REAL];
b) Var b:array[1..180] of integer;
c) Var x, y: array of integer [1..100] of real;
3. Числовой массив А заполнен последовательно числами: 22, 25, 27, 24. Укажите значение элемента А[4].
4. Для получения случайных чисел из промежутка [0;6] используют следующую функцию:
5. Что производит следующий фрагмент программы?
for i:=1 to n do begin
a) Ввод элементов массива с клавиатуры.
b) Вывод элементов массива на экран монитора.
c) Ввод элементов массива из файла.
6. Что производит следующий фрагмент программы?
write(‘число элементов’); readln(n);
a) Заполняет массив случайными числами и выводит их на экран.
b) Заполняет массив случайными числами и выводит на экран их количество.
c) Заполняет массив одинаковыми числами и выводит на экран их номера.
ТЕСТ ПО ТЕМЕ «ОДНОМЕРНЫЕ МАССИВЫ» 9 класс
a) Простой тип данных, состоящий из одного элемента
b) Структурированный тип данных, состоящий из элементов разных типов
c) Структурированный тип данных, состоящий из элементов одного типа, упорядоченных по номеру и объединенных под одним именем
d) Совокупность данных, объединенных под одним именем
2. Выберите способ объявления в программе массива М, состоящего из 30 вещественных чисел.
a) Var m:array[1..30] of real;
b) Var m:array[1..30] of integer;
c) Var m:array[1..300] of real;
d) Var m:array[10..39] of integer;
3. Числовой массив А заполнен последовательно числами: 32, 13, 33, 47. Укажите значение элемента А[1].
4. Массив С заполняется случайными целыми числами от 30 до 60. Выберите правильный вариант основной команды цикла.
5. Выберите правильный вариант вывода элементов массива на печать в строку.
a) for i:=1 to n do writeln(a[i]);
b) for i:=1 to n do write(a[i],` ` );
c) for i:=1 to n do read(a[i]);
6. Что производит следующий фрагмент программы?
write(‘число элементов’); readln(n);
a) Заполняет массив случайными числами и выводит их на экран.
b) Заполняет массив случайными числами и не выводит их на экран.
c) Заполняет массив одинаковыми числами и выводит их на экран.
ТЕСТ ПО ТЕМЕ «ОДНОМЕРНЫЕ МАССИВЫ» 9 класс
1. Что такое элемент массива?
a) Содержимое ячейки массива
b) Положение данных массива относительно его конца.
c) Положение данных массива относительно его начала.
2. Укажите правильное описание массива
a) Var c: ARRAY [1..50] OF REAL;
b) Var b:array[1..180 of integer];
c) Var x, y: array of integer [1..100] of real;
3. Числовой массив А заполнен последовательно числами: 22, 25, 27, 24. Укажите значение элемента А[3].
4. Для заполнения массива по формуле используют следующую запись:
a) for i:=1 to n do a[i]:=Random (6);
b) for i:=1 to n do READ (a[i]);
c) for i:=1 to n do a[i]:=6*i;
5. Что производит следующий фрагмент программы?
for i:=1 to n do write(‘a[‘,i,’] ‘,a[i]);
a) Ввод элементов массива с клавиатуры.
b) Вывод элементов массива на экран монитора.
c) Ввод элементов массива из файла.
6. Что производит следующий фрагмент программы?
for i:=1 to n do a[i]:=random(45)-22;
a) Заполняет массив случайными числами и выводит их на экран.
b) Заполняет массив случайными числами и выводит последний элемент на экран.
c) Заполняет массив случайными числами и выводит первый элемент на экран.
ОТВЕТЫ на тест «Одномерные массивы» 9 класс
Массивы
Сайт: | Электронные курсы ТПУ |
Курс: | Информационные технологии 1 |
Книга: | Массивы |
Напечатано:: | Гость |
Дата: | Вторник, 21 Декабрь 2021, 11:01 |
Оглавление
Массивы
Все простые типы данных, рассматриваемые ранее, имеют два характерных свойства: неделимость и упорядоченность их значений. Составные, или структурированные типы данных задают множество сложных значений с одним общим именем. Существует несколько методов структурирования, каждый из которых отличается способом обращения к отдельным компонентам. В данном учебном пособии будут рассмотрены только два структурированных типа данных: регулярный тип (массивы) и строковый тип.
С понятием «массив» приходится встречаться при решении научно-технических, экономических задач обработки большого количества однотипных значений.
Таким образом, массив – это упорядоченная последовательность данных, состоящая из фиксированного числа элементов, имеющих один и тот же тип, и обозначаемая одним именем.
Название регулярный тип массивы получили за то, что в них объединены однородные элементы, упорядоченные (урегулированные) по индексам, определяющим положение каждого элемента в массиве.
Массиву присваивается имя, посредством которого можно ссылаться на него как на единое целое. Элементы, образующие массив, упорядочены так, что каждому элементу соответствует совокупность номеров (индексов), определяющих его место в общей последовательности. Индексы представляют собой выражения простого типа. Доступ к каждому отдельному элементу осуществляется обращением к имени массива с указанием индекса нужного элемента:
Чтобы использовать массивы в программах, нужно их описать в разделе описаний. Тип массива не является стандартным, поэтому его необходимо описать в части описания типов. Описание типа массива определяет его имя, размер массива и тип данных:
type =array[ ] of ;
Далее, в перечне переменных указывается имя массива и через двоеточие указывается имя нового типа данных:
Массив может быть описан и без представления типа в разделе описания типов данных:
var :array[ ] of ;
Этот вариант описания короче, но в некоторых случаях, когда описание переменных типа массив встречается несколько раз в различных частях программы, необходимо описание этого типа отдельно, как приведено в первом варианте.
Чаще всего в качестве типа индекса используется интервальный целый тип.
1. Одномерные массивы
Линейный (одномерный) массив – массив, у которого в описании задан только один индекс; если два индекса, то это двумерный массив и т. д. Одномерные массивы часто называют векторами, т. е. они представляют собой конечную последовательность пронумерованных элементов. Пример описания одномерного массива:
type vec=array[1..5] of real;
var x:vec;
var x: array[1..5] of real;
Оба из вариантов описывают одномерный массив x, состоящий из 5 вещественных элементов.
Присваивание начальных значений (заполнение массива) заключается в присваивании каждому элементу массива некоторого значения заданного типа. Наиболее эффективно эта операция осуществляется при помощи оператора for. Ввод данных может осуществляться: с клавиатуры, из файла данных, при помощи различных формул, в том числе и датчика случайных чисел.
Индексированные элементы массива называются индексированными переменными и могут быть использованы так же, как и простые переменные. Например, они могут находиться в выражениях в качестве операндов, им можно присваивать любые значения, соответствующие их типу, и т. д.
Алгоритм решения задач с использованием массивов:
1.1. Заполнение массива
Рассмотрим типичные варианты заполнения массива х, описанного выше.
Заполнение всех элементов массива числом 1 :
for i:=1 to 5 do x[i]:=1;
Заполнение всех элементов массива случайными числами из диапазона 0–9 :
for i:=1 to 5 do x[i]:=random(9);
Заполнение всех элементов массива при помощи ввода с клавиатуры:
for i:=1 to 5 do
begin
readln(x[i]);
1.2. Вывод массива на экран
Вывод массива на экран в одну строку без пояснений:
for i:=1 to 5 do writeln(x[i]:6:1);
Вывод массива на экран в столбец с пояснениями. Этот вариант гораздо нагляднее. Старайтесь использовать его:
for i:=1 to 5 do writeln(‘x[’,i,‘]=’,x[i]:6:1);
1.3. Работа с массивами
Пример 6.1. Определить самую высокую температуру и самый теплый день в мае.
program massiv;
uses crt;
var t:array[1..31] of integer;
i,max,n:integer;
begin
Clrscr;
for i:=1 to 31 do
begin
t[i]:=random(20);
write(t[i],‘ ’);
writeln;
max:=t[1]; n:=1;
for i:=2 to 31 do
begin
if t[i]>max then
begin max:=t[i]; n:=i; end;
writeln(‘t-макс.= ’,max,‘ в ’,n, ‘день’);
2. Двумерные массивы
Двумерный массив – структура данных, хранящая прямоугольную матрицу. В матрице каждый элемент определяется номером строки и номером столбца, на пересечении которых он расположен. В Паскале двумерный массив представляется массивом, элементами которого являются одномерные массивы. Два следующих описания двумерных массивов тождественны:
var a:array [1..5] of array [1..6] of real;
var a:array [1..5,1..6] of real;
Чаще всего при описании двумерного массива используют второй способ. Так же как и для одномерных массивов, для двумерных можно использовать отдельно описание нового типа массива, а затем описывать переменную, используя этот тип:
type matr=array [1..5,1..6] of integer;
var a:matr;
Доступ к каждому отдельному элементу осуществляется обращением к имени массива с указанием индексов (первый индекс – номер строки, второй индекс – номер столбца). Все действия над элементами двумерного массива идентичны действиям над элементами линейного массива. Только для инициализации двумерного массива используется конструкция, когда один цикл for вложен в другой. Например:
for i:=1 to 5 do
for j:=1 to 6 do
a[i,j]:=0;
При организации вложенных (сложных) циклов необходимо учитывать:
2.1. Заполнение матрицы
Рассмотрим типичные варианты заполнения матрицы a, описанной выше.
Заполнение всех элементов матрицы случайными числами из диапазона 1 – 9 :
for i:=1 to 5 do
for j:=1 to 6 do
a[i,j]:=random(9);
Заполнение всех элементов матрицы при помощи ввода с клавиатуры:
for i:=1 to 5 do
for j:=1 to 6 do
begin
readln(a[i,j]);
2.2. Вывод матрицы на экран
Вывести на экран матрицу 5 ´ 6 можно следующим образом:
for i:=1 to 5 do
begin
for j:=1 to 6 do
2.3. Работа с матрицами
Работа с матрицами осуществляется также поэлементно.
Пример 6.2. Сформировать таблицу Пифагора (таблица умножения) и вывести ее на экран.
program pifagor;
uses crt;
var p:array [1..9,1..9] of integer;
i,j:integer;
begin
Clrscr;
for i:=1 to 9 do
for j:=1 to 9 do
p[i,j]:=i*j;
for i:=1 to 9 do
begin
for j:=1 to 9 do
write(p[i,j]:4);
writeln;
program massiv;
uses crt;
var b:array[1..10,1..10] of integer;
i,j,s:integer;
begin
Clrscr;
for i:=1 to 10 do
begin
for j:= 1 to 10 do
begin
b[i,j]:=random(20)-10;
write(b[i,j]:4);
writeln;
for i:=1 to 10 do
s:=s*b[i,11-i];
writeln(‘Произведение = ’,s);
Пример 6.4. Ввести с клавиатуры матрицу В(5, 5) и поменять местами первый и последний столбец.
program mest;
var b:array[1..5,1..5] of integer;
i,j,s:integer;
begin
for i:=1 to 5 do
for j:=1 to 5 do
begin
readln(b[i,j]);
for i:=1 to 5 do
begin
for j:=1 to 5 do
write(b[i,j]:4);
writeln;
for i:=1 to 5 do
begin
s:=b[i,1]; b[i,1]:=b[i,5]; b[i,5]:=s;
writeln;
writeln(‘Изменённая матрица’);
Что определяет индекс массива
Массив – это составной объект, образованный из элементов (компонент) одного и того же типа. Такой тип данных применяется в программировании для обозначения объектов, аналогичных числовым последовательностям в математике, где сразу целая группа чисел обозначается одним именем (чаще всего буквой), а для обращения к каждому отдельному числу данной последовательности используются различные индексы (номера элементов).
В математике это может выглядеть, например, так:
Таким образом, в программировании массив – это последовательность однотипных элементов, имеющих общее имя, причем каждый элемент этой последовательности определяется порядковым номером (индексом) элемента.
Х1, Х2, …, Хn – одномерный массив, состоящий из n элементов;
А0, А1, А2, …, А10 – одномерный массив, состоящий из 11 элементов.
Описание одномерных массивов
Переменную типа массив можно описать сразу в разделе описания переменных Var:
Var Имя переменной: array [тип индекса (ов)] Of тип элементов;
Здесь:
Array – служебное слово (в переводе с английского означает «массив»);
Of – служебное слово (в переводе с английского означает «из»).
Пример
Var X: array [1..20] of real;
Массив Х – одномерный, состоящий из двадцати элементов вещественного типа. Элементы массива хранятся в памяти компьютера последовательно друг за другом.
Индексы элементов массива могут начинаться с любого целого числа, в том числе и отрицательного.
Ввод и вывод одномерных массивов в Паскале
Для ввода массива можно использовать любой цикл.
Ввод массива с использованием цикла с параметром
Program Primer;
Var i: integer;
X: array [1..30] of Integer;
Begin
For i := 1 To 30 Do Read (X[i]);
Readln
End.
Ввод массива с использованием цикла с постусловием
Program Primer;
Var i: integer;
X: array [1..30] of Integer;
Begin
i := 1;
While i Begin
Read (X[i]);
i := i + 1;
End;
Readln
End.
Вывод одномерного массива осуществляется аналогично. В программе вместо операторов Read или Readln используются операторы Write или Writeln. Но просто заменить одни операторы на другие здесь недостаточно. Для того чтобы выводимые значения не сливались между собой, надо явным образом вставлять между ними разделитель – пробел или перевод строки.
Приведем два возможных способа вывода массива:
For i := 1 To n Do Write (X[i],’ ‘);
For i := 1 To n Do Writeln (x[i]).
Program Primer;
Const n = 30;
Var i: Integer;
X: Array [1..n] Of Integer;
Begin
For i:=1 to n do x[i]:=1;
For i:= 1 To n Do Write (X[i]);
Writeln; <курсор переводит на новую строку>
Readln;
End.
Вывод: 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
JavaScript | Что такое индекс массива?
Под словосочетанием «индекс массива» подразумевают «номер целочисленного индекса элемента массива«. Прикол в том, что когда в коде (в редакторе кода) пишут массив через квадратные скобки, то по факту пишут ЗНАЧЕНИЯ элементов массива, а JavaScript уже сам у себя в «невидимом» режиме «проставляет» нужные целочисленные ИНДЕКСЫ от нуля до какого-то положительного целого числа (зависит от количества элементов в массиве). То есть кодер (программист) не видит эти индексы, но они есть.
Считайте это небольшим визуальным улучшением. Представьте себе, что у вас массив из 1 миллиона строк. У вас и так много значений, а вы ещё будете приписывать номера для каждого элемента в самом коде. Очевидно, что в этом нет никакого смысла т. к. номер индекса на следующем элементе увеличивается на один. И так у всех. Эту писанину можно «опустить» (убрать с глаз) и сконцентрироваться на самих данных (значениях).
Как это понять?
Любой элемент массива состоит из пары «ИНДЕКС / ЗНАЧЕНИЕ».
Индексы — порядковые номера элементов. Сначала идёт первый элемент, потом второй, потом третий и т.д..
Значения — это данные, которые мы храним в элементах массивов. Именно эти данные представляют наибольшую ценность в массивах.
Если мы хотим дотянуться до «данных» в массиве, то мы должны знать «порядковый номер» элемента в этом массиве. Если мы хотим дотянуться до «ЗНАЧЕНИЯ элемента» в массиве, то мы должны знать «ИНДЕКС элемента» в этом массиве. По индексу мы находим значение.
Если мы не будем знать индекса, то мы не сможем получить значения из массива.
Если мы обратимся к элементу массива по другому индексу, то мы получим другое значение.
Элемент массива — ИНДЕКС и ЗНАЧЕНИЕ — JavaScript
Информация из стандарта ECMAScript
ArrayLiteral — это выражение, описывающее инициализацию объекта Array с использованием списка из нуля или более выражений, каждое из которых представляет элемент массива, заключенного в квадратные скобки. Элементы не обязательно должны быть литералами; они оцениваются каждый раз, когда оценивается инициализатор массива.
Элементы массива могут быть опущены в начале, середине или конце списка элементов. Каждый раз, когда запятой в списке элементов не предшествует AssignmentExpression (т.е. запятая в начале или после другой запятой), отсутствующий элемент массива способствует увеличению длины массива и увеличивает индекс последующих элементов. Исключаемые элементы массива не определены. Если элемент опущен в конце массива, этот элемент не влияет на длину массива.
Представьте, что у нас есть пустой массив:
Мы проинициализирвали массив при помощи квадратных скобок. Этот массив пустой — в нём нет элементов. Теперь задайте себе вопрос — как добавить новый элемент в этот массив?
Что проинициализировать элемент массива, нам нужно будет воспользоваться «другими» квадратными скобками. Например добавим первый элемент массива:
Обратите внимание. Мы в квадратные скобки написали тот самый «невидимый» номер, который является индексом первого элемента массива. Да, да. Вам не показалось. Индекс 0, элемент 1.
Если мы сейчас выведем в консоль браузера наш массив, то браузер нам покажет существующие в нём элементы, их индексы и их значения.
Создали массив — Добавили первый элемент — Установили индекс 0 ноль — JavaScript
Вот это и называется индексом массива!
Как заменить значение элемента под определённым индексом?
Индекс нужно знать для того, чтобы иметь возможность «переназначать» значение. Представьте, что у вас есть кошелёк в сумке. Сегодня вы положили в кошелёк 2 тысячи рублей, а завтра положили 5 тысяч. Кошелёк один, а значения разные. Так же и с элементами массива — индекс один а значения можно менять сколько угодно.
Переназначим в нашем массиве значение «Иванов Пётр Владимирович» на «Светка-Конфетка»
Индекс массива помог нам переназначить значение элемента — JavaScript
Pascal-Паскаль
Программирование. Одномерные массивы Pascal-Паскаль
Программирование. Одномерные массивы Pascal-Паскаль
Понятие структуры
Массив – однородная совокупность элементов
Самой распространенной структурой, реализованной практически во всех языках программирования, является массив.
Другая особенность массива состоит в том, что к любой его компоненте можно обращаться произвольным образом. Что это значит? Программа может сразу получить нужный ей элемент по его порядковому номеру (индексу).
Индекс массива
Описание массива в Паскале. В языке Паскаль тип массива задается с использованием специального слова array (англ. – массив), и его объявление в программе выглядит следующим образом:
где I – тип индекса массива, T – тип его элементов.
Можно описывать сразу переменные типа массив, т.е. в разделе описания переменных:
При этом длину массива Паскаля характеризует выражение:
Вот, например, объявление двух типов: vector в виде массива Паскаля из 10 целых чисел и stroka в виде массива из 256 символов:
С помощью индекса массива можно обращаться к отдельным элементам любого массива, как к обычной переменной: можно получать значение этого элемента, отдельно присваивать ему значение, использовать его в выражениях.
Опишем переменные типа vector и stroka :
Вычисление индекса массива Паскаля
Индекс массива в Паскале не обязательно задавать в явном виде. В качестве индекса массива можно использовать переменную или выражение, соответствующее индексному типу. Иначе говоря, индексы можно вычислять.
Этот механизм – весьма мощное средство программирования. Но он порождает распространенную ошибку: результат вычислений может оказаться за пределами интервала допустимых значений индекса, то есть будет произведена попытка обратиться к элементу, которого не существует. Эта типичная ошибка называется «выход за пределы массива».
Пример программы с ошибкой массива Паскаля
Хотя данная программа полностью соответствует синтаксису языка, и транслятор «пропустит» ее, на стадии выполнения произойдет ошибка выхода за пределы массива Паскаля. При n =45 выражение n *2=90, компьютер сделает попытку обратиться к элементу массива a [90], но такого элемента нет, поскольку описан массив размерностью 80.
Будем считать, что хорошая программа должна выдавать предупреждающее сообщение в случае попытки обращения к несуществующим элементам массива. Не лишним будет проверять возможный выход как за правую, так и за левую границы массива, ведь не исключено, что в результате вычисления значения выражения получится число, находящееся левее границы массива Паскаля.
Из всего этого следует сделать вывод: программисту надо быть очень аккуратным при работе с индексами массива.
Основные действия с массивами Паскаля
Как известно, определение типа данных означает ограничение области допустимых значений, внутреннее представление в ЭВМ, а также набор допустимых операций над данными этого типа. Мы определили тип данных как массив Паскаля. Какие же операции определены над этим типом данных? Единственное действие, которое можно выполнять над массивами целиком, причем только при условии, что массивы однотипны, – это присваивание. Если в программе описаны две переменные одного типа, например,
то можно переменной a присвоить значение переменной b ( a := b ). При этом каждому элементу массива a будет присвоено соответствующее значение из массива b. Все остальные действия над массивами Паскаля производятся поэлементно (это важно!).
Ввод массива Паскаля
Для того чтобы ввести значения элементов массива, необходимо последовательно изменять значение индекса, начиная с первого до последнего, и вводить соответствующий элемент. Для реализации этих действий удобно использовать цикл с заданным числом повторений, т.е. простой арифметический цикл, где параметром цикла будет выступать переменная – индекс массива Паскаля. Значения элементов могут быть введены с клавиатуры или определены с помощью оператора присваивания.
Пример фрагмента программы ввода массива Паскаля
Рассмотрим теперь случай, когда массив Паскаля заполняется автоматически случайными числами, для этого будем использовать функцию random ( N ).
Пример фрагмента программы заполнения массива Паскаля случайными числами
Вывод массива Паскаля
Вывод массива в Паскале осуществляется также поэлементно, в цикле, где параметром выступает индекс массива, принимая последовательно все значения от первого до последнего.
Пример фрагмента программы вывода массива Паскаля
Вывод можно осуществить и в столбик с указанием соответствующего индекса. Но в таком случае нужно учитывать, что при большой размерности массива все элементы могут не поместиться на экране и будет происходить скроллинг, т.е. при заполнении всех строк экрана будет печататься очередной элемент, а верхний смещаться за пределы экрана.
Пример программы вывода массива Паскаля в столбик
На экране мы увидим, к примеру, следующие значения:
Пример решения задачи с использованием массивов Паскаля
Решение задачи:
Ход решения задачи:
Текст программы :
Пример программы суммирования векторов
Программирование
Исходники Pascal (127)
Справочник
Справочник по паскалю: директивы, функции, процедуры, операторы и модули по алфавиту