Например: семейство бабочек; Понятие одномерного массива поле цветов;
Понятие одномерного массива Таблица температур за неделю Дни недели пнвтсрчтптсбвс T [ 1:7 ]T [1]T [2]T [3]T [4]T [5]T [6]T [7] температу ра
Массивы Массив – это пронумерованная конечная последовательность однотипных величин.
Характеристики массива: A[I] ИМЯ[индекс] Массивы Тип элементов массива Имя массива Размер массива
Массивы A массив 3 15 НОМЕР элемента массива (ИНДЕКС) НОМЕР элемента массива (ИНДЕКС) A[1] A[2] A[3] A[4] A[5] ЗНАЧЕНИЕ элемента массива A[2] =10 НОМЕР (ИНДЕКС) элемента массива: 2 ЗНАЧЕНИЕ элемента массива: 10
Описание массива на Паскале Массив целых чисел: имя начальный индекс конечный индекс тип элементов тип элементов var A: array[1.. ] of integer; const N=5; N var A : array[ ] of integer ; Размер через константу:
Заполнение массивов - с клавиатуры; - с помощью датчика случайных чисел; - с помощью формулы.
Заполнение массивов Пример Заполнить массив А с клавиатуры a[1] = a[2] = a[3] = a[4] = a[5] = for i:=1 to 5 do begin write('a[', i, ']='); read ( a[i] ); end; for i:=1 to 5 do begin write('a[', i, ']='); read ( a[i] ); end; с клавиатуры
Заполнение массива случайными числами Вещественное число от 0 до 1 random for i:=1 to 10 do begin a[i]:=random(101); {числа от 1 до 100} end; Число из интервала [0, M-1] random (М) Число из интервала [a, b] random (b-a+1)+a
Заполнение массива с помощью формулы Пример. Заполнить одномерный массив из 10 чисел по формуле b[i]:=i*3. var b: array [1..10] of integer; i: integer; begin for i:=1 to 10 do b[i]:=i*3; end;
Вывод массива writeln('Массив А:'); For i:=1 to 3 do write (А[i]:4); End; Для одномерного массива А из 3 элементов:
На экране Массив А: Вывод массива
Максимальный элемент Задача: найти в массиве максимальный элемент. Алгоритм: самый большой max max max
{ считаем, что первый элемент – максимальный } for i:=2 to N do if a[i] > { максимального } then { запомнить новый максимальный элемент a[i] } { считаем, что первый элемент – максимальный } for i:=2 to N do if a[i] > { максимального } then { запомнить новый максимальный элемент a[i] } Максимальный элемент
Номер максимального элемента max := a[1]; { считаем, что первый – максимальный } iMax := 1; for i:=2 to N do { проверяем все остальные } if a[i] > max then { нашли новый максимальный } begin max := a[i]; { запомнить a[i] } iMax := i; { запомнить i } end; max := a[1]; { считаем, что первый – максимальный } iMax := 1; for i:=2 to N do { проверяем все остальные } if a[i] > max then { нашли новый максимальный } begin max := a[i]; { запомнить a[i] } iMax := i; { запомнить i } end; Дополнение: Найдем номер максимального элемента. a[iMax]
Программа const N = 5; var a: array [1..N] of integer; i, iMax: integer; begin writeln('Исходный массив:'); for i:=1 to N do begin a[i] := random(100) + 50; write(a[i]:4); end; const N = 5; var a: array [1..N] of integer; i, iMax: integer; begin writeln('Исходный массив:'); for i:=1 to N do begin a[i] := random(100) + 50; write(a[i]:4); end; for i:=1 to N do begin a[i] := random(100) + 50; write(a[i]:4); end; for i:=1 to N do begin a[i] := random(100) + 50; write(a[i]:4); end; случайные числа в интервале [50,150)
iMax := 1; {считаем, что первый – максимальный} for i:=2 to N do {проверяем все остальные } if a[i] > a[iMax] then {новый максимальный} iMax := i; {запомнить i } writeln; {перейти на новую строку} writeln('Макс.элемент a[', iMax, ']=', a[iMax]); end. iMax := 1; {считаем, что первый – максимальный} for i:=2 to N do {проверяем все остальные } if a[i] > a[iMax] then {новый максимальный} iMax := i; {запомнить i } writeln; {перейти на новую строку} writeln('Макс.элемент a[', iMax, ']=', a[iMax]); end. iMax := 1; { считаем, что первый – максимальный } for i:=2 to N do { проверяем все остальные } if a[i] > a[iMax] then { новый максимальный } iMax := i; { запомнить i } iMax := 1; { считаем, что первый – максимальный } for i:=2 to N do { проверяем все остальные } if a[i] > a[iMax] then { новый максимальный } iMax := i; { запомнить i } writeln; {перейти на новую строку} writeln('Макс.элемент a[', iMax, ']=', a[iMax]); end. writeln; {перейти на новую строку} writeln('Макс.элемент a[', iMax, ']=', a[iMax]); end. поиск максимального Вывод макс.элемента Программа /продолжение
Опишите на языке программирования Pascal алгоритм получения из заданного целочисленного массива размером 30 элементов другого массива, который будет содержать модули значений элементов первого массива. Пример задачи (ЕГЭ) (2009 Демо)
12345 A массив A[1]
var a,b:array[1..30] of integer; i:integer; begin for i:=1 to 30 do begin write('a[',i,']='); read(a[i]); end; Программа Ввод с клавиатуры 30 чисел for i:=1 to 30 do begin write('a[',i,']='); read(a[i]); end; var a,b:array[1..30] of integer; i:integer;
for i:=1 to 30 do if a[i]
Одномерные массивы (общий вид) Описание: const N = 5; var a: array[1..N] of integer; i: integer; const N = 5; var a: array[1..N] of integer; i: integer; for i:=1 to N do begin write('a[', i, ']='); read ( a[i] ); end; for i:=1 to N do begin write('a[', i, ']='); read ( a[i] ); end; for i:=1 to N do a[i]:=a[i]*2; writeln('Массив A:'); for i:=1 to N do write(a[i]:4); writeln('Массив A:'); for i:=1 to N do write(a[i]:4); Поэлементные операции: Вывод на экран: Ввод с клавиатуры:
Одномерные массивы На этом уроке мы познакомились: - с понятием одномерного массива; - рассмотрели описание массива; - ввод и вывод одномерного массива; - рассмотрели примеры решения задач. На этом уроке мы познакомились: - с понятием одномерного массива; - рассмотрели описание массива; - ввод и вывод одномерного массива; - рассмотрели примеры решения задач. Желаю успехов!