0 / 0 / 0
Регистрация: 26.01.2013
Сообщений: 41
1

Формирование массива из элементов матрицы

16.02.2013, 21:20. Показов 1935. Ответов 7
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Задана целочисленная матрица A[1..N,1..M]. как из этой матрицы сформировать новый массив H ?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.02.2013, 21:20
Ответы с готовыми решениями:

Формирование массива из элементов матрицы
Создать модуль , содержащий подпрограмму в которой нужно создать два двумерных массива ,а после...

Формирование одномерного массива из элементов матрицы
Есть двумерный массив,из него нужно сделать одномерный. Он формируется за 2 условиями: За...

Написать процедуру, формирование одномерного массива из отрицательных элементов матрицы
Написать процедуру, формирование одномерного массива из отрицательных элементов матрицы.

Формирование матрицы и массива по условию.
Обработка двумерных массивов с помощью подпрограмм. Использовать процедуры ввода и вывода...

7
Mobile Software Engineer
Эксперт С++
5381 / 1585 / 956
Регистрация: 23.01.2011
Сообщений: 3,214
16.02.2013, 22:12 2
а входить в него что должно?
0
0 / 0 / 0
Регистрация: 26.01.2013
Сообщений: 41
16.02.2013, 22:19  [ТС] 3
что угодно , мне лишь надо понять как создать из матрицы массив
0
Mobile Software Engineer
Эксперт С++
5381 / 1585 / 956
Регистрация: 23.01.2011
Сообщений: 3,214
16.02.2013, 22:25 4
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

пожалуйста. в массив записывается главная диагональ матрицы
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
const
    size = 5;
var
    matrix: array[1..size, 1..size] of integer;
    mainDiagonal: array[1..size] of integer;
    i, j: byte;
begin
    randomize;
    writeln('Matrix: ');
    for i := 1 to size do
    begin
        for j := 1 to size do
        begin
            matrix[i, j] := random(25) - 5;
            write(matrix[i, j]:4);
        end;
        mainDiagonal[i] := matrix[i, i];
        writeln;
    end;
    writeln('Array: ');
    for i := 1 to size do
        write(mainDiagonal[i], ' ');
    readln;
end.
1
0 / 0 / 0
Регистрация: 26.01.2013
Сообщений: 41
16.02.2013, 22:40  [ТС] 5
size это что ?

Добавлено через 3 минуты
не вижу код главной диагонали, то есть вот эту штучку i=j
а если побочную диагональ, то где переправит код нужно ?
0
Mobile Software Engineer
Эксперт С++
5381 / 1585 / 956
Регистрация: 23.01.2011
Сообщений: 3,214
16.02.2013, 22:47 6
Pascal
1
2
const
* * size = 5;
включим логику. там есть зарезервированное слово "const", то бишь - это константа.
константа - это способ адресования данных, изменение которых рассматриваемой программой не предполагается или запрещается. (c) Wikipedia
смотрим дальше:
Pascal
1
matrix: array[1..size, 1..size] of integer;
в этих скобках [ ] пишется размер массива и т.к. в них написано [1..size, 1..size], соответственно size - это размер массива, для матрицы - это кол-во строк и столбцов.

Добавлено через 1 минуту
Цитата Сообщение от Воеводина Настя Посмотреть сообщение
не вижу код главной диагонали, то есть вот эту штучку i=j
ну если индексы равны, то вполне резонно написать так, как я и написал ниже:
Pascal
1
mainDiagonal[i] := matrix[i, i];
1
0 / 0 / 0
Регистрация: 26.01.2013
Сообщений: 41
16.02.2013, 23:07  [ТС] 7
а если побочную диагональ, то где переправит код нужно ?
0
Mobile Software Engineer
Эксперт С++
5381 / 1585 / 956
Регистрация: 23.01.2011
Сообщений: 3,214
16.02.2013, 23:11 8
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
const
    size = 5;
var
    matrix: array[1..size, 1..size] of integer;
    dopDiagonal: array[1..size] of integer;
    i, j: byte;
begin
    randomize;
    writeln('Matrix: ');
    for i := 1 to size do
    begin
        for j := 1 to size do
        begin
            matrix[i, j] := random(25) - 5;
            write(matrix[i, j]:4);
            if (j = size - i + 1) then
                dopDiagonal[i] := matrix[i, j];
        end;
        writeln;
    end;
    writeln('Array: ');
    for i := 1 to size do
        write(dopDiagonal[i], ' ');
    readln;
end.
1
16.02.2013, 23:11
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.02.2013, 23:11
Помогаю со студенческими работами здесь

формирование одномерного массива из матрицы
Задача: Нужно переставить в матрице первую и последнюю строку, а также сформировать одномерный...

Формирование элементов матрицы в заданном интервале
нужно создать процедуру формирующию матрицу в интервале от -1.0 до 1.0

Формирование вектора Z из положительных элементов матрицы
Заданы матрицы А(4*7) и В(4*5),элементы которых вычисляются по формулам a(i,j)=((i-j)/(2,3-(i+j));...

Формирование массива, если все элементы столбца матрицы отрицательны
Дана целочисленная матрица из N-строк и M-столбцов (1<N<=100, 1<M<=50). Выполнить заданную операцию...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru