Технический форум

Технический форум (http://www.tehnari.ru/)
-   Помощь студентам (http://www.tehnari.ru/f41/)
-   -   Исправьте, пожалуйста, программу (http://www.tehnari.ru/f41/t49385/)

павля 25.03.2011 01:25

Исправьте, пожалуйста, программу
 
задание:
осуществить циклический сдвиг элементов прямоугольной матрицы на n элементов или вправо или вниз (в зависимости от введённого режима).

то что по идеи следовало бы исправить :tehnari_ru_102:
program lab;
uses crt;
var
a:array [1..100,1..100] of integer;
n,m,i,j,g,h,l:integer;
begin
writeln ('введите n,m');
readln (n,m);
for i:=1 to n do
for j:=1 to m do
readln (a[i,j]);
for i:=1 to g do
for j:=1 to m-1 do begin
l:=a[h,j];
a[h,j]:=a[h,j+1];
a[h,j+1]:=1;
end;
for i:=1 to n do begin
for j:=1 to m do
writeln (a[i,j]:3);
writeln;end;
readln;
end.


БЛАГОДАРЮ:tehnari_ru_078:

павля 25.03.2011 03:03

в этой программе по идеи должен осуществлятся сдвиг вправо...

Vladimir_S 25.03.2011 09:39

Цитата:

Сообщение от павля (Сообщение 491681)
в этой программе по идеи должен осуществлятся сдвиг вправо...

Была уже такая:
http://www.tehnari.ru/f41/t36969/

павля 25.03.2011 10:41

оо..хи...над же...точ в точ...хм....интересн:))

спасибочки

павля 25.03.2011 21:53

та программка не работа пчемут:(

Vladimir_S 25.03.2011 22:19

Цитата:

Сообщение от павля (Сообщение 492106)
та программка не работа пчемут:(

Павля - конкретнее! Что "не работа"? В чм эт выража? У мня работа как зврь! Тольк чт провер.

павля 27.03.2011 21:41

вот...сделала...всё работает...мне просто нужно сдвинуть...но...правильно работает только при вводе определённых данных в read (a[i])...вообщем не заменяет первый в строке элемент последним, который по идеи должен после сдвига стать на его позицию:((

program ;
uses crt;
var
a:array [1..100] of integer;
s:array [1..100, 1..100] of integer;
m,n,i,j,k,b:integer;
begin
writeln ('введите n,m');
readln (n,m);
for i:=1 to n do
read (a[i]);
for i:=1 to n do begin
for j:=1 to m do
readln (s[i,j]);
for i:=1 to n do begin
for j:=1 to m do
write (a[i,j]:3;
writeln;
end;
while (k<>b);
for i:=1 to n do
a[i]:=s[i,n];
for j:=m down to 2 do
for i:=1 to n do
s[i,j]=s[i,j-1];
for i:=1 to n do
s[i,1]:=a[i];
k:=k+1;
for i:=1 to n do
for j:=1 to m do
writeln (s[i,j]:3);
writeln;
end;
readln;
end.

павля 27.03.2011 21:46

как бы так сделать чтоб автоматически заменялся?:((...рассказывали нам кажись на парах с помощью дополнительной парочки переменных которые бы хранили это сдвинувшееся последнее значение, чтоб потом вставить на первое...только как это всё в программе красиво ....:(


Часовой пояс GMT +4, время: 00:13.

Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.