Репетитор IT men
13.7K subscribers
1.1K photos
23 videos
33 files
960 links
Блог с заметками преподавателя по математике, физике, информатике. Рассказываю о задачах, о способах их решения.

vk.com/itmentor
dzen.ru/itmentor
https://www.youtube.com/@it_men

Автор: @physicist_i

№ 6046073444
Download Telegram
🐍 Циклы и их прерывания в Python: алгоритм поиска в строке

Это заметка будет для начинающих, которые только знакомятся с программированием, информатикой и с языком Python, в частности. Вчера мы с учеником изучали циклы и некоторые операторы, которые дают возможность управлять циклами. В этой небольшой статье я покажу несколько примеров. При этом от совсем простых абстракций постараемся углубиться в более полезные вещи с практической точки зрения. [ Уровень сложности: ~7..8 класс ]

👨🏻‍💻 Читать заметку полностью

#python #алгоритмы #информатика #программирование #циклы

💡 Репетитор IT mentor // @mentor_it
Please open Telegram to view this post
VIEW IN TELEGRAM
👍81🔥1😢1🤩1
👩‍💻 Перевод из 10-чной системы счисления в систему счисления с основание base ∈ [2; 16]

# Перевод из десятичной в двоичную
# Пример: вход: x = 589 и base = 16
# выход: 24D
def dec_to_base(x, base):
digits = ['0','1','2','3','4','5','6',
'7','8','9','A','B','C','D','E','F']
copy = x
s = ''
while copy > 0:
rest = copy % base
copy = copy // base
s = digits[rest] + s
return s

x = 589
base = 16
print(f'{x} в {base}-чной СС: {dec_to_base(x,base)}')


👩‍💻 OUTPUT: 589 в 16-чной СС: 24D

#разбор_задач #программирование #информатика #python #code #computer_science

💡 Репетитор IT mentor // @mentor_it
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8❤‍🔥4👨‍💻21🔥1
📝 Теория чисел в школьной задаче: аналитическое решение + кодинг

Сегодня с учениками разбирали программирование и я получил такой вопрос: «Можно ли запрограммировать задачу 17-го типа из ВПР по математике?». Что ж... И мы это с вами сделаем.

🖥 Задача: Задумали трехзначное число, все цифры которого различны и вторая цифра которого чётная. Из него вычли трехзначное число, записанное теми же цифрами в обратном порядке. Получили число 792. Найдите разность наибольшего и наименьшего чисел, удовлетворяющих таким условиям.

📝 Читать полный разбор 📱

#егэ #огэ #информатика #математика #разбор_задач #python

💡 Репетитор IT mentor // @mentor_it
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥6🤔21🤩1
💸 Неочевидная математика банковской системы

В этой статье я расскажу как обычных людей вводят в заблуждение... обманывают банки. Вам всегда будет казаться, что кредит — это небольшая переплата, пока вы не сядете за черновик и не просчитаете всё самостоятельно (или не почитаете эту статью, в которой я всё посчитал за вас).

Математика и банковская система... Как они работают? Сегодня я расскажу вам удивительную историю о том, что система всегда будет работать против вас, при этом она всегда будет создавать красочную иллюзию того, чтоб призвана помогать вам. Хотя на самом деле, система вас уничтожит, как только вы потеряете внимательность.

👨🏻‍💻 Читать заметку полностью

#финансы #python #экономика #математика #бизнес #мошенничество

💡 Репетитор IT mentor // @mentor_it
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥4💯31
👨🏻‍💻 Рекурсия и задача с исполнителем из ЕГЭ по информатике

Недавно разбирали с учеником 23 задачу из ЕГЭ по информатике. Хотел бы поделиться своими мыслями и некоторыми лайфхаками решения этой задачи с моими дорогими подписчиками. Очень надеюсь, что кому-нибудь эта заметка будет полезна или хотя бы интересна. Поэтому прошу не поскупиться на обратную связь, если эта тема интересна. А пока погнали начинать, сразу с практики :)

💡 Читать статью

📝 Задача:
... Сколько существует таких программ, которые исходное число 3 преобразуют в число 12 и при этом траектория вычислений программы содержит число 10?.. #рекурсия #программирование #python #ЕГЭ

💡 Репетитор IT mentor // @mentor_it
👍8🔥42
📝 Метод Якоби: решение СЛАУ методом итерации

Для решения систем линейных алгебраических уравнений (СЛАУ) большой размерности, а также систем, имеющих разреженные матрицы, применение точных методов (например, метод Гаусса) не является целесообразным, так как...

👨🏻‍💻Читать статью полностью 📝

#программирование #математика #python #разбор_задач #численные_методы

💡 Репетитор IT men // @mentor_it
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11🔥43
👨🏻‍💻 Парсинг Excel-файлов на Python на примере задачи из ЕГЭ по информатике

Сегодня разберем с вами довольное сложное 22 задание. Здесь стоит дать пояснения. Составители ЕГЭ каждый раз выдумывают что-то новое, поэтому никогда не знаешь, что ожидать в следующий раз. Недавно на занятиях с учениками попалась задача, которая не решается обычными формулами, встроенными в Excel (во всяком случае я не знаю, как её автоматизировать средствами ТОЛЬКО Excel). И тут повезло, что таблица была небольшой, поэтому можно было решить задачу руками. Но я сразу же задумался над тем, а что если записей в ней было бы гораздо больше? Что если руками решать было бы не целесообразно, потому что это заняло бы бесконечно большое время, которого нет на экзамене? Как же тогда автоматизировать решение? Об этом мы сегодня с вами и поговорим...

💡 Читать статью полностью

Заваривайте чай, здесь нужно будет посидеть и подумать...☕️🫖

#парсинг #excel #python #ЕГЭ #программирование #информатика #анализ_данных #разбор_задач

🤔 Репетитор IT men // @mentor_it
Please open Telegram to view this post
VIEW IN TELEGRAM
6👍4🔥3😱1
Задача 15.2 из ОГЭ: Напишите программу, которая в последовательности натуральных чисел определяет минимальное число, оканчивающееся на 4. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, оканчивающееся на 4. Количество чисел не превышает 1000. Введенные числа не превышают 30 000. Программа должна вывести одно число — минимальное число, оканчивающееся на 4.

👩‍💻 Задачу можно решить и в пару строк, но здесь уже сильно снизится понимание. Покажу пример:

N = int(input("Введите количество чисел: "))
print("Ответ: ", min([ x for x in [int(input("x = ")) for x in range(N)] if x % 10 == 4 ]))


👩‍💻 Цикл for дает лучшее понимание:
N = int(input("Введите количество чисел:"))
mi = 30000
for k in range(N):
number = int(input("Текущее число: "))
if (number % 10 == 4) and (number < mi):
mi = number
print("Минимальное число, оканч-ся на 4: ", mi)


👩‍💻 Но самый оптимальный и понятный код получается с помощью цикла while, которые дает возможности тонкой настройки цикла, что иногда нужно, если наперед не задано точное количество итераций:
N = int(input("Введите количество чисел: "))
min_4 = 30000
k = 1
while k <= N:
number = int(input("Текущее число: "))
if (number % 10 == 4) and (number < min_4):
min_4 = number
k = k + 1
print("Минимальное число, оканч-ся на 4: ", min_4)


#информатика #программирование #computer_science #алгоритмы #python

💡 Репетитор IT men // @mentor_it
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🔥31🍓1👨‍💻1💘1
✍🏻 Решать аналитически или кодить 🖥

Рассмотрим 2 задачу из ЕГЭ по информатике. На мой взгляд, полезно совмещать эти варианты, чтобы быть уверенным в ответе.

▪️ В аналитическом решении нужно рассмотреть все строки, начиная с максимально заполненной. Важно держать в голове, что все строки уникальные (комбинации не повторяются, порядок имеет значение). Таким образом, мы последовательно открываем соответствия x, y, z исходным переменная_1, переменная_2, переменная_3.

▪️ При моделировании задачи и перебору подходящих решений, мы сразу получаем нужные комбинации, но чтобы понять как они расположены в таблицы, всё равно приходится осмысливать эти комбинации на черновике.

Много интересных статей на моём канале в Дзен:
📱 Репетитор IT men

#математика #информатика #егэ #разбор_задач #python #computer_science

💡 Репетитор IT men // @mentor_it
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍542🔥2🎅1🎄1💘1
📝 Разбор задачи #5 из ЕГЭ по информатике

▪️Тот случай, когда аналитически решить может быть быстрее, потому что уже следующее значение R = 78 удовлетворяет решению и даёт N = 19.

▪️Но код тоже можно написать. Понадобится функция algo(), которая будет добавлять нужный бит в конец двоичного представления. Написать можно по-разному. Приведу лишь решение, которое мне пришло первым в голову.

🖥 Код в Python:
def algo( N ):
lst = list(map(int, list(bin(N)[2:])))
digit = str(sum(lst) % 2)
return int(bin(N)[2:] + digit, 2)

for N in range(1000):
R = algo(algo(N))
if R > 77:
print(f"N = {N}")
break


А как бы вы закодили решение данной задачи?

Ещё полезные заметки: Callback в Python и О лямбда-функциях в Python и Reduce в Python и Задача с собеседования

#python #разработка #программирование #IT #алгоритмы

💡 Репетитор IT men // @mentor_it
Please open Telegram to view this post
VIEW IN TELEGRAM
👍63🔥2👨‍💻2