Информатика | Илья Андрианов | itpy 🧑‍💻
1.05K subscribers
263 photos
20 videos
19 files
629 links
По рекламе: @ilandroxxy

Шпаргалки: clck.ru/3FwqWt
📚 Наши курсы: clck.ru/3FwqYb

Разборы: clck.ru/3Fwqay
💬 Чатик: clck.ru/3FwqZa

📺 YouTube: clck.ru/3FwqbX

🙋‍♂️ Я автор: @ilandroxxy
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
🚩🚩 Разбор номера 5895 #kege по информатике #ЕГЭ14
Автор задачи: (А. Игнатюк)
Уровень: Сложный

🚩 Условие задачи:
Дано арифметическое выражение 5xyC_16 + 8xx7_y. Определите, сколько различных значений может принимать выражение при всех возможных x и y.


🚩 Теоретическая справка:
Обратите внимание, что y является как переменной в 16-ой системе счисления, так и системой счисления в правом числе. Таким образом наш диапазон для y будет начинаться с 9 (так как в правом числе есть 8ка) и заканчиваться 16 (не включая).


👩‍💻 Код решения:
ALPHABET = sorted('0123456789QWERTYUIOPASDFGHJKLZXCVBNM')
my_set = set()
for y in range(9, 16):
for x in ALPHABET[:y]:
A = int(f'5{x}{ALPHABET[y]}C', 16)
B = int(f'8{x}{x}7', y)
my_set.add(A+B)
print(len(my_set))

# Ответ: 84


👩‍💻 Комментарии к коду:

1⃣ ALPHABET = sorted('0123456789QWERTYUIOPASDFGHJKLZXCVBNM')
Создается отсортированный список ALPHABET, содержащий цифры от 0 до 9 и буквы английского алфавита в верхнем регистре.


2⃣ my_set = set()
Создается пустое множество my_set, в которое будут добавляться уникальные результаты.


3⃣ for y in range(9, 16):
Запускается внешний цикл for, перебирающий значения от 9 до 15 (не включительно) и присваивающий их переменной y.


4⃣ for x in ALPHABET[:y]:
Запускается вложенный цикл for, перебирающий элементы из списка ALPHABET до y-го индекса (не включительно) и присваивающий их переменной x.


5⃣ A = int(f'5{x}{ALPHABET[y]}C', 16)
Создается переменная A, в которую записывается число, представленное строкой с основанием 16, составленное из символов '5', x, ALPHABET[y] и 'C'.


6⃣ B = int(f'8{x}{x}7', y)
Создается переменная B, в которую записывается число, представленное строкой с основанием y, составленное из символов '8', x, x и '7'.


7⃣ my_set.add(A+B)
Сумма чисел A и B добавляется в множество my_set.


8⃣ print(len(my_set))
Выводится длина множества my_set, которая представляет количество уникальных результатов.


#⃣ Полный список разборов в одном месте

Информатика ЕГЭ | чатик itpy 🧑‍💻
Тут отвечают на вопросы
Please open Telegram to view this post
VIEW IN TELEGRAM
1054
Ребят, если проводить вебинар в воскресенье, то давайте определимся со временем 🫰

(промежутки указаны по Москве*) (веб бесплатный по 14 номерам) (скорее всего будет доступен в записи)
Anonymous Poll
38%
12:00
41%
14:00
31%
16:00
44%
18:00
💻 Из-за коленного стула не хватат высоты ножки монитора.. поэтому буду сегодня устанавливать кронштейн!

Делитесь фотографией вашего рабочего места, мне было бы интересно увидеть ваш сетап!

Возможно даже сделаю небольшой обзор (кружочек) своего рабочего места 🤔
Please open Telegram to view this post
VIEW IN TELEGRAM
🤩13765
Пока я занимаюсь кронштейном предлагаю вам заняться этой задачкой 😅
Что выведет этот код?
Anonymous Poll
19%
Произойдет ошибка
42%
True
25%
False
14%
[-5, 1, 2, 3, 5, 6, 7]
13
Делюсь своим рабочим сетапом (да, игровой зоны у меня пока нет, не могу найти на это время 😅)

Если соберется 30+ реакций, может быть, мне даже не будет лень снять небольшой «обзор» по технике..

Или, возможно, кого-то заинтересует, какие программы я использую для ведения канала?

Что сначала подготовить?
⭐️ - Обзор рабочего места
❤️‍🔥 - Обзор программ
Please open Telegram to view this post
VIEW IN TELEGRAM
2515👍42
Честно-честно, последний опрос на сегодня!

Вопрос: Что для вас интереснее - следить за говорящим лицом (персонажем) или потреблять контент конкретного бренда/школы без участия лица? Примеры: Персонаж/Лицо - Иван Викторович Школа/Бренд - Школа Пифагора
Anonymous Poll
60%
За личностью/персонажем следить интереснее. Общаться/держать контакт и поддерживать 🫰
40%
Мы пришли обучаться и отвлекаться на что-то кроме учебы сейчас - неактуально 🫡
This media is not supported in your browser
VIEW IN TELEGRAM
👩‍💻 Мини-шпаргалка по переводу в 2-, 8- и 16-ую системы счисления на Python из десятичной #tpy

🚩 Функция bin() используется для преобразования целых чисел в их двоичное представление. Она возвращает строку, начинающуюся с префикса '0b'.
num = 42
binary_num = bin(num)
print(binary_num)
# Вывод: 0b101010


🚩 Функция oct() используется для преобразования целых чисел в их восьмеричное представление. Она возвращает строку, начинающуюся с префикса '0o'.
num = 42
octal_num = oct(num)
print(octal_num)
# Вывод: 0o52


🚩 Функция hex() используется для преобразования целых чисел в их шестнадцатеричное представление. Она возвращает строку, начинающуюся с префикса '0x'.
num = 42
hex_num = hex(num)
print(hex_num)
# Вывод: 0x2a


Оцените полезность поста:
⭐️ - Полезный пост, надо делать еще
❤️‍🔥 - Я знал про существование bin()
😿 - Слишком легко для меня, скучно

Информатика ЕГЭ | itpy 👨‍💻
Тут отвечают на вопросы
Please open Telegram to view this post
VIEW IN TELEGRAM
116🤩554
Live stream scheduled for
Кто-нибудь знает как отправлять фотографии на канал без блока «Комментарии»? Даже временное отключение группы (чатика) не помогает.. 🤔
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
🚩🚩 Разбор номера 4937 #kege по информатике #ЕГЭ14
Уровень: Средний

🚩 Условие задачи:
Определите наибольшее значение x, при котором значение выражения 3x75_80 + 14x0_80 кратно 17. Для найденного значения x вычислите частное от деления выражения на 17.


🚩 Теоретическая справка:
Так как наша функция int(n, s) не работает с такими большими системами счисления, то придется написать свою.


👩‍💻 Код решения:
def my_int(num: list, base: int):
r = 0
num.reverse()
for i in range(0, len(num)):
r += num[i] * base ** i
return r

R = []
for x in range(0, 80):
A = my_int([3, x, 7, 5], 80) + my_int([1, 4, x, 0], 80)
if A % 17 == 0:
R.append(A // 17)
print(max(R))

# Ответ: 146405


👩‍💻 Комментарии к коду:

1⃣ def my_int(M: list, n: int):
Параметры: M (список чисел) и n (основание системы счисления).


2⃣ r = 0
Создается переменная r, которая будет содержать итоговое значение.


3⃣ M.reverse()
Инвертируется список M для удобного вычисления числа.


4⃣ for i in range(0, len(M)):
Запускается цикл for, перебирающий индексы элементов списка M.


5⃣ r += M[i] * n ** i
К итоговому значению r прибавляется произведение элемента списка M[i] на степень основания n в степени i.


6⃣ return r
Функция возвращает значение r.


7⃣ R = []
Создается пустой список R, куда будут добавляться результаты.


8⃣ for x in range(0, 80):
Запускается цикл for, перебирающий значения от 0 до 79 и присваивающий их переменной x.


0⃣ A = my_int([3, x, 7, 5], 80) + my_int([1, 4, x, 0], 80)
Вычисляется значение A, равное сумме результатов функции my_int для списков с основанием 80.


1⃣0⃣ if A % 17 == 0:
Проверяется, делится ли число A на 17.


1⃣1⃣ R.append(A // 17)
Если число A делится на 17, результат целочисленного деления A на 17 добавляется в список R.


1⃣2⃣ print(max(R))
Выводится наибольший элемент из списка R.


Понравился пост? Поддержи реакцией:
❤‍🔥 - Обычный скучный лайк
- Весит как 10 обычных лайков
😼 - Кандидат на самый лучший пост недели

#⃣ Полный список разборов в одном месте

Информатика ЕГЭ | чатик itpy 🧑‍💻
Тут отвечают на вопросы
Please open Telegram to view this post
VIEW IN TELEGRAM
954👍2
Информатика | Илья Андрианов | itpy 🧑‍💻
🚩🚩 Разбор номера 4937 #kege по информатике #ЕГЭ14 Уровень: Средний 🚩 Условие задачи: Определите наибольшее значение x, при котором значение выражения 3x75_80 + 14x0_80 кратно 17. Для найденного значения x вычислите частное от деления выражения на 17. 🚩
Кстати вот еще один вариантик написания функции перевода из base системы счисления в 10-ную:

def my_int(num, base):
return sum(x*base**i for i, x in enumerate(num[::-1]))

R = []
for x in range(0, 80):
A = my_int([3, x, 7, 5], 80) + my_int([1, 4, x, 0], 80)
if A % 17 == 0:
R.append(A // 17)
print(max(R))

# Ответ: 146405


Про enumerate писал здесь.

Информатика ЕГЭ | itpy 👨‍💻
Тут отвечают на вопросы
Please open Telegram to view this post
VIEW IN TELEGRAM
1087
This media is not supported in your browser
VIEW IN TELEGRAM
👩‍💻 Использование f-строк в Python #tpy

f-строки в Python - это удобный и мощный инструмент для форматирования вывода данных.

Дадим небольшой обзор возможностей f-строк, которые помогут вам в различных сценариях использования:

🚩 Преобразование чисел в другие системы счисления:
Обычно для этого использовали функции bin(), oct() и hex(). С f-строками это можно сделать гораздо проще:
num = 10
print(f'{num:b}') # Вывод: '1010'
print(f'{num:o}') # Вывод: '12'
print(f'{num:X}') # Вывод: 'A'


🚩 Указание ведущих нулей:
Можно указать количество символов, до которого нужно дописать ведущие нули:
num1 = 10
num2 = -10
x = 5
print(f'{num1:08b}') # Вывод: '00001010'
print(f'{num2:08}') # Вывод: '-0000010'
print(f'{10:0{x}}') # Вывод: '00010'


Понравился пост? Поддержи реакцией:
❤️‍🔥 - Обычный скучный лайк
⭐️ - Весит как 10 обычных лайков
😼 - Кандидат на самый лучший пост недели

Информатика ЕГЭ | itpy 👨‍💻
Тут отвечают на вопросы
Please open Telegram to view this post
VIEW IN TELEGRAM
1165👍22
Что покажет этот код? 🤔
Anonymous Quiz
57%
True
43%
False
Добавим метод .zfill() 🤔
Anonymous Quiz
87%
True
13%
False