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

Поворот матрицы

15.03.2013, 11:02. Показов 1754. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Дана квадратная матрица порядка M. Повернуть ее на 901|1802|2703 гра-
дусов в положительном направлении.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.03.2013, 11:02
Ответы с готовыми решениями:

Поворот внешнего кольца матрицы
Есть прямоугольная матрица 4х3 и нужно повернуть ее внешнее кольцо на r элементов, то есть была...

Поворот элементов целочисленной квадратной матрицы
Написать программу, осуществляющую поворот элементов целочисленной квадратной матрицы размерностью...

Поворот матрицы(портация с с++)
Товарищи! помогите! надо перевести на pascal данный код. задание изначально - надо повернуть...

Поворот матрицы размерности n*m вправо на 90 градусов
дана матрица Х размеров n*m поернуть ее вправо на 90 градусов. помогите плиз

1
Почетный модератор
64299 / 47594 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
15.03.2013, 12:50 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
56
57
uses crt;
const nmax=15;
type mtr=array[1..nmax,1..nmax] of integer;
procedure povorot(var a:mtr;n:integer);
var i,j,p,x:integer;
begin
{поворот на 90 гр.}
p := n div 2;
for i:=1 to p do
for j:=i to n-i do
 begin
  x := a[i,j];
  a[i,j] := a[n-j+1,i];
  a[n-j+1,i] := a[n-i+1,n-j+1];
  a[n-i+1,n-j+1] := a[j,n-i+1];
  a[j,n-i+1] := x;
 end;
end;
procedure vyvod(a:mtr;n:integer;s:string);
var i,j:integer;
begin
writeln(s);
for i:=1 to n do
 begin
  for j:=1 to n do
  write(a[i,j]:4);
  writeln;
 end;
writeln('Нажмите Enter');
readln;
end;
var a:mtr;
    n,i,j:integer;
begin
repeat
write('Размер матрицы от 2 до ',nmax,' n=');
read(n);
until n in [2..nmax];
writeln('Исходная матрица:');
for i:=1 to n do
 begin
  for j:=1 to n do
   begin
    a[i,j]:=(i-1)*n+j;
    write(a[i,j]:4);
   end;
  writeln;
 end;
writeln('Нажмите Enter');
readln;
povorot(a,n);
vyvod(a,n,'Поворот на 90 градусов:');
povorot(a,n);
vyvod(a,n,'Поворот на 180 градусов:');
povorot(a,n);
vyvod(a,n,'Поворот на 270 градусов:');
end.
1
15.03.2013, 12:50
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.03.2013, 12:50
Помогаю со студенческими работами здесь

Сделать поворот матрицы влево на 90 градусов
Сделать поворот матрицы влево на 90 градусов.

Не могу сделать поворот матрицы на каждое нажатие, и её нормальный поворот
var Form1: TForm1; m, n: integer; i, j: byte; b, a: array of integer; ...

Поворот неквадратной матрицы на 90 градусов против часовой стрелки. Матрицы. Двумерный массив
Написать программу, выполняющую поворот неквадратной матрицы на 90° против часовой стрелки....

Поворот матрицы
Добрый день, помогите пожалуйста решить задачку: Написать программу, выполняющую поворот...


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

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

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