КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Действия над элементами массива
ДЕЙСТВИЯ НАД МАССИВАМИ. Для работы с массивом как единым целым используется идентификатор массива без указания индекса в квадратных скобках. Массив может участвовать только в операциях отношения «равно», «не равно», и в операторе присваивания. Массивы, участвующие в этих действиях, должны быть идентичны по структуре, т.е. иметь одинаковые типы индексов и одинаковые типы компонентов. Например, если массивы А и В описаны так: var A,B:array[1..20] of real; то применение к ним допустимых операций даст следующий результат:
После объявления массива каждый его элемент можно обработать, указав идентификатор (имя) массива и индекс элемента в квадратных скобках. Например, запись MAS[2], VECTOR[10] позволяет обратиться ко второму элементу массива MAS и десятому элементу массива VECTOR. Индексированные элементы массива наз. индексированными переменными и могут быть использованы так же, как и простые переменные. Элементы массива могут стоять как в левой части оператора присваивания, так и в выражениях. Над элементами массива можно производить те же операции, которые допустимы для данных его базового типа. B[5]:=B[3]+1; SUM:=SUM-C[k]; PI:=A[2*i+1]; Для ввода и вывода числовых значений массива используются циклы, т.к. язык TURBO PASCAL 7.0 не имеет средств ввода-вывода элементов массива сразу. Инициализация (присваивание начальных значений) массива заключается в присваивании каждому элементу массива одного и того значения, соответствующего базовому типу. Наиболее эффективно эта операция выполняется с помощью оператора цикла с параметром, например: for i:=1 to 4 do A[i]:=0; Под вводом понимается ввод значений элементов массива. Под выводом массива понимается вывод на экран значений элементов массива. Если в программе необходимо ввести или вывести значения всех элементов массива, то для этого удобно использовать оператор цикла с параметром, значение параметра которого может быть использовано как индекс элемента массива. Например: for i:=1 to 30 do readln(A[i]); Копированием массивов наз. присваивание значений всех элементов одного массива всем соответствующим элементам другого массива. Копирование можно выполнить одним оператором присваивания, например A:=D; или с помощью оператора цикла с параметром: for i:=1 to 4 do A[i]:=D[i]; Пример: Составить программу вычисления скалярного произведения двух векторов U и V, состоящих из четырех элементов каждый, по формуле . Вычислить длину вектора V . Решение: PROGRAM SP; PROGRAM SP; type n=1..4; var S,DV:real; var S,DV:real; U,V:array[1..4] of real; U,V:array[n] of real; i:integer; i:n; BEGIN BEGIN........... for i:=1 to 4 do read(U[i]); END. readln; S:=0; DV:=0; for i:=1 to 4 do PRIGRAM SP; BEGIN type mas=array[1..4] of real; S:=S+U[i]*V[i]; var U,V:mas; DV:=DV+V[i]*V[i] S,DV:real; END; i:integer; DV:=sqrt(DV); BEGIN writeln(‘S=’,S,’ DV=’,DV)............ END. END. Указание типов в разделе описаний помогает достичь логической ясности программы и является хорошим стилем программирования.
Дата добавления: 2014-01-04; Просмотров: 531; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |