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

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

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

> Типизированные файлы, матрица
leahov
сообщение 3.06.2006 12:17
Сообщение #1


Новичок
*

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

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


Ещё одна задача
Пусть матрица A целых чисел размером 10 на 10 записана по строкам в файле. Найдите все совпадающие между собой строки и столбцы и выведите их номера.

uses crt;
var a: array[1..10,1..10] of Integer; {Матрица}
x,y: Integer;

procedure Iskat;
var Flag: Boolean;
begin
for x:=1 to 10 do
begin
Flag:=True;
for y:=1 to 10 do if a[x,y]<>a[y,x] then Flag:=False;
if Flag then WriteLn(x);
end;
end;

begin
Clrscr;
TextAttr:=7;
Randomize;
for x:=1 to 10 do for y:=1 to 10 do a[x,y]:=Random(2); {Заполняем массив}
Iskat;
for x:=1 to 10 do
begin
for y:=1 to 10 do Write(a[x,y]:5,' '); {Столбец(y) - строка(x)}
WriteLn;
end;
end.


Она показывает матрицу, но не выводит результат совпадающие между собой строки и столбцы, как енто сделать?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
Bokul
сообщение 3.06.2006 19:53
Сообщение #2


Гуру
*****

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

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


Цитата
Пусть матрица A целых чисел размером 10 x 10 записана по строкам в файле. Найдите все совпадающие между собой строки и столбцы и выведите их номера.

Вот. Вроде все работает. Считывания сможешь сам организовать?
Только x и y прировняй 10
const x=5;
y=5;
type main=array[1..x,1..y] of integer;

procedure find_string(mas:main);
var i,j,k:integer;
b:boolean;
begin
for k:=1 to y-1 do
begin
for i:=k+1 to y do
begin
b:=true;
for j:=1 to x do
if mas[k,j]<>mas[i,j] then b:=false;
if b=true then writeln(k,' ',i);
end;
end;
end;

procedure find_colonne(mas:main);
var i,j,k:integer;
b:boolean;
begin
for k:=1 to x-1 do
begin
for i:=k+1 to x do
begin
b:=true;
for j:=1 to y do
if mas[j,k]<>mas[j,i] then b:=false;
if b=true then writeln(k,' ',i);
end;
end;
end;


Вот пример на котором я проверял:
const mas:array[1..5,1..5] of integer=((1,1,1,2,2),
(1,1,1,2,2),
(1,1,1,2,2),
(1,1,1,6,6),
(1,1,1,2,2));
var i,j:integer; temp:main;
begin
clrscr;
for i:=1 to 5 do
begin
for j:=1 to 5 do
begin
temp[i,j]:=mas[i,j];
write(temp[i,j],' ');
end;
writeln;
end;
writeln;
find_string(temp);
writeln;
find_colonne(temp);
readln;
end.


Сообщение отредактировано: volvo - 2.11.2006 17:34


--------------------
Лао-Цзы :
Знать много и не выставлять себя знающим есть нравственная высота. Знать мало и выставлять себя знающим есть болезнь. Только понимая эту болезнь, мы можем избавиться от нее.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме
leahov   Типизированные файлы   3.06.2006 12:17
leahov   похоже что всё таки это не из этой оперы   3.06.2006 12:30
RaV   А где у тебя файл? И ещё совподать должны строки ...   3.06.2006 12:33
volvo   leahov, а ты внимательно смотрел на свою процедуру...   3.06.2006 12:35
leahov   оп, звиняйте, я не весь код влил это вообща код и...   3.06.2006 12:45
RaV   Я думаю, что должна быть записана в файле.   3.06.2006 12:49
leahov   Ребят, в общем если можете помочь решить два задан...   3.06.2006 13:01
RaV   Ты их реши,а если не будет что-то получаться задаш...   3.06.2006 13:17
leahov   у меня просто срок сдачи в понедельник, дома интер...   3.06.2006 13:25
Bokul   Вот. Вроде все работает. Считывания сможешь сам о...   3.06.2006 19:53
leahov   Bokul спасибо. вроде довел до рабочего состояния   5.06.2006 9:23
leahov   Уважаемые знатоки Паскаля Так и не смог написать ч...   5.06.2006 11:17
Bokul   Вот вроде сделал... :) Алгоритм: сначала проход...   6.06.2006 3:27
leahov   Bokul спасибо добрый человек!   6.06.2006 7:05
volvo   Нужен еще вариант? uses crt; type Tst=Array[1..2...   6.06.2006 7:53
Malice   Ну раз пошла такая пьянка, вот тебе вариант для ко...   6.06.2006 9:43


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

 



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