| Код | program Help_me;
{$APPTYPE CONSOLE}
uses SysUtils;
const // описываем константы N = 3; // N - кол-во строк в массиве M = 4; // M - кол-во столбцев
var // описываем переменные Massiv: array[1..N, 1..M] of Integer; // Собственно сам массив размером NxM из целых чисел i, j : Integer; // Счетчики цыклов i1, j1 : Integer; // Они же EqualCount: Integer; // Количество найденных равных элементов
begin
// Сперва вводим массив с клавиатуры for i:=1 to N do // вложенные циклы по i и j for j:=1 to M do begin // те получается, что пробегаем весь массив Write('Input element [',i,',',j,']: '); // Приглашение для ввода :) ReadLn(Massiv[i,j]); // Вводим с клавы число и помещаем в массив end;
// Теперь собственно сам поиск равных элементов EqualCount:=0; // Обнуляем счетчик найденных равных элементов for i:=1 to N do // Пробегаем массив меняя i и j for j:=1 to M do for i1:=1 to N do // Для каждого из значений i и j пробегаем массив еще for j1:=1 to M do // раз по i1 и j1 - получается сравним каждый элемент с каждым // (в том числе сам с собо) if (Massiv[i,j] = Massiv[i1,j1]) and // если элементы равны И not ((i = i1) and (j = j1)) then // мы НЕ сравниваем элемент сам с собой то EqualCount:=EqualCount + 1; // нашли равные элементы - увеличиваем счетчик на 1
// Теперь выводми результат if EqualCount = 0 then // Если счетчик равен 0 WriteLn('In array adsent equal elements.') // Значит говорим, что нет равных else WriteLn('In array present two or more equal elements.'); // Иначе есть два или более
// Ждем-с пока пользователь увидит результат и нажмет ENTER WriteLn('Press ENTER. . .'); ReadLn;
// P.S. Здесь использован самый простой, но не оптимальный алгоритм // P.P.S Извиняюсь за мой английский, может где и не прав.. с этим тяжко... // УДАЧИ! end.
|
|