Программа поиска элемента в произвольном массиве: const n=10; var a:array[1..n+1] of integer; p,i:integer; begin Randomize; writeln('Исходный массив:'); for i:=1 to n do begin a[i]:=random(21); write(a[i]:4); end; writeln; write('p = '); readln(p); a[n+1]:=p; i:=1; while a[i]<>p do i:=i+1; if i<=n then writeln('Искомый элемент найден, его номер = ',i) else writeln('Искомый элемент не найден'); end.
Пример 1: Исходный массив: 7 17 16 13 0 1 19 20 12 5 p = 13 Искомый элемент найден, его номер = 4
Пример 2: Исходный массив: 20 4 5 12 14 10 11 16 18 20 p = 15 Искомый элемент не найден
Восьмеричная: двоичное число разбиваем на триады с конца и переводим в десятичную 1000110010010 - 2 110 - 6 000 - 0 001 - 1 ответ - 1062 в восьмеричной
16 ричная: разбиваем на тетрады 0010 - 2 0011 - 3 0010 - 2 ответ 232 в 16ричной
Десятичная:
1000110010 = 1∙2^9+0∙2^8+0∙2^7+0∙2^6+1∙2^5+1∙2^4+0∙2^3+0∙2^2+1∙2^1+0∙2^0 = 512+0+0+0+32+16+0+0+2+0 = 562 в десятичной
чтобы перевести в любую другую систему можно взять десятичное число (в данном случае 562) и перевести в нужную систему (например в троичную). (ответ в приложении)
var a,i:integer;
begin
a:=1;
for i:=1 to 5 do
begin
if a mod 2 <> 0 then write(a,' ');
a:=a+1;
end;
end.