Двумерные массивы
Исполнитель РОБОТ
Презентация на тему Презентация к уроку Двумерные массивы. Исполнитли, предмет презентации: Информатика. Этот материал в формате pptx (PowerPoint) содержит 30 слайдов, для просмотра воспользуйтесь проигрывателем. Презентацию на заданную тему можно скачать внизу страницы, поделившись ссылкой в социальных сетях! Презентации взяты из открытого доступа или загружены их авторами, администрация сайта не отвечает за достоверность информации в них, все права принадлежат авторам презентаций и могут быть удалены по их требованию.
В математике таблицы чисел, состоящие из строк и столбцов называются матрицами и записываются в круглых скобках.
1
0 1 2 3 4 5
0
1
2
Ai;j
A[i][j]
A[1][3]
A[0][1]
A[2][4]
3
Заполнить массив размером 5 x 5 по следующему правилу, и вывести его на экран в виде таблицы:
11111
22222
33333
44444
55555
Программа 4 Перебираем строки Движемся по строке Элементу массива присваиваем номер строки, увеличенный на 1 Выводим элемент массива на экран Строка закончилась, переходим на новую
{
int a[5][5];
int i,j;
for(i=0;i<=4;i=i+1)
{
for(j=0;j<=4;j=j+1)
{
a[i][j]=i+1;
cout < }
coutln;
}
}
j , 0, 4
Вывод a i , j
i , 0, 4
a i , j= i+1
Цикл отвечающий за перебор строк. (Внешний цикл)
Цикл отвечающий за перебор ячеек в каждой строке. (Внутренний цикл)
5
a00
a11
a12
a21
a22
a03
a30
a33
0 1 2 3
0
1
2
3
Главная диагональ:
I=J
Побочная диагональ:
I+J=N-1
6
Заполнить массив размером 5 x 5 по следующему правилу:
10000
01000
00100
00010
00001
Программа 7 Перебираем строки Движемся по строке В главной диагонали 1 остальные 0 Выводим элемент массива на экран Строка закончилась, переходим на новую
{
int a[5][5];
int i,j;
for(i=0;i<=4;i=i+1)
{
for(j=0;j<=4;j=j+1)
{
if (i==j)a[i][j]=1;
else a[i][j]=0;
cout < }
coutln;
}
}
Фрагмент блок-схемы задачи заполнения главной диагонали единицами
j , 0, 4
Вывод a i , j
i , 0, 4
a i , j= 0
i=j
a i , j= 1
Да
Нет
8
a00
a11
a22
a33
a44
Удовлетворяет неравенству
i < j
Удовлетворяет неравенству
i > j
0
1
2
3
4
0 1 2 3 4
9
a04
a13
a22
a31
a40
Удовлетворяет неравенству Удовлетворяет неравенству 10 0 1 2 3 4 0
i+j
i+j>n-1
1
2
3
4
0
1
2
3
4
0 1 2 3 4
a00
a11
a22
a33
a44
a31
a40
a13
a04
(i+j (i+j>n-1 & i (i+j>n-1 & i>j) (i+j Системы неравенств 11
а) 10001 б) 11111 в) 11111 г)10001
01010 10001 11111 00000
00100 10001 11111 00000
00000 10001 00000 00000
00000 11111 00000 10001
Заполнить произвольный массив размером N x N (Где N - размер массива вводится с клавиатуры ) по следующему правилу:
12
д)10000 е) 10000 ж) 10001
00001 22000 01011
10000 33300 00111
00001 44000 01011
10000 50000 10001
Заполнить произвольный массив размером N x N (Где N - размер массива вводится с клавиатуры ) по следующему правилу:
13
з) 11111 и)00100 к)11111 м)12345
01110 00100 22220 54321
00100 11111 33300 12345
01110 00100 44000 54321
11111 00100 50000 12345
14
Заполнить произвольный массив размером N x N (Где N - размер массива вводится с клавиатуры ) по следующему правилу:
15
Заполнение двумерного массива с клавиатуры и случайными числами. Обработка элементов массива.
15
Программа Запрашиваем размер массива Перебираем строки Движемся по строке Поясняющий текст, какой элемент вводится Вводим элемент с клавиатуры
{
int a[10][10];
int i,j,n,k;
cout <<"Размер матрицы ";cin >>n;
for(i=0;i
for(j=0;j
cout <<"Введи а[" < cin >>a[i][j];
}
}
}
Цикл отвечающий за перебор строк. (Внешний цикл)
Цикл отвечающий за перебор ячеек в каждой строке. (Внутренний цикл)
16
17
Программа Значение элемента определяем случайным числом
{
int a[10][10];
int i,j,n;
cout <<"Размер матрицы ";
cin >>n;
for(i=0;i
for(j=0;j
a[i][j]=random(21)-10;
cout < }
coutln;
}
}
j , 0, N-1
Вывод a i , j
i , 0, N-1
a i , j=
случайное[-10;10]
Цикл отвечающий за перебор строк. (Внешний цикл)
Цикл отвечающий за перебор ячеек в каждой строке. (Внутренний цикл)
18
19
int s=0; Заполнить двумерный массив N x N случайными числами из интервала [-10 ; 10] и найти сумму элементов лежащих на главной диагонали. Сумма элементов только в главной диагонали, но перебираем все элементы массива
for(i=0;i
cout <<"Сумма главной диагонали " <
20
int k=0; Заполнить двумерный массив N x N случайными числами из интервала [-10 ; 10] и найти количество отрицательных элементов лежащих на главной диагонали. Количество отрицательных элементов только в главной диагонали, но перебираем все элементы массива
for(i=0;i
cout <<"Отрицательных на главной диагонали " <
21
int max=a[1][1]; Заполнить двумерный массив N x N случайными числами из интервала [-10 ; 10] и найти максимальный элемент лежащий на главной диагонали. Максимальный элемент только в главной диагонали, но перебираем все элементы массива
for(i=0;i
cout <<"Наибольший на главной диагонали " <
22
1. Заполнить двумерный массив N x N случайными числами из интервала [-10 ; 10], выяснить что больше сумма элементов лежащих над главной диагональю или под главной диагональю.
2. Заполнить двумерный массив N x N случайными числами из интервала [-10 ; 10], все элементы большие среднего арифметического элементов массива, заменить на 0. Массив повторно вывести на экран.
4. Заполнить двумерный массив N x N случайными числами из интервала [-10 ; 10]. Найти сумму элементов. И если она отрицательная, заменить все элементы массива на противоположные по знаку, если положительная или 0, удвоить каждый элемент массива. Массив повторно вывести на экран.
3. Заполнить двумерный массив N x N случайными числами из интервала [-10 ; 10] и найти сколько раз в массиве встречается максимальное по величине число.
Решение
Решение
Решение
Решение
23
Список литературы и интернет источников
Система «Исполнители 2.5» и методические рекомендации к ней. – Автор: Поляков К.Ю. http://kpolyakov.spb.ru/school/robots/methodic.htm
В.В. Подбельский, С.С.Фомин. Программирование на языке Си. М .: ФиС, 1999, 600 с.
Х.М.Дейтел., П.Дж.Дейтел. Как программировать на Си++. М .: ЗАО БИНОМ, 1999, 1000 с. (первые 600 страниц - изложение обычного Си, наиболее подходят для начинающих).
24
int s=0,s1=0;
for(i=0;i
if (i>j) s=s+a[i][j];
if (i
coutln <<"Под главной диагональю " <coutln <<"Над главной диагональю " <
if (s
Вернуться к условию задачи
25
int s=0;
for(i=0;i
coutln <<"Среднее арифметическое " <
for(j=0;j
if (a[i][j]>sr) a[i][j]=0;
cout < }
coutln;
}
Вернуться к условию задачи
26
int max=a[1][1];
for(i=0;i
if (a[i][j]>max) max=a[i][j];;
}
coutln <<"Максимальное " <
for(i=0;i
if (a[i][j]==max) k=k+1;
}
coutln <<"Встречается " <
27
int s=0;
for(i=0;i for(i=0;i
for(j=0;j
if (s<0) a[i][j]= -a[i][j];
if (s>=0) a[i][j]= 2 * a[i][j];
cout < }
coutln;
}
Вернуться к условию задачи
Это сайт презентаций, где можно хранить и обмениваться своими презентациями, докладами, проектами, шаблонами в формате PowerPoint с другими пользователями. Мы помогаем школьникам, студентам, учителям, преподавателям хранить и обмениваться учебными материалами.
Email: Нажмите что бы посмотреть