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

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

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

 
 Ответить  Открыть новую тему 
> Локальный минимум
сообщение
Сообщение #1


Гость






Элемент Матрицы называется ЛОКАЛЬНЫМ МИНИМУМОМ, если он меньше всех соседей(по строке и столбцу). Напистаь программу , обеспечивающую ввод с клавиатуры целочисленной матрицы размером M на N, и обнаружение и подсчет кол-ва всех локальных минимумов....
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Профи
****

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

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


Доогая, ф, все мы тут, конечно, девушек очень любим, но правила форума ко всем относятся:

Цитата(Правила раздела)
1. Заголовок темы должен быть информативным В противном случае тема удаляется
А то volvo надоело уже всем напоминать

Тут была похожая задача: Задачка о 2-мерном массиве


Цитата
все мы тут, конечно, девушек очень любим

А я очень-очень люблю , поэтому тему переименовал smile.gif


Сообщение отредактировано: Oleg_Z -


--------------------
Close the World...txeN eht nepO
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Гость






спасибо солнце :flowers:

Все для вас, прекрасные девушки! :-* wub.gif

Сообщение отредактировано: Oleg_Z -
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Гость






ребята помогите

Элемент матрицы называется локальным минимумом, если он строго меньше всех имеющихся у него соседей.

вот моя прога но она не работает

=((

что делать подскажите

Код
program oo;
uses crt;
const
n = 4;
a: array[1 .. n, 1 .. n] of integer =
((1, 2, 3, 4),(5, 4, 2, 6),(7, 3, 2, 7),(8, 1, 4, 2));
function is_local_min(i, j: integer): boolean;
 var
 b: boolean;
 ii, jj: integer;
   begin
 clrscr;
b := true;
 begin
for ii := pred(i) to succ(i) do
for jj := pred(j) to succ(j) do
if (ii in [1 .. n]) and (jj in [1 .. n]) then
 if (ii = i) and (jj = j) then continue
else b := b and (a[ii, jj] > a[i, j]);
is_local_min := b;
   end;
writeln(a[i,j]);
writeln(is_local_min(i,j));
 end.


Тегами пользуемся ...

Сообщение отредактировано: volvo -
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Гость






smile.gif А вот так?
program oo;
uses crt;
const
n = 4;
a: array[1 .. n, 1 .. n] of integer =
((1, 2, 3, 4),(5, 4, 2, 6),(7, 3, 2, 7),(8, 1, 4, 2));

function is_local_min(i, j: integer): boolean;
var
b: boolean;
ii, jj: integer;
begin
b := true;

for ii := pred(i) to succ(i) do
for jj := pred(j) to succ(j) do
if (ii in [1 .. n]) and (jj in [1 .. n]) then
if (ii = i) and (jj = j) then continue
else b := b and (a[ii, jj] > a[i, j]);
is_local_min := b;
end;

var
i, j: integer;
begin
for i := 1 to n do
for j := 1 to n do
if is_local_min(i, j) then begin
writeln('a[',i,',',j,'] = ',a[i, j]);
end;

end.

Зачем же исправлять программу? Ведь по ссылке же была рабочая версия, надо было просто удалить несколько строк ... rolleyes.gif
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Гость






так спасибо большое :flowers: :flowers: :flowers:
у меня теперь два вопроса

1)что такое теги?=)))
2)и что значит то что он выводит вот это : a[1,1]=1 a[4,2]=1 :flowers:

(p.s. извините за глупые вопросы)) :low:
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Гость






Цитата(ф @ 22.06.05 19:01)
1)что такое теги?
Над тем полем, где вводится текст сообщения есть кнопка:
[CОDE], и комбобокс. Если в сообщении есть программа на Паскале, просто выделяем ее мышкой и выбираем в комбобоксе PAS, так тексты программ гораздо удобнее читать... :yes:
Цитата(ф @ 22.06.05 19:01)
2)и что значит то что он выводит вот это : a[1,1]=1 a[4,2]=1
Значит, что в матрице, которая задана в программе есть 2 локальных минимума:
элемент с индексами [1, 1] (равный 1)
элемент с индексами [4, 2] (равный 1)

если бы их было больше, они бы все распечатались... Если нет локальных минимумов - вообще ничего напечатано не будет... smile.gif
 К началу страницы 
+ Ответить 
сообщение
Сообщение #8


Гость






умничка
спасиб тебе

у меня еще может вопрос будет
но попозже :P :yes:
 К началу страницы 
+ Ответить 
сообщение
Сообщение #9


Гость






хотя собственно вопрос пришел сразу=))

мне вот надо чтоб ввод матрицы был с клавиатуры


a: array[1 ..20 , 1 .. 20] of integer;
n,m,i,j:integer;
begin
writeln('');
write('stroki');
readln(n);
write('stolbci');
readln(m);
writeln('vvedite elementi matrici;');
for i:=1 to n do
for j:=1 to m do
begin
write('a[',i, ',',j,']=');
readln(a[i,j]);
end;
writeln;
readln;
end;


как он делается понятно,вот так вроде,вот только куда я его не вставляла в этой проге,чтобы не делала,не получается=(( помоги пожалуйста, и я отстану=))))) :flowers: кстати вроде тег сделала
 К началу страницы 
+ Ответить 
сообщение
Сообщение #10


Гость






В том-то и проблема, что это вставляется не одним куском, а разбивается на 2 части...
По-моему вот так, я не проверял, попробуй smile.gif
program oo;
uses crt;

var
a: array[1 ..20 , 1 .. 20] of integer;
n,m:integer;

function is_local_min(i, j: integer): boolean;
var
b: boolean;
ii, jj: integer;
begin
b := true;

for ii := pred(i) to succ(i) do
for jj := pred(j) to succ(j) do
if (ii in [1 .. n]) and (jj in [1 .. m]) then
if (ii = i) and (jj = j) then continue
else b := b and (a[ii, jj] > a[i, j]);
is_local_min := b;
end;

var
i, j: integer;
begin
writeln('');
write('stroki'); readln(n);
write('stolbci'); readln(m);
writeln('vvedite elementi matrici;');
for i:=1 to n do
for j:=1 to m do begin
write('a[',i, ',',j,']=');
readln(a[i,j]);
end;
writeln;
readln;

writeln(' results: ');
for i := 1 to n do
for j := 1 to m do
if is_local_min(i, j) then begin
writeln('a[',i,',',j,'] = ',a[i, j]);
end;
end.
 К началу страницы 
+ Ответить 
сообщение
Сообщение #11


Гость






да работает
спасибааааааааааааааааааааааа!уря! :flowers:
 К началу страницы 
+ Ответить 

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

 





- Текстовая версия 23.12.2024 20:38
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name