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


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

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



Цель работы: научиться разрабатывать и отлаживать программы с использованием матриц.

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

Описание двумерного массива (матрицы):

<класс><тип><идетификатор>[конст. выраж1][конст. выраж2]…,

                <идетификатор>[конст. выраж1][конст. выраж2]…;

 


Пример. Вычислить суммы элементов

в столбцах двумерного числового массива

А размером [1..3,1..4].

Текст программы для СА (рис. 9):

#include <stdio.h>

#include <conio.h>

Void main ()

{

int a [3][4]={{1,2,3,4},{1,2,3,4},{1,2,3,4}};

int s[4];   // массив сумм

int i, j; clrscr();

for (j=0; j<4; ++j)

{

s[j] = 0;

for (i=0; i<3; ++i)

       s[j] = s[j] + a[i][j];

printf (" s[%d] = %d ", j, s[j]);

}

getch();

}                                                                           

Задание 1 (программа 7_1)

1. Даны матрицы A,B [1..4,1..4] вещественных чисел. Вычислить матрицу С поэлементным сложением соответствующих элементов матриц А и В.

2. Дана матрица B[1..5,1..5] вещественных чисел. Найти для нее транспонированную матрицу.

3. Даны матрица A[1..4,1..4] вещественных чисел и константа К. Вычис­лить матрицу С=А*К.

4. Сформировать массив по правилу         1 0 0... 0        

                                                                    2 1 0... 0

                                                                    3 2 1... 0

                                                                             ...

                                                                     10 9 8... 1.

 5. Даны натуральное N и элементы квадратной вещественной матрицы А пятого порядка. Вычислить N-ю степень каждого элемента этой матрицы

     (а ij 1 = а ij, а ij 2 = а ij * а ij,  а ij 3 = а ij 2 * а ij   и т.д., где i, j = 1,2,...,5).

6. Сформировать массив по правилу 0 0 0...0

                                                           0 1 0...0

                                                             0 0 2...0

                                                                  …

                                                            0 0 0...9.

7. Сформировать массив последовательностью натуральных чисел:

                                                1 2... 10

11 12... 20

21 22... 30

...

        91 92... 100    .

8. Сформировать двумерный массив:     

                                                         1 2 3 4 5

                                                         5 1 2 3 4

                                                          4 5 1 2 3

                                                         3 4 5 1 2

                                                          2 3 4 5 1.

9. Дана матрица A[1..N,1..N] целых чисел. Сформировать век­тор В из максимальных элементов каждой строки.

10. Дана матрица A[1..6,1..6] челых чисел и переменная Х. Элементы нечетных строк матрицы А заменить на Х.

11. Дана матрица B[1..5,1..5]. Получить массив С удалени­ем (либо об-нулением) n-й строки и k-го столбца из матрицы В.

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

13. Определить, является ли заданная целая квадратная матрица шестого порядка симметричной (относительно главной диагонали).

14. Дана вещественная матрица A[1..7,1..4]. Переставляя ее строки и столбцы, добиться того, чтобы наибольший элемент оказался в верхнем левом углу.

15. Дана вещественная матрица размером 4х8. Упорядочить ее стро­ки по неубыванию сумм их элементов.

16. Для заданной целой матрицы размером 6х8 элементов напечатать индексы всех ее седловых точек. Элемент матрицы называется седловой точкой, если он является наименьшим в своей строке и одновременно на­ибольшим в своем столбце или, наоборот, является наибольшим в своей строке и наименьшим в своем столбце.

17. Дана матрица A[1..6,1..2] вещественных чисел. Рассмат­ривая A [i,1] и A [i,2] как координаты точек на плоскости, определить радиус наименьшего круга (с центром в начале координат), внутрь кото­рого попадают все эти точки.

 18. Дан массив F[1..N,1..M] из целых малых величин, определить количество «особых» элементов в нем. Элемент считается «особым», если он больше суммы остальных элементов своего столбца.

19. Дана матрица D[1..5,1..6] из целых чисел. Упорядочить эле­менты строк в нем по убыванию.

20. Дан массив М координат точек на плоскости. Найти наибольшее расстоя-ние между этими точками.

Задание 2 (программа 7_2)

Сформировать таблицу Пифагора.

Задание 3 (программа 7_3)

Модифицировать программу 6_3 таким образом, чтобы значения X, F1 и F2 были представлены двумерным массивом, состоящим из трех строк.

 

Лабораторная работа 8



Поделиться:


Последнее изменение этой страницы: 2021-07-18; просмотров: 86; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 13.58.121.214 (0.006 с.)