Разделы презентаций


Технологии программирования

Содержание

Лекция 7. Многомерные массивы в C++.Описание двумерного массива строится из описания одномерного путем добавления второй размерности, то есть элементом массива может быть в свою очередь тоже массив, например:int a[4][3];Анализ подобного описания

Слайды и текст этой презентации

Слайд 1Технологии программирования
Доц. каф. «Медиаменеджмента и медиапроизводства» Евич Л.Н.

Технологии программированияДоц. каф. «Медиаменеджмента и медиапроизводства» Евич Л.Н.

Слайд 2Лекция 7. Многомерные массивы в C++.
Описание двумерного массива строится из

описания одномерного путем добавления второй размерности, то есть элементом массива

может быть в свою очередь тоже массив, например:


int a[4][3];

Анализ подобного описания необходимо проводить в направлении выполнения операций [], то есть слева направо. Таким образом, переменная a является массивом из четырех элементов, что следует из первой части описания a[4].

Каждый элемент a[i] этого массива в свою очередь является массивом из трех элементов типа int, что следует из второй части описания.

Лекция 7. Многомерные массивы в C++.Описание двумерного массива строится из описания одномерного путем добавления второй размерности, то

Слайд 3Многомерные массивы в C++.
Пусть объявлен массив int a[3][4]

Многомерные массивы в C++.Пусть объявлен массив   int a[3][4]

Слайд 4Многомерные массивы в C++.
Пусть объявлен массив int a[3][4]

Имя

двумерного массива без квадратных скобок за ним имеет значение адреса

первого элемента этого массива, то есть значение адреса первой строки — одномерного массива из трех элементов.
Многомерные массивы в C++.Пусть объявлен массив   int a[3][4]Имя двумерного массива без квадратных скобок за ним

Слайд 5Многомерные массивы в C++.
Пусть объявлен массив int a[3][4]

Имя

двумерного массива с одним индексным выражением в квадратных скобках за

ним обозначает соответствующую строку двумерного массива и имеет значение адреса первого элемента этой строки. Например, в нашем случае a[2] является адресом величины типа int, а именно ячейки, в которой находится число -5
Многомерные массивы в C++.Пусть объявлен массив   int a[3][4]Имя двумерного массива с одним индексным выражением в

Слайд 6Многомерные массивы в C++.
Пусть объявлен массив int a[3][4]

Имя

двумерного массива с двумя индексными выражениями в квадратных скобках за

ним обозначает соответствующий элемент двумерного массива и имеет тот же тип. Например, в нашем примере a[1][3] является величиной типа int, а именно ячейкой, в которой находится число -3
Многомерные массивы в C++.Пусть объявлен массив   int a[3][4]Имя двумерного массива с двумя индексными выражениями в

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

(например, чисел), каждый элемент которой имеет двойную нумерацию --- номер

строки и номер столбца таблицы.

Многомерные массивы в C++.

Пусть дан двумерный массив A размером 4×10:

В этом массиве значение элемента A[2][6] равно 5 (элемент расположен на пересечении второй строки и шестого столбца).

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

Слайд 8Если элементу массива A[1][5] присвоить значение -6 (A[1][5]=-6), а элементу

массива A[3][2] присвоить значение элемента A[2][9] (A[3][2]=A[2][9]), то массив примет

следующий вид:

Многомерные массивы в C++.

Если элементу массива A[1][5] присвоить значение -6 (A[1][5]=-6), а элементу массива A[3][2] присвоить значение элемента A[2][9] (A[3][2]=A[2][9]),

Слайд 9 Пример 1

// Ввод/вывод элементов массива
#include ;
#include ;
using namespace std;
#define

SIZE1 5
void main() {
int ar1[SIZE1][SIZE1];
for (int

i=0; i for (int j=0; j ar1[i][j]=i+j;
for (int i=0; i for (int j=0; j cout << ar1[i][j] << " ";
cout << endl;
}
getchar();
}

Многомерные массивы в C++.

Пример 1// Ввод/вывод элементов массива#include ;#include ;using namespace std;#define SIZE1 5void main() {	 int ar1[SIZE1][SIZE1];

Слайд 10 Пример 2. Дан двумерный массив A размером n×m. Составить

программу, которая находит сумму всех элементов массива.

#include ;
#include ;
#include ;
#include

;
using namespace std;
#define SIZE1 100
void main() {
srand(time(NULL));
int a[SIZE1][SIZE1], sum=0, i, j, n, m;
cout<< " n = "; cin>> n;
cout<< " m = "; cin>> m;
for (i=0; i for (j=0; j a[i][j]=rand()%10;

Многомерные массивы в C++.

Пример 2. Дан двумерный массив A размером n×m. Составить программу, которая находит сумму всех элементов массива.#include

Слайд 11 Пример 2. Дан двумерный массив A размером n×m. Составить

программу, которая находит сумму всех элементов массива.



for (i=0; i

i++) {
for (j=0; j cout << a[i][j] << " ";
cout << endl;
}
cout << endl;
for (i=0; i for (j=0; j sum+=a[i][j];
cout << "sum = "<< sum << endl;
getchar(); getchar();
}

Многомерные массивы в C++.

Пример 2. Дан двумерный массив A размером n×m. Составить программу, которая находит сумму всех элементов массива.

Слайд 12 Пример 3. Дан двумерный массив A размером n×m. Составить

программу, которая находит сумму элементов каждой строки массива.

#include ;
#include ;
#include

;
#include ;
using namespace std;
#define SIZE1 100
void main() {
srand(time(NULL));
int a[SIZE1][SIZE1], sum, i, j, n, m;
cout<< " n = "; cin>> n;
cout<< " m = "; cin>> m;
for (i=0; i for (j=0; j a[i][j]=rand()%10;

Многомерные массивы в C++.

Пример 3. Дан двумерный массив A размером n×m. Составить программу, которая находит сумму элементов каждой строки

Слайд 13 Пример 3. Дан двумерный массив A размером n×m. Составить

программу, которая находит сумму элементов каждой строки массива.

for (i=0;

i for (j=0; j cout << a[i][j] << " ";
cout << endl;
}
cout << endl;
for (i=0; i sum=0;
for (j=0; j sum+=a[i][j];
cout << "sum "<< i+1 << " = " << sum << endl;
}
getchar(); getchar();
}

Многомерные массивы в C++.

Пример 3. Дан двумерный массив A размером n×m. Составить программу, которая находит сумму элементов каждой строки

Слайд 14Пример 4. Дан двумерный массив A размером 6×8. Составить программу,

которая находит наибольший элемент в каждой строке и выводит его

экран.

#include ;
#include ;
#include ;
#include ;
using namespace std;
#define SIZE1 6
#define SIZE2 8
void main() {
srand(time(NULL));
int a [SIZE1][SIZE2], max, i, j;
for (i=0; i for (j=0; j a[i][j]=rand()%20;

Многомерные массивы в C++.

Пример 4. Дан двумерный массив A размером 6×8. Составить программу, которая находит наибольший элемент в каждой строке

Слайд 15Пример 4. Дан двумерный массив A размером 6×8. Составить программу,

которая находит наибольший элемент в каждой строке и выводит его

экран.

for (i=0; i for (j=0; j cout << a[i][j] << " ";
cout << endl;
}
cout << endl;
for (i=0; i max=a[i][0];
for (j=1; j if (a[i][j]>max)
max=a[i][j];
cout << max << " ";
}
getchar();
}

Многомерные массивы в C++.

Пример 4. Дан двумерный массив A размером 6×8. Составить программу, которая находит наибольший элемент в каждой строке

Слайд 16Сортировки


Очень часто в задачах требуется упорядочить некоторую последовательность, то есть

выполнить сортировку элементов массива.
Существует большое количество различных алгоритмов сортировки.

Подробное описание различных методов сортировок, их эффективности можно найти в книгах Д. Кнута, Н. Вирта.

Многомерные массивы в C++.

СортировкиОчень часто в задачах требуется упорядочить некоторую последовательность, то есть выполнить сортировку элементов массива. Существует большое количество

Слайд 17Сортировка простым выбором (по возрастанию)

1. В исходной последовательности выбирается наименьший

элемент.
2. Найденный элемент меняется местами с первым элементом.
Затем эти операции

повторяются с оставшимися n-1 элементами.
То есть в последовательности, начиная со второго элемента, выбирается наименьший, затем он меняется местами со вторым.
Далее операции повторяются с оставшимися n-2 элементами и т.д., пока массив не окажется упорядоченным.

Многомерные массивы в C++.

Сортировка простым выбором (по возрастанию)1. В исходной последовательности выбирается наименьший элемент.2. Найденный элемент меняется местами с первым

Слайд 18Пример 5. В программе, записанной ниже, последовательность, состоящая из n

целых чисел, упорядочивается в порядке возрастания с помощью сортировки методом

простого выбора.

#include ;
#include ;
#include ;
#include ;
using namespace std;
#define SIZE1 100
void main() {
srand(time(NULL));
int a[SIZE1], m, k, n, i, j;
cin>>n;
for (i=0; i a[i]=rand()%20;
for (i=0; i cout << a[i] << " ";
cout << endl;

Многомерные массивы в C++.

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

Слайд 19Пример 5. В программе, записанной ниже, последовательность, состоящая из n

целых чисел, упорядочивается в порядке возрастания с помощью сортировки методом

простого выбора.



for (i=0; i k=i;
for (j=i+1; j if (a[j] k=j;
m=a[i]; a[i]=a[k]; a[k]=m;
}
for (i=0; i cout << a[i] << " ";
getchar(); getchar();
}

Многомерные массивы в C++.

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

Слайд 20Сортировка методом пузырька (по возрастанию)

Данный алгоритм основан на принципе сравнения

и обмена пары соседних элементов до тех пор, пока не

будут рассортированы все элементы.
1. В исходной последовательности просматриваются пары соседних элементов. Если элементы некоторой пары находятся в неправильном порядке (например, левее стоит больший элемент), то меняем их местами. В результате, наибольший элемент окажется в последовательности последним.
2. Затем в последовательности, просматриваются пары соседних элементов, за исключением последнего элемента. Если элементы некоторой пары находятся в неправильном порядке (левее стоит больший элемент), то их меняют местами.
Далее операции повторяются с оставшимися n-2 элементами и т. д. до тех пор, пока в просматриваемой части последовательности не останется только один элемент.

Многомерные массивы в C++.

Сортировка методом пузырька (по возрастанию)Данный алгоритм основан на принципе сравнения и обмена пары соседних элементов до тех

Слайд 21Пример 6. В программе, записанной ниже, последовательность, состоящая из n

целых чисел, упорядочивается в порядке возрастания с помощью сортировки методом

пузырька.

#include ;
#include ;
#include ;
#include ;
using namespace std;
#define SIZE1 10
void main() {
srand(time(NULL));
int a[SIZE1], m, n, i, j;
cin>>n;
for (i=0; i a[i]=rand()%20;
for (i=0; i cout << a[i] << " ";
cout << endl;

Многомерные массивы в C++.

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

Слайд 22Пример 6. В программе, записанной ниже, последовательность, состоящая из n

целых чисел, упорядочивается в порядке возрастания с помощью сортировки методом

пузырька.






for (i=n-1; i>0; i--)
for (j=1; j<=i; j++)
if (a[j-1]>a[j]) {
m=a[j-1]; a[j-1]=a[j]; a[j]=m;
}
for (int i=0; i cout << a[i] << " ";
getchar(); getchar();
}

Многомерные массивы в C++.

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

Слайд 23Пример 7. Даны натуральное число n и двумерный массив

размером n × m. Составить программу, упорядочивающую по возрастанию

элементы каждой строки. Полученный массив вывести на экран.

#include ;
#include ;
#include ;
#include ;
using namespace std;
#define SIZE1 100
void main() {
srand(time(NULL));
int a[SIZE1][SIZE1], i, j, n, m, t, l, k;
cout<< " n = "; cin>> n;
cout<< " m = "; cin>> m;
for (i=0; i for (j=0; j a[i][j]=rand()%10;

Многомерные массивы в C++.

Пример 7. Даны натуральное число n и двумерный массив  размером n × m. Составить программу,

Слайд 24Пример 7. Даны натуральное число n и двумерный массив

размером n × m. Составить программу, упорядочивающую по возрастанию

элементы каждой строки. Полученный массив вывести на экран.

for (i=0; i for (j=0; j cout << a[i][j] << " ";
cout << endl;
}
cout << endl;
  for (i=0; i for (j=0; j l=j;
for (k=j+1; k if (a[i][k] l=k;
t=a[i][j]; a[i][j]=a[i][l]; a[i][l]=t;
}

Многомерные массивы в C++.

Пример 7. Даны натуральное число n и двумерный массив  размером n × m. Составить программу,

Слайд 25Пример 7. Даны натуральное число n и двумерный массив

размером n × m. Составить программу, упорядочивающую по возрастанию

элементы каждой строки. Полученный массив вывести на экран.

 



for (i=0; i for (j=0; j cout << a[i][j] << " ";
cout << endl;
}
cout << endl;
getchar(); getchar();
}

Многомерные массивы в C++.

Пример 7. Даны натуральное число n и двумерный массив  размером n × m. Составить программу,

Слайд 26Задания для самостоятельной работы
52. Определите, что будет выведено на экран

в результате выполнения этой программы.

#include ;
#include ;
using namespace std;
#define SIZE1

10
void main() {
srand(time(NULL));
int c[SIZE1][SIZE1], i, j, a, k;
for (i=0; i for (j=0; j c[i][j]=i+j;
for (i=0; i for (j=0; j cout << c[i][j] << " ";
cout << endl;
}
cout << endl;
getchar();
}

Лекция 7. Многомерные массивы в C++.

Задания для самостоятельной работы52. Определите, что будет выведено на экран в результате выполнения этой программы.#include ;#include ;using

Слайд 27Задания для самостоятельной работы
Дан двумерный массив размером 5×8. Составьте программу,

которая выводит на экран все элементы последней строки.
Дан

двумерный массив размером 5×8. Составьте программу, которая выводит на экран все элементы третьего столбца.
Даны натуральное число n и двумерный массив размером n × n. Составьте программу, которая находит сумму элементов элементом главной диагонали.
Даны натуральное число n и двумерный массив размером n× (n+1). Составьте программу, которая находит среднее арифметическое каждой строки массива.
Даны натуральное число n и двумерный массив размером n × n. Составьте программу, которая находит произведение элементов, лежащих на главной диагонали (элементы, у которых индекс строки равен индексу столбца).

Лекция 7. Многомерные массивы в C++.

Задания для самостоятельной работыДан двумерный массив размером 5×8. Составьте программу,  которая выводит на экран все элементы

Слайд 28Задания для самостоятельной работы
Даны натуральные числа n, m и двумерный

массив размером n×m. Составьте программу, которая находит количество

нечётных элементов первого и последнего столбцов.
Даны натуральные числа n, m и двумерный массив размером n×m. Составьте программу, которая находит сумму элементов той строки, в которой расположен элемент с наименьшим значением. Предполагается, что такой элемент единственный.
Даны натуральные числа n, m и два двумерных массива A (n,m) и B(m,n). Составьте программу, которая определяет, есть ли в матрице A строка, равная какому-либо из столбцов матрицы B. Выдать соответствующее сообщение.
Даны натуральное число n и двумерный массив размером n × n. Составьте программу, упорядочивающую по возрастанию элементы строке в которой находится минимальный элемент главной диагонали. Полученный массив вывести на экран.

Лекция 7. Многомерные массивы в C++.

Задания для самостоятельной работыДаны натуральные числа n, m и двумерный массив  размером n×m. Составьте программу,

Слайд 29Задания для самостоятельной работы
Даны натуральные числа n, m и двумерный

массив размером n×m. Составьте программу, которая меняет местами

элементы первой и последней строк. Полученный массив вывести на экран.
Дано натуральное число n и двумерный массив A (n,n). Составьте программу, которая заполняет одномерный массив B элементами, расположенными по периметру исходного массива A.

Лекция 7. Многомерные массивы в C++.

Задания для самостоятельной работыДаны натуральные числа n, m и двумерный массив  размером n×m. Составьте программу,

Обратная связь

Если не удалось найти и скачать доклад-презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое TheSlide.ru?

Это сайт презентации, докладов, проектов в PowerPoint. Здесь удобно  хранить и делиться своими презентациями с другими пользователями.


Для правообладателей

Яндекс.Метрика