Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
работа с массивами.doc
Скачиваний:
10
Добавлен:
05.11.2018
Размер:
358.91 Кб
Скачать
      1. Вывод значений элементов двухмерного массива

Рассмотрим алгоритм вывода всех значений элементов двухмерного массива на экран монитора. Значения n и m должны быть определены.

//Вывод на экран монитора массива b

printf("Значения элементов двухмерного массива b:\n");

//Задание j – номеров строк распечатываемых элементов массива

for (int j = 0; j<n; j++)

//Задание i – номеров столбцов строки j элементов массива

for (int i = 0; i<m; i++)

printf("Элемент[ %d][ %d] = %f\n", j, i, b[j][i]);

//Следующий оператор

  1. Алгоритмы пересылки массивов

    1. Пересылка двухмерного массива в одномерный массив

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

Текст фрагмента кода программы:

int k; //начальное кол-во элементов одномерного массива a

k = 0;

//Пересылка всех элементов двухмерного массива b в одномерный

// массив a

//Задание j – номеров строк элементов массива b

for (int j = 0; j<n; j++)

{

//Задание i – номеров столбцов строки j элементов массива

for (int i = 0; i<m; i++)

{

//Дозапись значения очередного элемента в массив a

a[k] = b[j][i];

//Расчет номера дозаписываемого элемента массива k = k + 1;

k++;

}

k--; //Теперь k равен числу элементов массива a.

}

//Следующий оператор

Отметим, что для корректного выполнения алгоритма фрагмента необходимо иметь уже определенные значения всех элементов массива b, значения n, m

В результате выполнения алгоритма будут определено текущее значение k предельного количества числа элементов одномерного массива a – k.

Следует отметить, что для корректной работы алгоритма должно выполняться неравенство: k_Max ≥ m*n;

    1. Пересылка одномерного массива в двухмерный массив

Алгоритм пересылки одномерного массива в двухмерный массив практически не отличается от алгоритма пересылки двухмерного массива в одномерный массив. Отличия проявляются лишь в операторе дозаписи значения:

//Дозапись значения очередного элемента в массив b

b[j][i] = a[k];

Следует отметить, что для корректной работы алгоритма должно выполняться равенство: m*n = k;

  1. Простые алгоритмы работы с массивами

    1. Алгоритм нахождения суммы и среднего арифметического значений элементов одномерного массива

Алгоритм нахождения суммы и среднего арифметического значений элементов одномерного массива основан на полном переборе всех значений элементов одномерного массива.

float Sum;

float Average;

//Расчет значения суммы Sum и значения среднего арифметического

// значений элементов одномерного массива Average

Sum = 0.0; //Начальное значение суммы

//Перебор всех элементов одномерного массива a

//Задание i – номера инициализируемого элемента массива*/

for (int i = 0; i<k; i++)

Sum = Sum + a[i]; /*Увеличение текущего значения суммы

на значение очередного элемента

одномерного массива a*/

//Расчет среднего арифметического значения

Average = Sum/k;