Помощь - Поиск - Пользователи - Календарь
Полная версия: матрица на 180
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
sahek
1.Повернуть матрицу на 180 градусов. Вложенную(дополнительную) матрицу не использовать. Распечатовать на 90 не обязательно.
Вот мой текст-программа работает, но когда преподователь write поместил в конец программы, то он напечатал не то, что надо и еще он сказал, что я ее не повернул, а распечатал sad.gif

Program Povorot180;

Uses crt;
const n=3;
Type z=array [1..n,1..n] of integer;
Var A,B,C:z;
i,j:integer;
Begin
ClrScr;
RANDOMIZE;
  For i:=1 to n do
    For j:=1 to n do
    begin
     {a[i,j] := random (10)-1;}
     write('A(',i,',',j,')=');
    Readln(A[i,j]);
    end;
   Writeln;
   WRITELN;

  For i:=1 to n do
  Begin
     for j:=1 to n do
        Write(a[i,j]:4,' ');
        Writeln;
  End;

  For i:=1 to n do
  for j:=1 to n do
  b[j,n-i+1]:=a[i,j];
  Writeln('pechataem matrciy na 90 gradusov');
  for i:=1 to n do
  Begin
     for j:=1 to n do
     Write(b[i,j]:4,' ');
     Writeln;
  End;

   For i:=1 to n do
  for j:=1 to n do
  c[j,n-i+1]:=b[i,j];
  Writeln('pechataem matricy na 180 gradusov');
  for i:=1 to n do
  Begin
     for j:=1 to n do
     Write(c[i,j]:4,' ');
     Writeln;
  End;
Readln;
End.

мисс_граффити
1. можешь привести пример - что на входе, что на выходе... не совсем поняла...
вот так?
было
1 2 3
4 5 6
7 8 9
стало
9 8 7
6 5 4
3 2 1

дополнительных матриц ты используешь аж 2, кстати.

2. не проверяла, набирала прямо здесь. так что можешь расценивать это не как программу, а как идею smile.gif
readln(A);
readln(N);
sum:=0;
el:=1;
for i:=0 to N do
  begin
  sum:=sum+el;
  el:=el*(-A);
  end;



Добавлено через 41 сек.
кстати...
правила почитай (в рамочке вверху).
и исправь свое сообщение, соответственно.
volvo
Цитата
Повернуть матрицу на 180 градусов
Сколько можно решать эту задачу? Ну зайди в поиск уже - все настолько разжевано, что дальше некуда, есть реализации и с использованием дополнительных матриц, и без них...

Вот тут, скажем: Модификация двумерных массивов
sahek
так дело в том, что я поиск юзал и там нашел кокрас это и по аналогу 90 сделал на 180, но как повторюсь если использовать врайт в конце то программа не работает и мне еще сказали, что это распечатывает матрицу, а не переворачивает ее на 180 smile.gif
мисс графити, да поворот матрицы на 180 как ты написала smile.gif
Ozzя
Уж и не знаю, как ты поиск юзал. Но по ссылке тов. Вольво матрица именно поворачивается, а не выводится.
sahek
что то я не догоняю как изменить программу поворота матрицы на 90, на которую дал ссылку volvo sad.gif
volvo
А что, добавить еще один, внешний, цикл
for j := 1 to 2 do
  ...

нельзя никак догадаться? 2 раза повернуть на 90 градусов это не эквивалентно повороту на 180 по-твоему?
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.