Ребята помогите с задачкой пожалуйста.
Используя функцию random(24), создайте двумерный массив целых чисел a11, a12, ..., аnn (положительных и отрицательных). Методом бинарного поиска отсортировать значения. Каждый элемент нечетного столбца заменить его суммой значений главной диагонали.
For i:=1 to n do
For j:=1 to n do
a[i] [j]:=random(100)-100; // допустим
Неудобно конечно.. А можно ли решить всю задачку? В сортировках очень слабо ориентируюсь.
Да нет бы проблем. Ежели уточнить задачу у препода. Ибо не знаю метода сортировки "бинарного поиска " я.
Вот нашел что-то про бинарную сортировку.. Пример
{ Бинарный поиск в упорядоченном массиве }
program poisk1;
var
a:array[1..9] of integer; { массив целых }
obrazec:integer; { образец для поиска }
sred,verh,niz:integer; { номера среднего, верхнего и нижнего}
{ эл-тов массива}
naiden:boolean;{ признак совпадения с образцом }
n:integer; { счетчик сравнений с образцом }
i:integer;
begin
{ ввод 9 целых чисел }
writeln('Бинарный поиск в массиве.');
write('Введите 9 целых в одной строке через пробел ');
writeln('и нажмите <Enter>');
for i:=1 to 9 do read(a[i]);
{ здесь числа в массив введены }
writeln('Введите образец для поиска (целое число) ');
readln(obrazec);
{ бинарный поиск }
verh:=1;
niz:=9;
naiden:=FALSE;
n:=0;
writeln(' verh niz sred');
repeat
sred:=(niz-verh) div 2+verh;
writeln(verh:5,niz:5,sred:5);
n:=n+1;
if a[sred]=obrazec then naiden:=TRUE
else begin
if obrazec<a[sred]
then niz:=sred-1
else verh:=sred+1;
end;
until (verh>niz) or naiden;
if naiden
then write('Совпадение с элементом номер ',
sred,'. Выполнено ',n,' сравнений.')
else writeln('Образец в массиве не найден.');
readln;
end.
Мое сообщение было.
Извините ребят что возможно разозлил, не обратил внимания что сам запостил. Постораюсь больше таких глупостей не писать.