Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Код на паскале (лазарус)

Евгений Сафронов Ученик (96), на голосовании 4 дня назад
Пункт меню "Поиск". Реализовать поиск по вариантам ниже с выводом в новый массив. Выдайте в основной программе сообщение, если не найден ответ (нет подходящих под условие записей).напишите код на паскалепж
Голосование за лучший ответ
Jurijus Zaksas Искусственный Интеллект (449930) 1 месяц назад
>Реализовать поиск по вариантам ниже
Ниже чего? Ниже пояса?
Рустам Абдрашитов Мудрец (10552) 1 месяц назад
На
 program EnhancedSearchExample; 

uses
SysUtils;

const
N = 10;

var
arr: array[1..N] of Integer;
res: array of Integer;
i, lb, ub, ch: Integer;

procedure InitArray;
begin
Randomize;
for i := 1 to N do arr[i] := Random(100);
end;

procedure PrintArray(a: array of Integer);
begin
if Length(a) = 0 then Writeln('Массив пуст.')
else for i := Low(a) to High(a) do Write(a[i], ' ');
Writeln;
end;

procedure SearchArray(l, u: Integer);
begin
SetLength(res, 0);
for i := 1 to N do
if (arr[i] >= l) and (arr[i] <= u) then
begin
SetLength(res, Length(res) + 1);
res[High(res)] := arr[i];
end;
end;

begin
InitArray;
repeat
Writeln('1. Показать массив');
Writeln('2. Поиск в диапазоне');
Writeln('3. Выйти');
Write('Выбор: ');
Readln(ch);
case ch of
1: PrintArray(arr);
2: begin
Write('Нижняя граница: '); Readln(lb);
Write('Верхняя граница: '); Readln(ub);
SearchArray(lb, ub);
if Length(res) > 0 then PrintArray(res)
else Writeln('Нет подходящих записей.');
end;
end;
until ch = 3;
end.
Похожие вопросы