Что выведет этот код? 🤨
Anonymous Quiz
28%
True
6%
TypeError
55%
False
3%
Другую ошибку
9%
Зачем это мне
This media is not supported in your browser
VIEW IN TELEGRAM
Автор: М. Попков
Уровень: Сложный
У исполнителя есть две команды, которым присвоены номера:
1. Прибавить 1
2. Приписать справа двоичную запись остатка от деления на 5
Сколько существует программ, которые преобразуют исходное число 1_2 в число 101000101_2 ?
def F(a, b):
if a >= b:
return a == b
return F(a+1, b) + F(int(f'{a:b}' + f'{(a % 5):b}', 2), b)
print(F(1, int('101000101', 2)))
# Ответ: 53669
def F(a, b):
Объявляется функция F с двумя параметрами a и b.
if a >= b:
Проверяется условие: если a больше или равно b, то возвращается результат сравнения a == b.
return F(a+1, b) + F(int(f'{a:b}' + f'{(a % 5):b}', 2), b)
Если a < b, функция вызывает себя рекурсивно два раза: с увеличенным на 1 значением a и с результатом вычисления значения, составленного из двоичного представления a и двоичного представления остатка от деления a на 5, преобразованных в число и переданных повторно в виде двоичной строки b.
print(F(1, int('101000101', 2)))
Вызывается функция F с параметрами 1 и целым числом, полученным из двоичной строки '101000101'. Результат выводится на экран.
Поставь лайк, если разбор оказался полезным
Тут отвечают на вопросы
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
tuple()
в Python #tpyКортежи - это упорядоченные неизменяемые коллекции элементов. В отличие от списков, кортежи создаются с помощью круглых скобок, а не квадратных. Они могут содержать элементы различных типов данных и обычно используются для группировки данных, которые не должны изменяться.
Для создания кортежа в Python используются круглые скобки, например:
my_tuple = (1, 'hello', True)
. Кортежи позволяют обращаться к элементам по индексу, подобно спискам, но они не поддерживают операции изменения элементов после создания.Также существует операция распаковки кортежей, которая позволяет присваивать значения элементам кортежа напрямую в переменные:
a, b, c = my_tuple
.Использование кортежей в Python удобно, когда требуется группировать данные, которые не должны быть изменяемыми.
Информатика ЕГЭ | itpy
Тут отвечают на вопросы
Please open Telegram to view this post
VIEW IN TELEGRAM
Дорогие друзья, я начал заниматься созданием коротких видео и мне нужна ваша помощь. Хочу задать вам интересующие меня вопросы. Не против ответить на несколько из них? ✨
Anonymous Poll
96%
4%
Какую платформу для коротких видео вы предпочитаете использовать для «учебы»?
Anonymous Poll
59%
Shorts 📱
20%
Tik-Tok 📱
8%
Reels 📱
0%
VK Клипы 📱
2%
Дзен 📱
11%
Никакую, короткие видео 💩
Anonymous Poll
40%
63%
49%
34%
3%
Последний вопрос на сегодня: Из всего потребляемого видеоконтента какой формат вам нравится больше всего? Всем спасибо за отклик 🙏
Anonymous Poll
53%
Короткие видео: 15-60 сек
51%
Полноразмерные видео: 10-15 минут
27%
Вебинары/стримы
46%
Курсы с чередованием: видео/практика
This media is not supported in your browser
VIEW IN TELEGRAM
Аннотация типов - это специальная возможность в Python, которая позволяет указывать типы данных переменных, функций и методов в коде. Аннотации типов не влияют на выполнение программы и не обязательны для работы, но могут помочь улучшить читаемость кода, упростить отладку и сделать его более надежным.
У аннотаций следующий варианты синтаксиса:
1. имя_переменной : тип_данных
2. имя_переменной : тип_данных = значение
3. def my_function(arg: тип_данных) -> тип_возвращаемого_значения
Хотя Python является динамически типизированным языком, аннотации типов могут быть полезными при разработке больших проектов или при работе в команде. Кроме того, аннотации типов могут быть использованы сторонними инструментами для статического анализа кода и автоматической проверки типов данных.
Информатика ЕГЭ | itpy
Тут отвечают на вопросы
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
Номер 8 ЕГЭ Сумма цифр строки в Python #егэ #информатика #информатикаегэ
Базовый шаблон решения задачи:
def F(a, b):
"""
Args:
a - начало
b - конец перебора
Returns:
сумму траекторий от a до b
"""
if a > b or a == 11 or a == 12:
return 0
elif a == b:
return 1
else:
return F(a + 1, b) + F(a * 2, b)
print(F(2, 10) * F(10, 40))
Не понимаю, почему никто (из студентов) не использует такой вариант шаблона, он короче и проще:
def F(a, b):
if a >= b or a == 11 or a == 12:
return a == b
return F(a + 1, b) + F(a * 2, b)
print(F(2, 10) * F(10, 40))
if a >= b: return a==b
Если мы попали из начала в конец или превысили его, то вернем логическое тождество, которое возвращает True или False (1 и 0 для нашей суммы программ).
print(F(2, 10) * F(10, 40))
Гарантируем, что число 10 содержится в траектории
if a >= b or a == 11 or a == 12
Проверяем, что числа 11 и 12 не содержатся в траектории.
Информатика ЕГЭ | itpy
Поддержать автора: boosty
Please open Telegram to view this post
VIEW IN TELEGRAM
Пришла интересная идея! А что, если к интересным задачам добавлять «голосовые сообщения» с таймкодами при необходимости?
Через голосовое сообщение я смогу быстрее и понятнее объяснить суть задачи. Как вы думаете, будет ли это уместно?
Через голосовое сообщение я смогу быстрее и понятнее объяснить суть задачи. Как вы думаете, будет ли это уместно?
Anonymous Poll
75%
12%
14%
Please open Telegram to view this post
VIEW IN TELEGRAM
Как правильно разбить столбец зависимых процессов для корректоного составления таблицы.
Информатика ЕГЭ | itpy
Тут отвечают на вопросы
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
Простое решение 23 номера ЕГЭ по информатике #егэ #информатика #информатикаегэ
This media is not supported in your browser
VIEW IN TELEGRAM
Автор: (Е.Джобс)
Уровень: Средний
Сколько пар символов в строке являются симметричными? Симметричной парой называют такие два символа, которые расположены на одинаковом удалении от концов строки.
s = open('24.txt').readline()
cnt = 0
for i in range(len(s) // 2):
if s[i] == s[-1-i]:
print(s[i], s[-1-i])
cnt += 1
print(cnt)
# Ответ: 19100
s = open('24.txt').readline()
Чтение строки из файла "24.txt" и помещение этой строки в переменную s.
cnt = 0
Инициализация переменной cnt для подсчета количества пар символов, которые совпадают в строке.
for i in range(len(s) // 2):
Цикл for, который проходит по половине длины строки s. Это делается для сравнения символов симметрично относительно центра строки.
if s[i] == s[-1-i]:
Проверка условия: если символ на позиции i равен символу на позиции -1-i (то есть симметрично расположенные символы равны).
print(s[i], s[-1-i])
Вывод на экран пары символов, которые совпадают симметрично.
cnt += 1
Увеличение счетчика cnt на 1 при каждом совпадении пары символов.
print(cnt)
Вывод общего количества пар совпадающих символов в строке.
В голосовом оставлю мини-комментарий к коду решения этой программы
Информатика ЕГЭ | itpy
Тут отвечают на вопросы
Please open Telegram to view this post
VIEW IN TELEGRAM
Ссылка на вариант: Шастин вариант
Так же оставлю тут ссылку на полный разбор от автора: ссылка на YouTube
Особенно хочется отметить номера:
🚩 - забавное условие с "поменять местами элементы"🚩 - ситуация с фигурами может запутать🚩 - лайтовый, но просто кайфовый прототип🚩 - чётность всех соседних различна🚩 🚩 - интересное условие с пропущенным числом в маске🚩 🚩 - интересная задача с p-ой системой счисления🚩 🚩 - проверить сумму цифр строки у элементов тройки🚩 🚩 - классная задача с угловыми клетками🚩 🚩 - хардовый уровень на подумать
Информатика ЕГЭ | itpy
Тут отвечают на вопросы
Please open Telegram to view this post
VIEW IN TELEGRAM