Форум программистов, компьютерный форум, киберфорум
Turbo Pascal
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
0 / 0 / 1
Регистрация: 07.12.2014
Сообщений: 103
1

Создание гибких подпрограмм для обработки матриц произвольного порядка с фиксированным базовым типом

24.02.2015, 23:15. Показов 751. Ответов 3
Метки нет (Все метки)

Даны две прямоугольные матрицы разных размеров. Упорядочить строки каждой из них по не убыванию наибольших элементов строк
Не могу понять,как использовать absolute
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.02.2015, 23:15
Ответы с готовыми решениями:

Создание гибких подпрограмм для обработки матриц произвольного порядка с фиксированным базовым типом
Даны две квадратные матрицы разных порядков. Для каждой из матриц найти минимальное из значений...

Создание гибких подпрограммы для обработки матриц произвольного порядка с фиксированным базовым типом
Даны две прямоугольные матрицы разных размеров. Упорядочить строки каждой из них по не убыванию...

Описать функцию, меняющую местами максимальные элементы двух матриц произвольного порядка
После вывода на экран "repl" программа вылетает. Объясните, пожалуйста, почему? #include...

Что называется базовым типом множества
Следующий вопрос, что называется базовым типом множества? Я предполагаю следующий ответ: это тип...

3
Модератор
Эксперт по электронике
7697 / 3852 / 1492
Регистрация: 01.02.2015
Сообщений: 11,901
Записей в блоге: 2
25.02.2015, 07:57 2
А если так
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
program DynMatix;
 
type
  TElement = integer;
  TDynMatrix = array[0..MaxInt div SizeOf(TElement)] of TElement;
  PDynMatrix = ^TDynMatrix;
 
  procedure ReadMatrix(var a: TDynMatrix; n, m: integer);
  var
    i, j: integer;
  begin
    for i := 0 to n - 1 do
      for j := 0 to m - 1 do
        a[i * m + j] := (i + 1) * 10 + j + 1;
  end;
 
  procedure ShowMatrix1(const a: TDynMatrix; n, m: integer);
  var
    i, j: integer;
  begin
    for i := 0 to n - 1 do
    begin
      for j := 0 to m - 1 do
        Write(a[i * m + j]: 4);
      writeln;
    end;
  end;
 
  procedure ShowMatrix2(const a: TDynMatrix; n, m: integer);
  var
    i: integer;
    p: ^TElement;
  begin
    p := @a[0];
    for i := 0 to n * m - 1 do
    begin
      Write(p^: 4);
      if succ(i) mod m = 0 then
        writeln;
      Inc(p);
    end;
  end;
 
var
  DM: PDynMatrix;
  n, m: integer;
begin
  n  := 10;
  m  := 7;
  DM := GetMem(n * m * SizeOf(TElement));
  ReadMatrix(DM^, n, m);
  ShowMatrix1(DM^, n, m);
  ShowMatrix2(DM^, n, m);
  FreeMem(DM, n * m * SizeOf(TElement));
end.
Для последовательного перемещения по элементам матрицы можно использовать адресную арифметику (ShowMatrix2).
Это для TurboPascal. В Delphi, FPC (наверняка и в ABC) есть готовые средства для работы с динамическими матрицами и массивами без таких ужасов.
0
0 / 0 / 1
Регистрация: 07.12.2014
Сообщений: 103
25.02.2015, 08:17  [ТС] 3
Спасибо огромное,но сказали делать через эту директиву(((
0
Почетный модератор
64069 / 47481 / 32732
Регистрация: 18.05.2008
Сообщений: 115,185
25.02.2015, 09:45 4
Цитата Сообщение от СанекКенас Посмотреть сообщение
Не могу понять,как использовать absolute
Посмотри эту тему
С пом. директивы absolute, отсортировать по убыванию с пом. одной подпрограммы векторы из 10 и 14 вещественных компонент
и переделай для матриц
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.02.2015, 09:45

Заданные множественные числа элементов с базовым типом byte: А=[1,3,5,7,9], В=[3, 5, 9]
Выбрать все элементы множественного числа А, что не принадлежат В, и вывести их значение на печать....


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.