Пекарь Ольга 9 «б» 2011
Цель: формирование представления о массиве, о способах описания массива, о способах ввода/вывода элементов массива.
В качестве иллюстрации можете представить себе дом, имеющий множество нумерованных этажей. дом – это массив. этажи – это индексы. Содержимое этажей – элементы массива. Доступ к содержимому конкретного этажа (элемента массива) осуществляется после указания дома (имени массива) и номера этажа (индекса массива)
Чтобы представить себе двумерный массив, вспомните зрительный зал кинотеатра. Название кинотеатра – имя массива. Ряд, место - индексы. Человек на определенном месте – элемент массива.
Для того, чтобы использовать массив в программе, его нужно описать в разделе описаний : Var (имя_массива ) : array [ инд1.. индN ] of тип_элементов ; Инд1 - индекс первого элемента ИндN - индекс последнего элемента Диапазон индексов определяет максимально возможное количество элементов в массиве – размер массива
Описание этого массива может выглядеть так: Var A: array[1..18] of integer; Этот массив можно описать и так(задав диапазон константами n1 и n2): Const n1=1; n2=18; Var A: array[n1..n2] of integer;
командавывод For i:=1 to 5 do write (A[i]);12345 For i:=1 to 5 do write (A[i],, );1,2,3,4,5 For i:=1 to 5 do write(A[i], ; );1;2;3;4;5; For i:=5 downto 1 do write(A[i], ; ); 5;4;3;2;1; For i:=1 to 3 do writeln(A[i]); For i:=1 to 3 do write(A[i]:4);
Элементы массива в программах используются так же, как обычные переменные. Элементам типа integer можно присваивать результат выполнения операций +, -, *, div, mod, /. Для элемента типа real возможны операции +, -, *, /. Составим программу, которая формирует массив из 12 случайных целых чисел, принадлежащих промежутку [-40; 40], и вычисляет сумму положительных чисел. Var A: array[1..12[ of integer; I, s: integer; Begin For i:=1 to 12 do A[i]:=random(81)-40; (формирование массива) S:=0; For i:=1 to 12 do if A[i]>0 then s:=s+A[i]; For i:=1 to 12 do write(A[i]:4); Writeln; Writeln(Сумма положительных чисел =,s); End.
При работе с массивами нередко приходится выполнять различные преобразования их элементов, например преобразовывать единицы измерения, изменять значения элементов, менять местами элементы в массиве. Составить программу, которая формирует массив из 15 случайных чисел от 0 до 20, меняет местами 3 и 12 элементы и выводит значения элементов до и после обмена. Var A: array[1..15] of integer; B, i: integer; Begin For i:=1 to 15 do A[i]:=random(21); For i:=1 to 15 do write (A[i]:4); Writeln; B:=A[3]; A[3]:=A[12]; A[12]:=B; for I:=1 to 15 do write(A[i]:4); End.
При обработке информации постоянно приходится сталкиваться с задачами поиска данных. Эти задачи весьма разнообразны: от поиска номера до проверки правильного ответа. Эти алгоритмы одни из наиболее часто выполняемых. В массиве хранится рост 12 учеников класса. Составить программу, которая определяет, есть ли в классе ученик ростом 172см., и выводит его номер по списку. Const h: array[1..12] of integer; Var i, k: integer; Begin K:=0; For i:=1 to 12 do If h[i]=172 then k:=I; If k>0 then writeln(номер ученика по списку =, k) Else writeln (ученика с таким номером нет); End.
Решение любой задачи с помощью компьютера содержит несколько этапов: I.Определение исходных данных(что дано?) II.Определение результатов(что надо найти?) III.Описание переменных(определение типов данных) IV.Составление алгоритма решения задачи V.Написание и откладка программы VI.Тестирование программы Составить программу, которая осуществляет ввод в массив значений сопротивления n резисторов и расчёт общего сопротивления электрической цепи при её последовательном соединении резисторов. Var r: array[1..20[ of integer; n, i, Rs: integer; Begin Write(введите количество резисторов(