5 задача
for n in range(10,100):
a=bin(n)[2:]
if a.count('1')%2==0:
a=a+'0'
a=a[2:]
a='1'+a
else:
a=a+'1'
a=a[2:]
a='11'+a
r=int(a,2)
if r>49:
print(n,';',r)
Используем в Excel
Формулы-Инженерные-(двоич.в дес, дес.в двоичные)
Текстовые формулы – ЛЕВСИМВ, ПРАВСИМВ, ПСТР
ПСТР (выбирает нужное количество символов с заданной позиции)
ПСТР(ячейка, номер символа, сколько символов)
СЦЕПИТЬ (соединяет текст из ячеек)
6 задача
turtle – библиотека графического вывода. Черепаха ползает по экрану и рисует. Управляется при помощи программы
from turtle import *
k=10#длина шага
# рисуем оси координат
goto(0,0)# встать в центр (0,0)
forward(50*k)
forward(-100*k)
forward(50*k)
left(90)
forward(50*k)
forward(-100*k)
#up()#поднять хвостик
goto(-800,-800)
fd(100*k)
rt(90)
fd(100*k)
rt(30)
down()#опуститить хвостик
for i in range(10):
fd(25*k)
rt(90)
up()
# рисуем точки
for x in range(5, 20):
for y in range(-16, 25):
goto(x*k,y*k)
dot(4,'red')#рисует круглую точку с диметром 4
exitonclick()
Сделаем оси. Чтоб лучше было видно рисунок.
Но можно делать вообще не думая
Шаг № 1 Поймем, что за фигура, подрегулируем количество ходов чтобы фигура был замкнутой
from turtle import *
fd(500)
fd(-1000)
fd(500)
lt(90)
fd(500)
fd(-1000)
fd(500)
up()
fd(100)
rt(90)
fd(100)
rt(30)
down()
for i in range(4):
fd(25)
rt(90)
exitonclick()
а теперь с чистой совестью считаем точки
from turtle import *
color ('black', 'red')
speed(100)# для ускорения
m=100
up()
fd(100*m)
rt(90)
fd(100*m)
rt(30)
down()
#Для закрашивания фигуры в модуле
#turtle используется команда begin_fill()
begin_fill()
for i in range(4):
fd(25*m)
rt(90)
end_fill()
# это стандартный блок просто следим чтоб множество точек покрывало фигуру
canvas=getcanvas()
cnt=0
for y in range (2*m,200*m,m):
for x in range (2*m,200*m,m):
item=canvas.find_overlapping(x,y,x,y)#создаем список пересечения прямоугольника из точек и фигуры
if len(item)==1 and item[0]==5:
cnt=cnt+1
print(cnt)
#done()
exit()
7 задача
8 задача
9 задача
МАКС МИН МЕДИАНА СРЕДНЕЕ (чтобы отсортировать три числа в строку), (статистические функции), Логические, Остаток
как отсортировать строку по возрастанию/убыванию
10 задача
11 задача
12 задача
В Python сумму цифр числа можно вычислить с помощью функции sum, сначала потребуется преобразовать число в последовательность чисел, для этого число преобразуется в строку (функцией str) и каждый символ этой строки преобразуется в число (функцией map с параметром функции преобразования int) sum(map(int,str(n)))
a=[]
for k in range (5, 100):
for n in range (5, 100):
s=k*'2'+n*'5'
while '25' in s or '355' in s or '555' in s:
if '25' in s:
s=s.replace('25','5',1)
if '355' in s:
s=s.replace('355','52',1)
if '555' in s:
s=s.replace('555','3',1)
if s.count('2')>0:
if s.count('3')>0:
if s.count('5')>0:
if s.count('2')% 2==0:
a.append (k+n)
print(min(a))
13 задача
14 задача
15 задание
16 задача
17 задача
МАКС МИН МЕДИАНА СРЕДНЕЕ (чтобы отсортировать три числа в строку), (статистические функции), Логические, Остаток
18 задача
19 задача
22 задача
23 задача
def f(x,y): if x==y:
return 1
if x>y or x==23:
return 0
if x<y:
return f(x+1, y) + f(x*2, y)
print(f(3, 12)*f(12, 27))
24 задача
25 задача
Или так
Дополнительные базовые алгоритмы
26 задача
27 задача
f = open('C://3/27_A_3.txt')
n = int(f.readline())
a = [int(x) for x in f]
k = 0
pair = 0
for i in range(n):
if a[i] % 10**7 == 0:
k += 1
a[i] = 1
if a[i] % 2 != 0 and a[i] % 5 != 0:
a[i] = 1
s = []
for i in range(n):
if a[i] != 1:
s.append([f2(a[i]),f5(a[i])])
for i in range(len(s)- 1):
for t in range(i,len(s)):
if s[i][0]+s[t][0] == 7:
if s[i][1]+s[t][1] == 7:
pair += 1
print(pair)