Построение структур данных
Данные бывают двух видов:
- Простейшие данные – элементы данных, являющиеся неделимыми (числа, строки, знаки). Для простейших данных существуют стандартные типы (Integer,Real, Char, String, Boolean).
- Структурированные данные – это структуры, состоящие из нескольких простейших данных. Определяются пользователем в программе при помощи двух конструкций:
- Массив – структура однотипных данных с индексированным доступом.
- Запись – структура данных с доступом по идентификатору.
Массивы
Массив – структура однотипных данных с индексированным доступом. Каждый элемент массива получает один или несколько номеров, называемых индексами. Индексы записываются в квадратных скобках через запятую.
Массивы бывают следующих видов:
- Одномерные – каждый элемент массива получает два индекса (пр. [2,3]).
- Многомерные – каждый элемент получает более 2-х индексов (пр. [1,1,k]).
Описание массивов
Каждый из индексов массива находится в некотором диапазоне (<нач. элемент>…<кон. элемент>). Причем конечный элемент больше либо равен начальному элементу. В качестве диапазона можно использовать: Integer, Char, Boolean.
Массив в языке Паскаль это сложный тип данных, поэтому чаще всего его описывают в разделе переменных.
Var <переем. массив>: array[<диапазон 1>..<диапазон N>]
Of <тип переменной>;
Пример: список студентов группы
Var Spisok: array[1..40] String[20];
Получение элементов массива
Каждый элемент массива — это переменная, которой можно присваивать значения в операторах и функциях. Для того, чтобы указать элемент массива, необходимо записать все его индексы.
<перем. массив>[<индекс>,..,<индекс N>]
Пример:
Spisok[1]:=’Иванов’;
Ввод массива с клавиатуры
Массив нельзя ввести с клавиатуры одной командой, для этого организовывается цикл с параметром. Для того чтобы обеспечить правильный ввод массива, необходимо соблюдать следующий алгоритм:
<приглашение к вводу массива>;
<ввод количества элементов массива>;
For i:=1 to <кол-во элементов> do
Begin
<приглашение к вводу i-го элемента>;
<ввод i-го элемента>;
End;
Пример:
WriteLn (‘ввод списка студентов’);
WriteLn (‘введите количество студентов’);
ReadLn (kolvo);
For i:=1 to kolvo do
Begin
WriteLn (i,’ ’);
ReadLn (spisok[i]);
End;
Вывод массива на экран
- Вывод в строку. При выводе массива в строку нужно использовать Write, которая будет находиться в цикле с параметром, а после цикла нужно поставить WriteLn.
Пример:
For i:=1 to kolvo do
Write(spisok[i],’ ‘);
WriteLn;
- Вывод массива в столбец. При выводе в столбец в цикле указывается WriteLn, причем для массивов, содержащих числа, следует также указывать количество знаков при выводе на экран.
Пример:
For i:=1 to kolvo do
Write (i:2,’. ’,spisok[i]);
Действия с массивами
Над массивами нельзя выполнять арифметические действия (вычитать, складывать и др.). Все действия выполняются поэлементно.
Пример: Написать программу, которая выполняет поэлементное суммирование массивов A и B.
Program Summ;
Var A,B Array [1..10] of Integer;
Kolvo:Integer;
C: Array [1..10] of Integer;
i: Integer;
Begin
WriteLn (‘введите количество элементов массивов’);
ReadLn (Kolvo);
WriteLn (‘введите элементы маcсива A’);
For i:=1 to Kolvo do
begin
Write(i, ‘) ’);
ReadLn (A[i]);
end;
WriteLn (‘введите элементы маcсива B’);
For i:=1 to Kolvo do
begin
Write(i, ‘) ’);
ReadLn (B[i]);
end;
For i:=1 to Kolvo do
C[i]:= A[i]+B[i];
For i:=1 to Kolvo do
Writeln (C[i]:5);
End.
Двухмерные массивы
Ввод построчно
<приглашение ввода массива>;
<цикл по строкам>;
Begin
<приглашение ввода строки>;
<цикл по столбцам>;
Begin
<приглашение ввода элемента>;
<ввод элемента массива>;
End;
End.
Ввод по столбцам
<приглашение ввода массива>;
<цикл по столбцам>;
Begin
<приглашение ввода столбца>;
<цикл по строкам>;
Begin
<приглашение ввода элемента>;
<ввод элемента массива>;
End;
End
. Программы сортировки массива в паскале ddjl vfcbdf d hgfcrfkt как сделать массив в паскале delphi одномерные массивы сформировать двумерный массив случайнвх чисел и посчитать количество не нулевых элеметов в каждой строке и одном массиве