Студопедия — Массивы. Массив – это совокупность элементов, имеющих одинаковое имя и отличающихся номером (индексом) их расположения в последовательности
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Массивы. Массив – это совокупность элементов, имеющих одинаковое имя и отличающихся номером (индексом) их расположения в последовательности






 

Массив – это совокупность элементов, имеющих одинаковое имя и отличающихся номером (индексом) их расположения в последовательности.

Типы данных, которые мы до сих пор рассматривали, называют скалярными. Их использование не всегда эффективно. Так, если в задаче данные являются родственными, например оценки группы студентов, то скалярные типы применять неудобно. Для определения количества студентов (KolStud), имеющих балл (BallStud) выше среднего (Sr), пришлось бы записать 25 операторов вида

KolStud: = 0;

If BallStud1 > Sr Then

KolStud: = KolStud + 1;

If BallStud2 > Sr Then

KolStud: = KolStud + 1;

и т. д.

 

Поскольку обрабатываются данные одного типа, удобнее в этом случае использовать массивы.

Примеры массивов:

1) последовательность чисел (оценок)

х1, x2, x3,..., xn – 1 индекс

2) матрица чисел

 
 

 


Примером представления данных в виде матрицы может служить запись коэффициентов системы линейных уравнений.

Для описания массива используется служебное слово Array (Массив). Кроме того, необходимо задать:

1) имя массива;

2) диапазон изменения каждого индекса..

Количество индексов называется размерностью массива. По количеству индексов различают:

– одномерные массивы (последовательность чисел, символов);

– двумерные массивы (матрицы);

– трехмерные и т.д. массивы.

Как и скалярные переменные, массивы описываются в разделе описания переменных (т.е. после служебного слова Var), например:

Var

Имя_Массива: Array [Диапазоны_индексов] Of Тип_Элементов_Массива;

где Диапазоны_индексов – список границ изменения каждого индекса.

 

Пример.

Const

N=100;

M=5;

Var

X: Array[1..N] Of Real; {массив вещественных чисел}

A: Array[1..M, 1..M] Of Integer; {мaтрица целых чисел}

Следует различать описание массива и значение его элемента при обработке (внутри программы, после первого Begin). Элемент массива в программе записывают в виде

Имя_Массива [индекс] или

Имя_Массива [список индексов]

 

Пример.

X[2] => x2

A[i, j] => Aij

Ваll [k, i+2] => Ballk, i+2

 

Индекс – это число, переменная или выражение перечисляемого целого или символьного типа.

 

Рассмотрим пример программы обработки массива.

 

Задача. Ввести в ЭВМ оценки студентов одной группы по одному предмету. Подсчитать средний балл и количество оценок выше средней.

 

Алгоритм

1. Ввести оценки.

2.1. Положить сумму баллов = 0.

2.2. Для номера оценки (i) от 1 до Количества_студентов_в_группе выполнить

Подсчитать сумму баллов.

3. Вычислить средний балл.

4. Положить количество оценок выше средней, равной 0.

5. Для номера (i) от 1 до Количества_студентов_в_группе выполнить

Подсчитать количество оценок выше средней.

6. Закончить.

 

Уточняем алгоритм.

1.1. Ввести количество оценок n.

1.2. Для номера оценки (i) от 1 до n выполнить.

1.2.1. Ввести баллi

2.1. Положить сумму баллов = 0.

2.2. Для номера оценки (i) от 1 до n выполнить

2.2.1. Сумма_баллов = сумма_баллов + баллi

3. Вычислить средний балл = сумма_баллов / n.

4. Положить количество оценок выше средней = 0.

5. Для номера от 1 до n выполнить

5.1. Если баллi > среднего, то

количество = количество +1.

 

Программа для этого алгоритма будет иметь вид

Program Ball;

Const

M=25;

Var

B: Array[1..M] OF Integer;

S: Real; {сумма и средний балл}

N, I, K: Integer; {K - счетчик}

Begin

Writeln('Введите количество оценок'); { п.1.1 }

Read (N);

Writeln('Введите оценки'); { п.1.2 }

For I: = 1 To N Do

Read(B[I]);

S: =0; { п.п. 2.1 - 2.2 }

For I: = 1 To N Do

S: = S+B[I];

S: = S/N; { п.3 - средний балл }

Writeln('Средний балл - ', S);

K: = 0; { п.4 }

For I: = 1 To N Do { п.5 }

If B[I]> S Then

K: =K+1;

Writeln('Количество оценок выше средней = ', K);

End.

Итак, программа обработки массива – это цикл, в котором параметром является индекс (номер элемента). Если индексов несколько, то для обработки массивов используются циклы, вложенные друг в друга. Количество таких циклов зависит от числа индексов.

 







Дата добавления: 2014-12-06; просмотров: 636. Нарушение авторских прав; Мы поможем в написании вашей работы!



Вычисление основной дактилоскопической формулы Вычислением основной дактоформулы обычно занимается следователь. Для этого все десять пальцев разбиваются на пять пар...

Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...

Кардиналистский и ординалистский подходы Кардиналистский (количественный подход) к анализу полезности основан на представлении о возможности измерения различных благ в условных единицах полезности...

Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...

ОПРЕДЕЛЕНИЕ ЦЕНТРА ТЯЖЕСТИ ПЛОСКОЙ ФИГУРЫ Сила, с которой тело притягивается к Земле, называется силой тяжести...

СПИД: морально-этические проблемы Среди тысяч заболеваний совершенно особое, даже исключительное, место занимает ВИЧ-инфекция...

Понятие массовых мероприятий, их виды Под массовыми мероприятиями следует понимать совокупность действий или явлений социальной жизни с участием большого количества граждан...

Огоньки» в основной период В основной период смены могут проводиться три вида «огоньков»: «огонек-анализ», тематический «огонек» и «конфликтный» огонек...

Упражнение Джеффа. Это список вопросов или утверждений, отвечая на которые участник может раскрыть свой внутренний мир перед другими участниками и узнать о других участниках больше...

Влияние первой русской революции 1905-1907 гг. на Казахстан. Революция в России (1905-1907 гг.), дала первый толчок политическому пробуждению трудящихся Казахстана, развитию национально-освободительного рабочего движения против гнета. В Казахстане, находившемся далеко от политических центров Российской империи...

Studopedia.info - Студопедия - 2014-2024 год . (0.012 сек.) русская версия | украинская версия