def prime(n): for i in range(2, (n // 2) + 1): if n % i == 0: return False else: return True
def prime_closest_to(n): for i in count(n): if prime(i): x = i dx = x - n break for j in count(n - 1, 1): if prime(j): y = j dy = n - y break ret = x if dx < dy else y return ret
n = int(input('n = ')) print('Ближайшее простое число =', prime_closest_to(n))
Var n,i: integer; priz: boolean; begin write('n = '); readln(n); repeat priz:=true; for i:=2 to round(sqrt(n)) do if n mod i=0 then begin priz:=false; break; end; if priz then write(n) else inc(n); until priz; end.
from itertools import count
def prime(n):
for i in range(2, (n // 2) + 1):
if n % i == 0:
return False
else:
return True
def prime_closest_to(n):
for i in count(n):
if prime(i):
x = i
dx = x - n
break
for j in count(n - 1, 1):
if prime(j):
y = j
dy = n - y
break
ret = x if dx < dy else y
return ret
n = int(input('n = '))
print('Ближайшее простое число =', prime_closest_to(n))
priz: boolean;
begin
write('n = '); readln(n);
repeat
priz:=true;
for i:=2 to round(sqrt(n)) do
if n mod i=0 then
begin
priz:=false;
break;
end;
if priz then write(n)
else inc(n);
until priz;
end.
n = 121
127