Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Задачи _ Обработка двумерного массива

Автор: BAEVIK 27.01.2009 2:09

Помогите решить задачу !!! На дву мерный массив!!!
Заача: Задать дву мерный массив И если один его элемент больше ста(100) то заменить главную и допольнительную диагонал нулями (0) !!! Помагите кто может !!! smile.gif

М
BAEVIK, у тебя на клавиатуре CapsLock не выключается? В следующий раз тема с таким названием: "пОМОГИТЕ рЕШИТЬ зАДАЧУ!" будет сразу же закрыта... Это на всякий случай, чтоб потом не было вопросов. Пока переименовано.


Автор: amega 27.01.2009 2:59

program _1_;
Type
Masiv = array[1..100,1..100] of integer;
procedure arr(var a:masiv;count:integer);
var i:integer;
begin
for i:=1 to count do
begin
a[i,i]:=0;
a[count-i+1,i]:=0;
end;
end;
var
a:masiv;
i:integer;
count:integer;
j:integer;
begin
writeln('введите количество строк');
readln(count);
Writeln('введите значение елементов масива ');
For i:=1 to count do
begin
for j:=1 to count do read(A[i,j]);
writeln;
end;
for i:=1 to count do
for j:=1 to count do
If a[i,j]>100 then
begin
arr(a,count);
break;
end;
for i:=1 to count do
begin
for j:=1 to count do Write(a[i,j],' ');
Writeln;
end;
readln;
end.

Автор: BAEVIK 27.01.2009 3:01

Спасибо !!! smile.gif

Автор: klem4 27.01.2009 12:41

На миссиве 3х3 например, если все его элементы > 100, замена диагоналей выполнится 3 раза ...

Автор: amega 27.01.2009 17:51

Цитата
На миссиве 3х3 например, если все его элементы > 100, замена диагоналей выполнится 3 раза ...


for i:=1 to count do
for j:=1 to count do
If a[i,j]>100 then
begin
arr(a,count);
break;
end;

точно, break прекращает ток внутрений цикл но не внешний.
тогда можно

...
label 1;
...
for i:=1 to count do
for j:=1 to count do
If a[i,j]>100 then
begin
arr(a,count);
goto 1;
end;
1:
....


Автор: BAEVIK 28.01.2009 0:20

Спасибо та задача пр катила помогите решить ещё одну !
Записи и строки
Дано целое число. Создать массив символов, содержащий цифры этого числа в исходном и в обратном порядках.
Если можете то сделайте по быстрее а то меня завтро если не принесу таво , я просто не понимаю смысла в этой задаче !!! unsure.gif

Автор: volvo 28.01.2009 0:50

Цитата
Если можете то сделайте по быстрее
Все-же прочитай правила форума, и не делай из темы свалку. Закрыто.