IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

 
 Ответить  Открыть новую тему 
> Помогите решить двумерный массив!
joker1989
сообщение 14.05.2007 14:27
Сообщение #1





Группа: Пользователи
Сообщений: 5
Пол: Мужской

Репутация: -  0  +


дана матрица NхM, найти максимальный элемент в двух треугольниках! треугольники там где единицы! Матрица обязательно квадратная!
(1)(0)(0)(0)(0)(0)(0)(1)
(1)(1)(0)(0)(0)(0)(1)(1)
(1)(1)(1)(0)(0)(1)(1)(1)
(1)(1)(1)(1)(1)(1)(1)(1)
(1)(1)(1)(1)(1)(1)(1)(1)
(1)(1)(1)(0)(0)(1)(1)(1)
(1)(1)(0)(0)(0)(0)(1)(1)
(1)(0)(0)(0)(0)(0)(0)(1)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Tan
сообщение 14.05.2007 15:29
Сообщение #2


Профи
****

Группа: Пользователи
Сообщений: 559
Пол: Мужской
Реальное имя: Бруно

Репутация: -  10  +


Ну вот черновик, прога рисует 2 треугольника, заполяет их случайными числами и считает максимальный элемент среди 2х треугольников. Надеюсь я верно понял условие.
Program Array_Fill;
uses crt;
Const N=10;
Var MyArr:Array[1..N,1..N] of Integer;
i,j,max:Integer;
L,r:Integer;
Begin
Clrscr;
randomize;
For i:=1 to N do
For j:=1 to N do
MyArr[i,j]:=0;
max:=(N-1) div 2;
L:=1; r:=N;
For i:=1 to N do Begin
For j:=1 to L do MyArr[i,j] := random (20) - 10;
For j:=R to N do MyArr[i,j] := random (20) - 10;
If (i-1<max) then Begin
Inc(L);
Dec®;
end else Begin
If not(((N-2)mod 2=0)and(i=max+1)) then Begin
Inc®;
Dec(L);
end;
end;
end;
max := MyArr[1,1];
For i:=1 to N do Begin
For j:=1 to N do Begin
If max <= MyArr[i,j] then max := MyArr[i,j];
Write(MyArr[i,j]:4);
end;
Writeln;
end;
writeln; writeln ('Max ',max);
readln;
end.



--------------------
Цитата
Imagination is more important than knowledge.
Albert Einstein
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
joker1989
сообщение 14.05.2007 15:46
Сообщение #3





Группа: Пользователи
Сообщений: 5
Пол: Мужской

Репутация: -  0  +


Спасибо, только там не нули должны быть, а любые числа! А можно чтобы треугольники цветом выделились, а максимальный элемент другим цветом в треугольнике?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Tan
сообщение 14.05.2007 15:53
Сообщение #4


Профи
****

Группа: Пользователи
Сообщений: 559
Пол: Мужской
Реальное имя: Бруно

Репутация: -  10  +


Конечно можно, а нули я для наглядности поставил, ты осилишь или сделать ? И я переменную max взял для двух целей, изначально она показывает рубеж заполнения, а потом как максимальный элемент, может довольно неудачно выбрал.

Сообщение отредактировано: Tan - 14.05.2007 15:55


--------------------
Цитата
Imagination is more important than knowledge.
Albert Einstein
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
joker1989
сообщение 14.05.2007 16:07
Сообщение #5





Группа: Пользователи
Сообщений: 5
Пол: Мужской

Репутация: -  0  +


Если не трудно, то сделай пожалуйста!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 23.06.2025 19:10
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"