Помощь в написании студенческих работ
Антистрессовый сервис

Операции с одномерными массивами

РефератПомощь в написанииУзнать стоимостьмоей работы

Пусть описан массив a следующим образом: Причем массивы должны быть одного типа. Соответствующий фрагмент программы: Соответствующий фрагмент программы: Соответствующий фрагмент программы: B — обращение к i-му элементу массива. For i:=2 to 10 do if a>max then max:=a; For i:=1 to 10 do if a>max then max:=a; Текст всей программы: Текст всей программы: For i:=1 to 10 do writeln (a); For i:=1 to 10… Читать ещё >

Операции с одномерными массивами (реферат, курсовая, диплом, контрольная)

1) Обращение к элементу массива происходит путем указания имени массива, после чего в квадратных скобках указывается номер элемента в массиве;

a[4] - обращение к четвертому элементу массива;

b[i] - обращение к i-му элементу массива.

Над элементом массива можно осуществлять те же операции, что и над переменными того же типа.

2) Присваивание: с массивами в целом можно выполнять только эту операцию.

x:=y — присваивания одного массива другому,.

причем массивы должны быть одного типа.

Все остальные действия можно выполнять только с отдельными элементами массива.

Стандартные процедуры обработки одномерных массивов

Пусть описан массив a следующим образом:

Var a: array [1.10] of integer;

1) Ввод массива. Массив нельзя вводить с клавиатуры при помощи оператора readln (a). Каждый элемент массива приходится вводить отдельно. А так как в массиве 10 элементов, то нужно перебрать все эти элементы. То есть номер элемента i будет меняться от 1 до 10, для ввода массива нужно завести цикл от i=1 до i=10, на каждом шаге которого будет вводиться с клавиатуры очередной i-й элемент массива:

For i:=1 to 10 do readln (a[i]);

2) Вывод массива. Аналогично вводу, каждый элемент любого массива приходится выводить отдельно. А так как элементов несколько, то для вывода массива нужно завести цикл от i=1 до i=10:

For i:=1 to 10 do writeln (a[i]);

3) Нахождение суммы элементов массива. Сумма всех элементов массива будет содержаться в переменной s. Переберем все элементы массива (for i:=1 to 10 do) и добавим их к переменной s (s:=s+a[i]). Но предварительно до перебора всех элементов переменную s обозначим за 0, так как пока в сумме s ни один элемент массива не учтен.

Соответствующий фрагмент программы:

S:=0;

For i:=1 to 10 do s:=s+a[i];

Writeln (s);

Что касается всей программы, то перед подсчетом суммы обязательно нужно ввести массив. Текст всей программы:

Program z1;

Var a: array [1.10] of integer;

i, s: integer;

begin.

for i:=1 to 10 do readln (a[i]);

s:=0;

for i:=1 to 10 do s:=s+a[i];

writeln (s).

end.

4) Нахождение произведения элементов массива. Произведение всех элементов массива будет содержаться в переменной p. Переберем все элементы массива (for i:=1 to 10 do) и умножим их на переменную p (p:=p*a[i]). Но предварительно до перебора всех элементов переменную p обозначим за 1, а не за 0, так как при умножении дальнейших элементов на 0 получим в результате 0, а не то произведение, которое мы ищем.

Соответствующий фрагмент программы:

p:=1;

For i:=1 to 10 do p:=p*a[i];

Writeln (p);

Текст всей программы:

Program z2;

Var a: array [1.10] of integer;

i, p: integer;

begin.

for i:=1 to 10 do readln (a[i]);

p:=1;

for i:=1 to 10 do p:=p*a[i];

writeln (p).

end.

5) Нахождение минимального (наименьшего) и максимального (наибольшего) элемента массива. Рассмотрим нахождение максимального элемента в массиве. Для хранения максимального элемента заведем переменную max.

Для определения максимума в массиве первый элемент массива обозначим за максимальный (max:=a[1]), затем пересмотрим все остальные элементы массива (for i:=2 to 10 do) и если встретим элемент, больший того, который считался максимальным до этого момента (if a[i]>max then), то обозначим его за максимальный (max:=a[i]).

Соответствующий фрагмент программы:

max:=a[1];

For i:=1 to 10 do if a[i]>max then max:=a[i];

Writeln (max);

Текст всей программы:

Program z3;

Var a: array [1.10] of integer;

i, max: integer;

begin.

for i:=1 to 10 do readln (a[i]);

max:=a[1];

For i:=2 to 10 do if a[i]>max then max:=a[i];

Writeln (max);

end.

Показать весь текст
Заполнить форму текущей работой