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

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

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

 
 Ответить  Открыть новую тему 
> Одинаковые элементы в матрице! Задача!, Помогите решать вроде простую задачку...
MiLork
сообщение 23.05.2008 21:16
Сообщение #1


Гость






Помогите народ плиз с задачкой....
Не могу решить, с массивами вообще фигово у меня( а до понедельника нужно сдать((

вот задачка:
Дана целочисленная матрица С(5,5). Найти значения, которые входят в матрицу более одного раза и распечатать.

вот то что я пытался, но тут не правильное сравнение элементов матрици:

program Lab5_z3;
var m:array[1..5,1..5] of integer; i,j,v,u,y:integer;
begin
writeln('Vvedite elementi matricti');
for i:=1 to 3 do
begin
writeln('vvedite ',i,'-ii stolbec');
for j:=1 to 3 do
readln(m[i,j]);
end;

for y:=1 to 3 do
for u:=1 to 3 do
begin
for i:=1 to 3 do
for j:=1 to 3 do
if m[y,u]=m[i,j] then v:=v+1;
end;

writeln('otvet: ',v);
end.


Вся беда в этом вот месте:

for y:=1 to 3 do
for u:=1 to 3 do
begin
for i:=1 to 3 do
for j:=1 to 3 do
if m[y,u]=m[i,j] then v:=v+1;
end;


Я понимаю что тут не правильно, но как нужно чтобы находился одинаковый элемент я не знаю((

Зарание ОРГОМНОЕ СПАСИБО!!!!

М
Теги



Сообщение отредактировано: klem4 - 23.05.2008 21:21
 К началу страницы 
+ Ответить 
Гость
сообщение 23.05.2008 21:18
Сообщение #2


Гость






Вот я делал похожую задачку но там сравнивались 2 вектора а не матрица(
Но примерно не сильно сложнее вот этой задачки должно быть видино:


program lab4v4;
uses crt;
var a,b:array[1..10] of integer;
i,j:integer;
begin
clrscr;
writeln('vvedite elementi a:');
for i:=1 to 6 do
readln(a[i]);
writeln('vvedite elementi b:');
for i:=1 to 5 do
readln(b[i]);
writeln('v oba vectora vhodjat:');
for i:=1 to 6 do
for j:=1 to 5 do
if a[j] = b[i] then
writeln(a[j]);
end.


М
Используй теги



Сообщение отредактировано: klem4 - 23.05.2008 21:21
 К началу страницы 
+ Ответить 
klem4
сообщение 23.05.2008 21:25
Сообщение #3


Perl. Just code it!
******

Группа: Модераторы
Сообщений: 4 100
Пол: Мужской
Реальное имя: Андрей

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


Цитата
Дана целочисленная матрица С(5,5). Найти значения, которые входят в матрицу более одного раза и распечатать.


Идешь по матрице, берешь очередной элемент, смотришь, нету ли элемента с таким значением среди уже проверенных элементов (дополнительный одномерный массив), если нету, добавляешь его в этот массив и идешь дальше по матрице, пока либо не дойдешь до конца, либо пока не встретишь элемент равный проверяемому. Если дошел до конца - элемент с таким значением в матрице единственный, выводишь на экран.

вот примерно так.

Сообщение отредактировано: klem4 - 23.05.2008 21:26


--------------------
perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

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

 



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