Программирование. Одномерный массив


Чтобы посмотреть презентацию с оформлением и слайдами, скачайте ее файл и откройте в PowerPoint на своем компьютере.
Текстовое содержимое слайдов:

Одномерные массивы План:Типы данных, определяемые программистом.Понятие структурированного типа данных.Понятие массива. Описание типа массив.Описание, ввод и вывод элементов одномерного массива.Основные действия над элементами массивов.Обработка одномерных массивов.Символьные массивы. 1. Типы данных, определяемые программистом type имя_типа = описание_типа…var имя_переменной : имя_типаилиvar имя_переменной : описание_типа 1.1. Перечисляемый тип данныхtype имя_типа = (список имен констант) Например, type Menu = (READ, WRITE, EDIT, QUIT) Примеры перечислимых типов: Тoр, Down, Left, Right; Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday. 1.2. Интервальный тип данных type имя_типа = константа_1 .. константа_2 Примеры описания интервальных типов:type Hour = 0 .. 23;Range = -100 .. 100;Letters = ‘а’..’z’; Actions = READ .. EDIT; 3. Понятие массива. Описание типа массив Описание типа массив на Паскале:type имя_типа = array [type1, type2, …, type n] of type s;где array и of – ключевые слова, тип индекса задается в квадратных скобках; type1, type2, …, type n – типы индексов; type s – базовый тип, тип компонентов массива; n – размерность массива.При n = 1 описание соответствует одномерному массиву (вектору),n = 2 – двумерному массиву (матрице),n > 2 – многомерному массиву. Доступ к элементам массива: A[1], A[2], A[5], A[10]Способы задания индекса: А[3] – непосредственно числом; А[TEL] – косвенно через значение переменной; A[2+TEL] – косвенно через значение выражения. Задание массивов:1 способtype имя_типа = array [тип_индекса] of тип_элемента;Примеры описания одномерных массивов:type mas = array [1 .. 10] of real; Color = array [byte] of mas; var v: mas; 2 способvar v: аrray [1..10] of real; Описание массивов:const n = 6;type intmas = array [1 .. n] of integer;var a, b : intmas; 4. Описание, ввод и вывод элементов одномерного массива const n=10; type mas = array[1..n] of real; var X,Y: mas; i, j, k: integer; 1. Инициализация массива: присвоение каждому элементу начального значения (базового типа):  a). Присвоение значений элементам массива до начала выполнения программы: const a : intmas = (0, 5. -7, 100. 15, 1);б) обнуление элементов массива:procedure nul (A:mas);begin for i := 1 to n do a[i] := 0;end; 5. Основные действия над элементами массивов в) ввод значений элементов массива с клавиатуры:procedure vvod­_klaviatura (var A: mas); {A – параметр-переменная, используемый только в процедуре, передается в основную программу,begin в основной программе – это переменная Х} for i := 1 to n do begin write (‘Введите ‘, i, ‘элемент: ‘); readln (a[i]); end;end;beginvvod­_klaviatura (X); {вызов процедуры}…end. 5. Основные действия над элементами массивов г) формирование целочисленного массива с помощью генерации последовательности случайных чисел – ГПСЧ (в массиве числа от 1 до X):const p=50;procedure vvod_sluchainie_chisla1(var A, B: mas); {A и B – параметры- переменные, используемые только в процедуре, передаются в основную программу,beginв основной программе – это переменные Х и Y} for i := 1 to n do a[i]:=random(p)+1; {элементы массива целые числа от 1 до 51} for i := 1 to n do b[i]:=random(p) – 25; {элементы массива end; целые числа от – 25 до 25}beginrandomize;vvod_sluchainie_chisla1 (X,Y); {вызов процедуры}…end. 5. Основные действия над элементами массивов  д) формирование массива действительных чисел с помощью генерации последовательности случайных чисел – ГПСЧ (в массиве действительные числа от 1 до X):const p=50;procedure vvod_sluchainie_chisla2(var A, B: mas); {A и B – параметры- переменные, используемые только в процедуре,передаются в основную программу,beginв основной программе – это переменные Х и Y } for i := 1 to n do a[i]:=random; {элементы массива действительные числа от 0 до 1} for i := 1 to n do b[i]:=random*p – 25; {элементы массива действительные end; числа от – 25 до 25}beginrandomize;vvod_sluchainie_chisla2(X,Y); {вызов процедуры}…end. 5. Основные действия над элементами массивов 2. Вывод массива на печать аналогичен вводу с клавиатуры:procedure vivod (A: mas); {A – параметр-значения, используемый только в процедуре, begin в основной программе – это переменная Х} for i := 1 to n do write (a[i], ‘ ‘);end;beginvivod (X);{вызов процедуры}…end. 5. Основные действия над элементами массивов 3. Копирование элементов одного массива в другой: присваивание значений всех элементов A всем соответствующим элементам другого массива D: а) D:=A; б) procedure copy (A: mas; var D: mas); {A – параметр-значение, D – параметр-переменная, begin передается в основную программу}for i := 1 to n do d[i] := a[i];end;begincopy (X,Y); {вызов процедуры}…end. 5. Основные действия над элементами массивов 4. Поиск в массиве элементов, удовлетворяющих заданному условию (например, нулевых) и печать их индексов:procedure poisk (А:mas); {A – параметр-значение}begin k:=0; for i := 1 to n do begin if a[i]:=0 then begin inc(k); {увеличение значения счетчика k на 1} write(‘(‘,i,’)’); end; end; write (‘Найдено ‘, k:3, ‘ элементов.’);end;beginpoisk (X); {вызов процедуры}…end. 5. Основные действия над элементами массивов Символьные массивы – массивы, состоящие из элементов типа char: сonst n = 20;var stroka : array [1 .. n] of char;Дополнительные средства для работы с символьными массивами.1. Возможен ввод символьного массива:stroka := ‘Символьный массив ’2. Допустима операция соединения (слияния или конкатенации):сonst n = 2;var str1, str2: array [1 .. n] of char;begin str1 := ‘12’; str2 := ‘34’; write (str1+ str2);end. 7. Символьные массивы

Приложенные файлы

  • ppt 1massivPascal
    Презентация
    Размер файла: 81 kB Загрузок: 1