var
a:array[1..99999]of boolean;
i,k,n,kol,kol2:integer;
begin
writeln('ВВедите кол-во чисел ');readln(n);
for i:=1 to n do
a[i]:=true;
kol:=0;
kol2:=0;
k:=2;
while k*k<=n do begin
if a[k] then begin
i:=k*k;
while i <=n do begin
a[i]:= false;
i:=i+k;
kol:=kol+1;
end;
end;
k:=k+1;
end;
for i:=1 to n do
if a[i] then begin
kol2:=kol2+1;
write(i,' ');
end;
writeln();
writeln('Кол-во шагов = ',kol);
writeln('Кол-во чисел = ',kol2);
end.
from random import randint
# Создание списка,
# его сортировка по возрастанию
# и вывод на экран
a = []
for i in range(10):
a.append(randint(1, 50))
a.sort()
print(a)
# искомое число
value = int(input())
mid = len(a) // 2
low = 0
high = len(a) - 1
while a[mid] != value and low <= high:
if value > a[mid]:
low = mid + 1
else:
high = mid - 1
mid = (low + high) // 2
if low > high:
print("Такого значения нет")
else:
if (mid == 0 and a[1] != a[0]) or (mid == len(a) - 1 and a[mid - 1] != a[mid]):
print(1)
else:
q = 0
for i in range(mid, len(a)):
if a[i] == a[mid]:
q += 1
else:
break
for i in range(mid - 1, 0, -1):
if a[i] == a[mid]:
q += 1
else:
break
print(q)
Чтобы убрать вывод массива просто на 10-й строке убери print(a), а для вывода неотсортированного массива вставь после 8-й строки.