помогите плиз!
Дан массив a:array[1..2,1..15] of integer.Известно, что среди его элементов дваи только два равны между собой.Напечатайте их индексы.
зарание примного блашодарен!!!если возможно то желательно скорее помогите по мойе теие это вопрос жизни и смерит)
работа с двумерным массивом в Delphi
Модераторы: Хыиуду, MOTOCoder, Medved, dr.Jekill
Решу вопрос в благоприятную сторону. 255507394
----------------------------------------------------
Sheka, буду банить всерьез и надолго!
Читать правила.
----------------------------------------------------
Sheka, буду банить всерьез и надолго!
Читать правила.
Мои мысли настолько гениальны, что санитары уже приехали!
Ася 255507394.
Ася 255507394.
-
- Сообщения: 526
- Зарегистрирован: 03 янв 2009, 23:17
- Откуда: Voronezh
- Контактная информация:
Алгоритм может быть таким:
1. Заполнили массив;
2. Запомнили первый элемент и его индекс;
3. Проходим по массиву в поисках элемента равного ранее запомненному:
- Элемент найден: запоминаем его индекс, прерываем цикл;
- Элемент не найден: запоминаем следующий элемент, переходим к шагу 3.
----------------------------------
Учитесь программировать. Выкладывайте сюда то, что получится.
1. Заполнили массив;
2. Запомнили первый элемент и его индекс;
3. Проходим по массиву в поисках элемента равного ранее запомненному:
- Элемент найден: запоминаем его индекс, прерываем цикл;
- Элемент не найден: запоминаем следующий элемент, переходим к шагу 3.
----------------------------------
Учитесь программировать. Выкладывайте сюда то, что получится.
Нет религии выше истины
вот что у меня вышел за бред )неуверен токо в правильности его пожалуйсто оцените и подкоректируйте мою ересь)))
Код: Выделить всё
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, StdCtrls;
type
TForm1 = class(TForm)
StringGrid1: TStringGrid;
Edit1: TEdit;
Button1: TButton;
Label1: TLabel;
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure StringGrid1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
const n=2;
m=15;
var
Form1: TForm1;
a:array[1..n,1..m] of integer;
implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
var f,b,c,d,i,j,p,q:byte;
begin
randomize;
//создадим таблицу 2х15 с фиксированными ячейками
Stringgrid1.ColCount:=m+1;
Stringgrid1.RowCount:=n+1;
for i:=1 to n do
Stringgrid1.Cells[0,i]:=Inttostr(i);
for i:=1 to m do
Stringgrid1.Cells[i,0]:=Inttostr(i);
//заполним матрицу разными числами
for i:=1 to n do
for j:=1 to m do
a[i,j]:=m*i+j; //от 16 до 42
//выберем 2 случайных ячейки
f:=random(n)+1;
b:=random(m)+1;
a[f,b]:=50; //запищим в них число,которого еще нет
repeat
c:=random(n)+1;
d:=random(m)+1;
until(c<>f)or(d<>b);
a[c,d]:=a[f,b];
//заполним таблицу
for i:=1 to n do
for j:=1 to m do
Stringgrid1.Cells[j,i]:=Inttostr(a[i,j]);
end;
procedure TForm1.Button1Click(Sender: TObject);
var i,j,p,q:byte;
begin
//пройдем 2 раза по матрице сравнивая разные ячейки
for i:=1 to n do
for j:=1 to m do
for p:=1 to n do
for q:=1 to m do
if(a[i,j]=a[p,q])and((p<>i)or(q<>j)) then //найдем одинаковые
Edit1.Text:='1 - ['+inttostr(p)+','+inttostr(q)+'] 2 - ['+
inttostr(i)+','+inttostr(j)+']';
end;
end.
где написаны иероглифы там должны быть описания кода но они както коряво скопировалися((((( этот код мне помогали составлять знакомые только он вышел какойто сильно замутный
вот вродебы все подкариктировал теперь проверте мою глупость плиззз)