Как составлять программы с массивами

Как говорилось ранее, важным приемом программирования является параметризация. В данном случае мы работаем с массивом из 10 элементов, но всюду в программе используем не число 10, а константу n равную 10. Это облегчает возможную модификацию программы в случае, когда придется работать с другим количеством элементов в массиве: достаточно изменить значение константы.

Другой стилистической особенностью программы является разделение задач заполнения и вывода элементов. При желании это можно было сделать в одном цикле, но с точки зрения стиля разделение задач всегда хорошо. Пример 2: Вычисление среднего арифметического элементов массива. Вычисление состоит из двух этапов – подсчета суммы элементов и ее деления на общее число элементов.

const n = 10; type TMassive = array [0..n-1] of real; var x: TMassive; s: real; i: integer; begin > s:=0; for i:=0 to n-1 do s:=s+x[i]; s:=s/n; writeln(‘Mean value = ‘, s); end.

Смысл программы кажется прозрачным и не нуждается в пояснениях. Пример 3: Поиск элемента в массиве. Пусть задан вещественнозначный массив x[0], x[2], …, x[n-1], а также число y. Определить, есть ли в массиве элемент x[k], такой что x[k] = y, и чему равен его индекс k.

Задачи с массивами | Pascal | Сумма и поиск элементов


const n = 10; type TMassive = array [0..n-1] of integer; var x: TMassive; y: real; k: integer; begin > readln(y); k:=0; while (ky) do k:=k+1; if k=n then writeln(‘No such element’) else writeln(‘Element has number: ‘, k); end.

Цикл while может закончиться по двум причинам: когда найден нужный элемент (x[k] = y) или когда были проверены все элементы (k>=n).

Понять, что послужило причиной окончания цикла можно по значению переменной k. Заметим, что если в массиве нет искомого элемента, то на последнем шаге цикла k = n. по этой причине принципиально в каком порядке стоят условия продолжения цикла while. Если поменять их местами, сделав (x[k]<>y)and(k

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

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

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

const n = 10; type TMassive = array [0..n-1] of integer; var x: TMassive; k, Kmax: integer; begin > Kmax:=0; for k:=1 to n-1 do if x[k]>x[Kmax] then Kmax:=k; writeln(‘Max = ‘, x[Kmax]); writeln(‘Max element number = ‘, Kmax); end.

Источник: www.tvd-home.ru

Как составлять программы с массивами

Массив представляет набор однотипных данных. Формальное определение массива выглядит следующим образом:

тип_переменной название_массива [длина_массива]

После типа переменной идет название массива, а затем в квадратных скобках его размер. Например, определим массив из 4 чисел:

Что такое массив. Примеры. Теория. Array. Одномерный массив. Синтаксис. C++. Урок #25.


int numbers[4];

Число элементов массива также можно определять через константу:

const int n = 4; int numbers[n]; // содержит 4 элемента

Некоторые компиляторы (например, G++) также поддерживают установку размера с помощью переменных.

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru