русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Способы работы с массивами


Дата добавления: 2015-07-23; просмотров: 686; Нарушение авторских прав


 

Обработка массивов включает в себя, как правило, следующие компоненты: ввод массива (с клавиатуры или с помощью датчика случайных чисел), вывод полученного массива на экран и собственно его обработка. Все эти компоненты рекомендуется оформлять в виде отдельных процедур. При этом надо учитывать следующий фактор: если процедуре (или функции) будет передаваться массив, то надо объявить в ней этот массив как параметр с атрибутом VAR даже в том случае, если значение массива внутри процедуры не изменяется. Это нужно для того, чтобы не тратить времени и памяти на размещение внутри процедуры копии массива. Заметим, что параметр обязательно должен относиться к типу, имеющему имя.

П р. и м е р. Сумма элементов таблицы над верхней диагональю.

 

program SUMMA;

const M = 10; {число строк таблицы}

N = 10; {число столбцов таблицы}

type LINE = array [1..n] of integer;

TAB = array [1..m] of LINE;

var s, i, j:integer; MAS: TAB;

procedure VVODMASSIV (var MAS: TAB);

begin

¦ for i := 1 to M do

¦ for j := 1 to N do

¦ readln (MAS [i][j]);

end;

procedure VIVODMASSIV (var MAS:TAB);

begin

¦ for i := 1 to M do

¦ begin

¦ ¦ for j := 1 to N do

¦ ¦ write (MAS [i][j]:4,' '); writeln;

¦ end;

end;

procedure OBRABOTKA (MAS: TAB; var SUM: integer);

begin

¦ SUM := 0;

¦ for i := 1 to M do

¦ for j := 1 to N do

¦ if j > i then SUM := SUM + MAS [i][j];

end;

begin

| VVODMASSIV (MAS);

| writeln ('исходный массив'); VIVODMASSIV (MAS);

| OBRABOTKA (MAS, s); writeln;

| writeln ('сумма элементов = ',s);

end.

 

Контрольные вопросы

 

1. Какие элементы входят в объявление массива?

2. Каким типом величин индексируются элементы массива?

3. Какой тип получит переменная при следующем объявлении:

 

TYPE MyType = ARRAY [1..10] OF REAL;



VAR A: MyType?

 

4. Какой оператор чаще всего используется при работе с массивами и почему?

5. Чем отличается индексация двумерных массивов от одномерных?

6. Какие процедуры рекомендуется использовать при обработке массивов?

7. Какой массив задается следующим объявлением?

const m = 10; n = 12;

type LINE = array [1..n] of integer;

TAB = array [1..m] of LINE;

var MAS: TAB;

8. Что вычисляется в следующей процедуре?

 

procedure OBRABOTKA (MAS: TAB; var SUM: integer);

begin

¦ SUM := 0;

¦ for i := 1 to M do

¦ for j := 1 to N do

¦ if j = i then SUM := SUM + MAS [i][j];

end;



<== предыдущая лекция | следующая лекция ==>
Многомерные массивы | Задания для самостоятельной работы


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 1.563 сек.