Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.55/11: Рейтинг темы: голосов - 11, средняя оценка - 4.55
6 / 6 / 3
Регистрация: 04.10.2009
Сообщений: 202

Создать вектор, состоящий из максимальных элементов столбцов матрицы.

30.12.2009, 22:54. Показов 2345. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет, и с наступающим всех!!! Пишу с просьбой услышать пару советов по моей на писанной задачи на pascale. Саму программу вроде и написал но мне кажется что я что-то упустил и где-то допущены ошибки. Но сам пока не могу сообразить где.
Задача
Сформировать квадратные матрицы {a ij} n,m , {b ij} k,l , где i<=(n,k), j<=(m,l), элементы которых определяются случайно из диапазона вещественных чисел от -50 до 50. Фактическое число строк (n,k) и столбцов (m,l) каждой матрицы вводить с клавиатуры. Создать процедуру, определяющую век- тор, состоящий из максимальных элементов столбцов матрицы. Вывести на экран: исходные матрицы, результирующие вектора и произведение векторов, при условии, что количество строк первой матрицы равно количеству столбцов второй матрицы.

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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
Program Neprogram;
uses crt;
const SIZE = 10;
type Matrix = array [1..SIZE,1..SIZE] of real;
     Vector = array [1..SIZE] of real;
 
{read integer value in dimension [a..b]}
procedure read_int (var result : integer; a,b : integer);
begin
  result := 0;
  repeat
    write ('Input value (', a, ' <= value <= ',b, '): ');
    readln (result);
  until (result >= a) and (result <= b);
end;
 
{col - stolbets, row - stroka}
procedure generate (var arr : Matrix; col,row : integer);
var i,j:integer;
begin
  for i:=1 to row do
    for j:=1 to col do
      arr [i,j] := trunc((-51-50)*random+50);
end;
 
procedure output_matrix (arr : Matrix; col,row : integer; msg : string);
var i,j: integer;
begin
  writeln;
  writeln (msg);
  writeln;
  for i:=1 to row do
  begin
    writeln(' ');
    for j:=1 to col do
    begin
      write (arr[i,j]:3:1);
      write (' ');
    end;
  end;
  writeln;
end;
 
procedure output_vector (vec : Vector; size : integer; msg : string);
var i : integer;
begin
  writeln;
  writeln (msg);
  for i := 1 to size do
  begin
    write (vec[i]:3:1);
    write (' ');
  end;
  writeln;
end;
 
procedure get_max_elems (var v_max : Vector; arr : Matrix; col,row : integer);
var i,j : integer;
    max : real;
begin
  for j := 1 to col do
  begin
    max := -2147483648.0;
    for i := 1 to row do
      if (arr [i,j] > max) then
        max := arr [i,j];
    v_max [j] := max;
  end;
end;
 
var A,B : Matrix;
    V1,V2 : Vector;
    n,m,k,l : integer;
 
begin
  clrscr;
 
  read_int (n, 1, SIZE);
  read_int (m, 1, SIZE);
  read_int (k, 1, SIZE);
  read_int (l, 1, SIZE);
 
  generate (A, n, m);
  generate (B, k, l);
 
  output_matrix (A, n, m, 'Matrix A:');
  output_matrix (B, k, l, 'Matrix B:');
 
  get_max_elems (V1,A,n,m);
  output_vector (V1,m,'A. Vector of max elems: ');
 
  get_max_elems (V2,B,k,l);
  output_vector (V2,l,'B. Vector of max elems: ');
 
  if (m = l) then
  begin
    mult_vec (V1,V2,V3,m);
    ouptut_vector (V3,m,'Product V1*V2 = ');
  end;
  else
    writeln ('m != l');
 
  readln;
end.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
30.12.2009, 22:54
Ответы с готовыми решениями:

Для матрицы получить вектор из индексов максимальных элементов столбцов
Друзья помогите написать программу: Для матрицы А(4 строки ,4 столбца) сформировать одномерный массив B из 4 элементов. Каждый элемент...

Создать вектор из суммы положительных элементов столбцов матрицы и найти в нём номер минимального элемента.
Дано матрицу B: 7х5. Образовать и напечатать вектор c, элементами которого являются суммы положительных элементов столбцов матрицы B. Найти...

Используя процедуры и функции из целочисленной матрицы А (n x m) получить вектор, состоящий из номеров минимальных нечетных элементов строк матрицы
поможете сделать? Используя процедуры и функции из целочисленной матрицы А (n x m) получить вектор, состоящий из номеров минимальных...

1
 Аватар для Aye Aye
373 / 287 / 97
Регистрация: 17.12.2009
Сообщений: 567
31.12.2009, 10:22
а почему процидуры mult_vec() и ouptut_vector() не определены? программа без них не компилируется, это даже не ошибка... произведение векторов - скаляр. а не V3.
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
program Neprogram;
uses crt;
const SIZE = 10;
type Matrix = array [1..SIZE,1..SIZE] of real;
     Vector = array [1..SIZE] of real;
 
{read integer value in dimension [a..b]}
procedure read_int (var result : integer; a,b : integer);
begin
  result := 0;
  repeat
    write ('Input value (', a, ' <= value <= ',b, '): ');
    readln (result);
  until (result >= a) and (result <= b);
end;
 
{col - stolbets, row - stroka}
procedure generate (var arr : Matrix; col,row : integer);
var i,j:integer;
begin
     randomize;
  for i:=1 to row do
    for j:=1 to col do
      arr [i,j]:=trunc((-51-50)*random+50) + random;
end;
 
procedure output_matrix (arr : Matrix; col,row : integer; msg : string);
var i,j: integer;
begin
  writeln;
  writeln (msg);
  writeln;
  for i:=1 to row do
  begin
    writeln(' ');
    for j:=1 to col do
    begin
      write (arr[i,j]:3:1);
      write (' ');
    end;
  end;
  writeln;
end;
 
procedure output_vector (vec : Vector; size : integer; msg : string);
var i : integer;
begin
  writeln;
  writeln (msg);
  for i := 1 to size do
  begin
    write (vec[i]:3:1);
    write (' ');
  end;
  writeln;
end;
 
procedure get_max_elems (var v_max : Vector; arr : Matrix; col,row : integer);
var i,j : integer;
    max : real;
begin
  for j := 1 to col do
  begin
    max := -51;
    for i := 1 to row do
      if (arr [i,j] > max) then
        max := arr [i,j];
    v_max [j] := max;
  end;
end;
function mult_vec(V1,V2: vector;m:integer):real;
var i: integer;
    sum: real;
begin
     sum:=0;
     for i:=1 to m do begin
         sum:=sum+V1[i] * V2[i];
     end;
     mult_vec:=sum;
end;
 
var A,B : Matrix;
    V1,V2 : Vector;
    n,m,k,l : integer;
 
begin
  clrscr;
 
  read_int (n, 1, SIZE);
  read_int (m, 1, SIZE);
  read_int (k, 1, SIZE);
  read_int (l, 1, SIZE);
 
  generate (A, n, m);
  generate (B, k, l);
 
  output_matrix (A, n, m, 'Matrix A:');
  output_matrix (B, k, l, 'Matrix B:');
 
  get_max_elems (V1,A,n,m);
  output_vector (V1,m,'A. Vector of max elems: ');
 
  get_max_elems (V2,B,k,l);
  output_vector (V2,l,'B. Vector of max elems: ');
 
  if (m = l) then
  begin
    writeln('Product V1*V2 = ',mult_vec (V1,V2,m));
  end
  else
    writeln ('m != l');
 
  readln;
end.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
31.12.2009, 10:22
Помогаю со студенческими работами здесь

Сформировать одномерный массив из максимальных элементов столбцов матрицы.
Тема:Массивы...Сформировать одномерный массив из максимальных элементов столбцов матрицы.

Составить одномерный массив из максимальных элементов столбцов матрицы.
Помогите,пожалуйста,решить Вводятся две целые матрицы размером 20х20 и 30х30. Для той у матрицы, которой количество нулевых элементов...

Найти минимальный среди максимальных элементов столбцов матрицы.
В1(1).Дано целое число N (N &gt; 2) и набор из N вещественных чисел.Набор называется пилообразным, если каждый внутренний элемент либо больше,...

Построить одномерный массив, состоящий из произведений элементов столбцов матрицы
Дана матрица 20 на 15, заполненная случайными числами. Построить Одномерный массив состоящий из произведений элементов столбцов. Посчитать...

Упорядочить столбцы матрицы по возрастанию максимальных элементов столбцов методом линейной вставки
1 задача... Тема: «Методы сортировок» Выполнить задание по обработке матриц с использованием указанных методов сорти-ровок. ...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru