💬 15.1 и 15.2 – что выбрать в ОГЭ по информатике и как их решать?
Максимум за задачи 15.1 и 15.2 можно получить 2 балла. И учащемуся требуется выполнить только одно задание. Но что же делать ученику на экзамена? На мой взгляд, нужно решать обе задачи. Ведь тогда повышается вероятность забрать 2 балла хотя бы от одной. И ещё вполне может такое быть, первое задание (которое обычно простое) окажется сложным и запутанным. И в таком случае ученику просто придется программировать...
💡 Читать заметку
#алгоритмы #разбор_задач #ОГЭ #ЕГЭ
#программирование #информатика
Максимум за задачи 15.1 и 15.2 можно получить 2 балла. И учащемуся требуется выполнить только одно задание. Но что же делать ученику на экзамена? На мой взгляд, нужно решать обе задачи. Ведь тогда повышается вероятность забрать 2 балла хотя бы от одной. И ещё вполне может такое быть, первое задание (которое обычно простое) окажется сложным и запутанным. И в таком случае ученику просто придется программировать...
💡 Читать заметку
#алгоритмы #разбор_задач #ОГЭ #ЕГЭ
#программирование #информатика
👍9❤2🔥1😁1
👨🏻💻 Задание 8 из ЕГЭ по информатике: решать аналитически или кодить?
Вчера разбирали проблемные задачи по просьбе моей ученицы. Девушка способная, внимательная и умная. Просто есть страх перед некоторыми задачами. И я её прекрасно понимаю. Потому что во время учебы в школе нам ничего не объясняли, у меня тоже был бы страх перед такими задачами. Этой короткой заметкой я хочу немного успокоить тех ребят, которые боятся даже начинать решать 8 задание по информатике.
📝 Читать заметку полностью
#информатика #программирование #ЕГЭ #разбор_задач #алгоритмы #строки
Вчера разбирали проблемные задачи по просьбе моей ученицы. Девушка способная, внимательная и умная. Просто есть страх перед некоторыми задачами. И я её прекрасно понимаю. Потому что во время учебы в школе нам ничего не объясняли, у меня тоже был бы страх перед такими задачами. Этой короткой заметкой я хочу немного успокоить тех ребят, которые боятся даже начинать решать 8 задание по информатике.
📝 Читать заметку полностью
#информатика #программирование #ЕГЭ #разбор_задач #алгоритмы #строки
👍11🔥3🤔1
👨🏻💻 Задание 8 из ЕГЭ по информатике: решать аналитически или кодить?
Вчера разбирали проблемные задачи по просьбе моей ученицы. Девушка способная, внимательная и умная. Просто есть страх перед некоторыми задачами. И я её прекрасно понимаю. Потому что во время учебы в школе нам ничего не объясняли, у меня тоже был бы страх перед такими задачами. Этой короткой заметкой я хочу немного успокоить тех ребят, которые боятся даже начинать решать 8 задание по информатике.
📝 Читать заметку полностью
#информатика #программирование #ЕГЭ #разбор_задач #алгоритмы #строки
💡 Репетитор IT mentor // @mentor_it
Вчера разбирали проблемные задачи по просьбе моей ученицы. Девушка способная, внимательная и умная. Просто есть страх перед некоторыми задачами. И я её прекрасно понимаю. Потому что во время учебы в школе нам ничего не объясняли, у меня тоже был бы страх перед такими задачами. Этой короткой заметкой я хочу немного успокоить тех ребят, которые боятся даже начинать решать 8 задание по информатике.
📝 Читать заметку полностью
#информатика #программирование #ЕГЭ #разбор_задач #алгоритмы #строки
💡 Репетитор IT mentor // @mentor_it
👍17💯2❤1🔥1
👀 Новая вариация задания #6 из ОГЭ по информатике — разбор с параметром 🅰️
Разберем 6-ое задание из ОГЭ по информатике. Новая вариант этого задания немного смущает учащихся 9-го класса из-за появления параметра, который нужно изменять и думать, что будет происходить при данном изменении.
📝 Читать заметку полностью
#информатика #программирование #ОГЭ #разбор_задач #алгоритмы #параметры
💡 Репетитор IT mentor // @mentor_it
Разберем 6-ое задание из ОГЭ по информатике. Новая вариант этого задания немного смущает учащихся 9-го класса из-за появления параметра, который нужно изменять и думать, что будет происходить при данном изменении.
📝 Читать заметку полностью
#информатика #программирование #ОГЭ #разбор_задач #алгоритмы #параметры
💡 Репетитор IT mentor // @mentor_it
👍12🔥3😱1
👨🏻💻 Как решать задачу 15.1 из ОГЭ по информатике
В этой заметке мы подробно рассмотрим как решить самую сложную задачу 15-1 из ОГЭ по информатике. Есть несколько подвох, в котором путается большинство учащихся 9-го класса.
🔍 Читать полностью
#информатика #ОГЭ #ЕГЭ #алгоритмы
💡 Репетитор IT mentor // @mentor_it
В этой заметке мы подробно рассмотрим как решить самую сложную задачу 15-1 из ОГЭ по информатике. Есть несколько подвох, в котором путается большинство учащихся 9-го класса.
🔍 Читать полностью
#информатика #ОГЭ #ЕГЭ #алгоритмы
💡 Репетитор IT mentor // @mentor_it
👍13👏2❤🔥1👨💻1
🤯 Оптимизации до одного цикла — непонятная задача по информатике
Сегодня будет что-то очень странное. Короткая, но интересная заметка, непонятное условие, школьные интриги, репетиторское расследование, расчехление экстрасенсорных навыков при попытках угадать «Что хочет препод?». Я уже не так давно разбирал задачу 15.1 из ОГЭ по информатике. Там была лестница, с которой у многих ребят возникали трудности. Но сегодня будет еще больший треш-кринж-омагад...
🔍 Читать полностью
#информатика #программирование #ОГЭ #разбор_задач #алгоритмы
💡 Репетитор IT mentor // @mentor_it
Сегодня будет что-то очень странное. Короткая, но интересная заметка, непонятное условие, школьные интриги, репетиторское расследование, расчехление экстрасенсорных навыков при попытках угадать «Что хочет препод?». Я уже не так давно разбирал задачу 15.1 из ОГЭ по информатике. Там была лестница, с которой у многих ребят возникали трудности. Но сегодня будет еще больший треш-кринж-омагад...
🔍 Читать полностью
#информатика #программирование #ОГЭ #разбор_задач #алгоритмы
💡 Репетитор IT mentor // @mentor_it
👍12❤1🔥1😍1
N = int(input("Введите количество чисел: "))
print("Ответ: ", min([ x for x in [int(input("x = ")) for x in range(N)] if x % 10 == 4 ]))
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)
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 mentor // @mentor_it
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16❤3😍2🔥1
📝 Тип 5. У исполнителя Альфа две команды. которым присвоены номера:
1. Вычти b;
2. Умножь на 5.
(b — неизвестное натуральное число).
Выполняя первую из них, Альфа уменьшает число на экране на b, а выполняя вторую, умножает это число на 5. Программа для исполнителя Альфа — это последовательность номеров команд. Известно, что программа 21121 переводит число 2 в число 17. Определите значение b.
🖥 Решение:
Всегда с учениками решали эту задачу аналитически (так вроде быстрее). Но на последнем занятии я подумал, а если алгоритм будет сложный, можно ли написать что-то универсальное? Например, программу, которую можно будет масштабировать до любого количества инструкций любой сложности... И вот пришла такая идея:
#информатика #программирование #computer_science #алгоритмы #python
💡 Репетитор IT mentor // @mentor_it
1. Вычти b;
2. Умножь на 5.
(b — неизвестное натуральное число).
Выполняя первую из них, Альфа уменьшает число на экране на b, а выполняя вторую, умножает это число на 5. Программа для исполнителя Альфа — это последовательность номеров команд. Известно, что программа 21121 переводит число 2 в число 17. Определите значение b.
Всегда с учениками решали эту задачу аналитически (так вроде быстрее). Но на последнем занятии я подумал, а если алгоритм будет сложный, можно ли написать что-то универсальное? Например, программу, которую можно будет масштабировать до любого количества инструкций любой сложности... И вот пришла такая идея:
def f1(x, b): return x - b
def f2(x): return 5*x
def solution(N, program):
list_digits = list(program)
for b in range(1, 1000):
res = N
for char in list_digits:
if char == '1': res = f1(res, b)
if char == '2': res = f2(res)
if res == 17:
print("b = ", b)
break
N = 2
program = '21121'
solution(N, program)
#информатика #программирование #computer_science #алгоритмы #python
💡 Репетитор IT mentor // @mentor_it
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13🔥3❤🔥1😍1
Привет, ребятки! Сегодняшняя заметка будет состоять из разбор 6 задач уровня 9 класса (ОГЭ). Задачки можно решить аналитически, но мы попробуем их закодить, решить методом перебора. Все эти задачи будут полезны учащимся средней школы для тренировки навыков программирования. Реализация примеров выполнена с помощью Python.
#разборы_задач #Python #ОГЭ #информатика #алгоритмы
💡 Репетитор IT mentor // @mentor_it
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥9👍5🔥4❤1👨💻1
📝 Замечаю, что когда 9-ти-классники начинают готовиться с нуля к экзамену по информатике, то первая задача, которая их пугает — это задача типа 3. Здесь я всегда предлагаю построить ассоциации с обычной алгебраической системой, убрать все отрицания или двойные отрицания [для зрительного упрощения] и просто выписать несколько первых элементов множества значений X.
В крайнем случае — задачу можно забрутфорсить с помощью Python. #информатика #огэ #егэ #программирование #алгоритмы #разбор_задач
💡 Репетитор IT mentor // @mentor_it
В крайнем случае — задачу можно забрутфорсить с помощью Python. #информатика #огэ #егэ #программирование #алгоритмы #разбор_задач
💡 Репетитор IT mentor // @mentor_it
👍19❤2💯1
В общем, недавно в VK-беседу физиков один участник задал вопрос. Читал он книгу по дискретной математике и запутался в преобразованиях, а именно в том, как получилась 2-ая строка из 1-ой строки (см. картинку). Было подозрение на манипуляцию индексами, но не сходилось. И ведь действительно, устно так сразу можно и не понять что произошло с суммами, почему вдруг изменились индексы, расширив диапазон суммирования?!
А дело в том, что суммы можно расписать так, что изменение индекса ни на что не повлияет из-за особенности степенных коэффициентов, зависящих от n.
Это к слову о том, что иностранные учебники так же не являются идеальными, как о них многие думают. Вам в любом случае придется сидеть с черновиком, читая любую книгу по математике. Ведь то, что кажется очевидным для автора книги, может не быть очевидным для вас.
А вы сталкивались с такими «очевидными» переходами в книгах? Если помните, то расскажите в комментариях.
#разбор_задач #дискретная_математика #алгоритмы #mathematics #книги #math #математика #задачи
💡 Репетитор IT mentor // @mentor_it
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🔥5❤🔥3😍1
🟧🔺Запутанная задача [тип №6] из ЕГЭ по информатике
Пару дней назад с моим учеником наткнулись на сложную вариацию задачи №6 из ЕГЭ по информатике. Предполагаю, что у многих учащихся школ эта задача вызовет трудности, поэтому в этой заметке мы с вами максимально подробно разберем все способы решения данной проблемы. И порисуему геометрию, и покодим алгоритмы... Готовы? Тогда приятного чтения.
🟡 Читать заметку полностью
#ЕГЭ #разбор_задач #информатика #программирование #алгоритмы #математика
💡 Репетитор IT mentor // @mentor_it
Пару дней назад с моим учеником наткнулись на сложную вариацию задачи №6 из ЕГЭ по информатике. Предполагаю, что у многих учащихся школ эта задача вызовет трудности, поэтому в этой заметке мы с вами максимально подробно разберем все способы решения данной проблемы. И порисуему геометрию, и покодим алгоритмы... Готовы? Тогда приятного чтения.
🟡 Читать заметку полностью
#ЕГЭ #разбор_задач #информатика #программирование #алгоритмы #математика
💡 Репетитор IT mentor // @mentor_it
🔥7👍4❤2👨💻2
Что-то на канале давно ничего не было про кодинг. Попытаюсь исправить ситуацию. Сегодня поговорим с вами об оптимизациях цикла. Хорошо известно, что для оптимизации программы, для её ускорения, наши усилия должны быть сосредоточены на локальных областях, чтобы отдача была максимальной. Конструкции цикла в программе как раз представляют собой такие области. И вот что с ними можно сделать...
👨🏻💻 Читать статью полностью
#программирование #алгоритмы #структуры_данных #coding #разбор_задач #development
💡 Репетитор IT mentor // @mentor_it
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10🔥6❤3🤯1
reduce()
? Давайте сразу напишем такой пример:
numbers = [1, 11, 12, 13, 18, 9, 8, 6]
from functools import reduce
func = lambda acc, cur : acc + cur
total = reduce(func, numbers, 0)
print('Встроенная reduce: ',total)
def _reduce(callback, collection, init = 0):
acc = init
for k in collection:
acc = callback(acc, k)
return acc
_total = _reduce(func, numbers)
print('Моя reduce: ',_total)
Теперь объясним параметры и работу конструкции:
result = reduce( function, iterable[, initializer] )
:▫️
function
— функция, применяемая к элементам итерации. Она должна принимать два аргумента.▫️
iterable
— итерируемый объект, элементы которого вы хотите уменьшить. Это может быть список, кортеж или любой другой итерируемый объект.▫️
initializer
— (необязательно): начальное значение аккумулятора (накопителя). Оно используется в качестве первого аргумента при первом вызове функции, если оно предусмотрено.⚠️ Обработка пустых итераций: Одной из распространенных ошибок при использовании функции
reduce()
является обработка пустых итераций. Передача пустой итерации в reduce()
без инициализатора вызывает Ошибку типа поскольку нет начального значения для запуска процесса сокращения. Чтобы избежать этого, всегда указывайте инициализатор, когда итерируемый объект может быть пустым.⚙️ Производительность:
▫️ Эффективность
reduce()
по сравнению с циклами: Функция reduce()
может быть более эффективной, чем явные циклы, потому что она реализована на C, что может обеспечить преимущества в производительности. Однако это преимущество часто незначительно и зависит от сложности применяемой функции.▫️Преимущества использования встроенных функций в производительности: Встроенные функции, такие как
sum()
, min()
, и max()
высоко оптимизированы с точки зрения производительности. Они реализованы на C и могут выполнять операции быстрее, чем эквивалентный код Python с использованием reduce()
.reduce()
? Функция reduce() полезна при итеративной обработке данных, избегая явных циклов и делая код более читаемым и кратким. Некоторые распространенные варианты использования включают:▫️ Суммирование чисел в списке: Быстрое суммирование всех элементов.
▫️ Умножение элементов итеративного элемента: Вычисление произведения элементов.
▫️ Объединение строк: Объединение нескольких строк в одну.
▫️ Нахождение максимального или минимального значения: Определение самого большого или самого маленького элемента в последовательности.
#python #разработка #программирование #IT #алгоритмы
💡 Репетитор IT mentor // @mentor_it
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6👍5❤3🤯2
В этой заметке рассмотрим задачу с реального собеседования на Python-разработчика
Мы уже ознакомились с lambda-функциями и где они используются. Сейчас же исследуем вырванный из контекста реальный код и задания к нему.
🖥 Исходный код:
▪️ Что не так с кодом ? Если мы запустим в таком виде, то получим
▪️ Что код делает ? Есть некоторая функция, которая принимает в себя callback-функцию predicate и набор объектов (пустой по дефолту). Далее у нас как-то формируется список помеченных объектов, которые попадают в новый список только в том случае, если callback-функция возвращает для них
▪️ Что выведет на экран, если его исправить? Судя по тестовым параметрам, переданная lambda-функция ни на одном из элементов объекта
▪️ Функция оптимизирована? Нет. Дело в том, что она перебирает все остальные элементы (тратит память и время выполнения), когда мы можем ограничиться рассмотрением первого подходящего. Тогда код можно исправить так:
▪️ Какая сложность выполнения данной функции? В худшем случае: O(n) ; в лучшем случае : O(1).
#python #разработка #программирование #IT #алгоритмы
💡 Репетитор IT mentor // @mentor_it
Мы уже ознакомились с lambda-функциями и где они используются. Сейчас же исследуем вырванный из контекста реальный код и задания к нему.
def get_first_matching_object(predicate,objects=[]):
matching_objects = (obj for obj in objects if predicate(obj))
if matching_objects:
object = matching_objects[0]
return object
return None
print(get_first_matching_object(lambda x: x == 1, [2, 3, 4]))
▪️ Что не так с кодом ? Если мы запустим в таком виде, то получим
TypeError: 'generator' object is not subscriptable
. Это означает, что объект-генератор matching_objects
представляет собой итератор: он генерирует значения в том порядке, в котором они запрашиваются циклом for или вызовом next(matching_objects)
. Однако, дальше по коду пытаются получить доступ по индексу так, как будто это список или любой другой Sequence-тип, который позволяет получать доступ к произвольным k-м элементам через matching_objects[k]
. Если мы хотим, чтобы всё работало, нам нужно преобразовать в список list() или закрыть генератор в квадратные скобки: matching_objects = [obj for obj in objects if predicate(obj)]
▪️ Что код делает ? Есть некоторая функция, которая принимает в себя callback-функцию predicate и набор объектов (пустой по дефолту). Далее у нас как-то формируется список помеченных объектов, которые попадают в новый список только в том случае, если callback-функция возвращает для них
True
. Следующая конструкция говорит нам о том, что если полученный список matching_objects
не пустой, то мы выделяем первый входящий в него объект и возвращаем его. В противном случае возвращается None. Но последняя строчка не является обязательной. Потому что, в случае НЕсрабатывания условного оператора, у нас итак вернется None
.▪️ Что выведет на экран, если его исправить? Судя по тестовым параметрам, переданная lambda-функция ни на одном из элементов объекта
[2, 3, 4]
не вернет True. Поэтому список matching_objects
окажется пустым, в итоге нам вернется None. ▪️ Функция оптимизирована? Нет. Дело в том, что она перебирает все остальные элементы (тратит память и время выполнения), когда мы можем ограничиться рассмотрением первого подходящего. Тогда код можно исправить так:
def get_first_matching_object(predicate,objects=[]):
for obj in objects:
if predicate(obj):
return obj
return None
print(get_first_matching_object(lambda x: x == 1, [1, 2, 3, 4])) # 1
▪️ Какая сложность выполнения данной функции? В худшем случае: O(n) ; в лучшем случае : O(1).
#python #разработка #программирование #IT #алгоритмы
💡 Репетитор IT mentor // @mentor_it
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13🔥6❤4
Это заметка будет для начинающих, которые только знакомятся с программированием, информатикой и с языком Python, в частности. Вчера мы с учеником изучали циклы и некоторые операторы, которые дают возможность управлять циклами. В этой небольшой статье я покажу несколько примеров. При этом от совсем простых абстракций постараемся углубиться в более полезные вещи с практической точки зрения. [ Уровень сложности: ~7..8 класс ]
👨🏻💻 Читать заметку полностью
#python #алгоритмы #информатика #программирование #циклы
💡 Репетитор IT mentor // @mentor_it
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8❤1🔥1😢1🤩1
👨💻 Накопители (SSD или HDD) являются удобными и надежными устройствами хранения больших объемов информациию. Но информацию нужно не только аккуратно складывать по «сундукам» но и уметь быстро ее находить и эффективно использовать.
Самую большую роль в этой цели играет организация хранения информации, её структура. Одна из книг известного теоретика и автора языка Pascal Никлауса Вирта (Niklaus Virth) называется «Алгоритмы + структуры данных = программы».
Вирт справедливо считал, что эффективность программ зависит не только от используемых алгоритмов и качества их реализации, но и в равной степени от правильности выбора структуры данных, которая была бы наиболее подходящей для данной конкретной задачи. То же самое можно сказать и о способах хранения информации.
#математика #программирование #алгоритмы #computer_science #информатика
💡 Репетитор IT mentor // @mentor_it
Самую большую роль в этой цели играет организация хранения информации, её структура. Одна из книг известного теоретика и автора языка Pascal Никлауса Вирта (Niklaus Virth) называется «Алгоритмы + структуры данных = программы».
Вирт справедливо считал, что эффективность программ зависит не только от используемых алгоритмов и качества их реализации, но и в равной степени от правильности выбора структуры данных, которая была бы наиболее подходящей для данной конкретной задачи. То же самое можно сказать и о способах хранения информации.
#математика #программирование #алгоритмы #computer_science #информатика
💡 Репетитор IT mentor // @mentor_it
🔥9👍8❤2🤔1
🟧🔺Запутанная задача [тип №6] из ЕГЭ по информатике
Пару дней назад с моим учеником наткнулись на сложную вариацию задачи №6 из ЕГЭ по информатике. Предполагаю, что у многих учащихся школ эта задача вызовет трудности, поэтому в этой заметке мы с вами максимально подробно разберем все способы решения данной проблемы. И порисуему геометрию, и покодим алгоритмы... Готовы? Тогда приятного чтения.
🟡 Читать заметку полностью
#ЕГЭ #разбор_задач #информатика #программирование #алгоритмы #математика
💡 Репетитор IT mentor // @mentor_it
Пару дней назад с моим учеником наткнулись на сложную вариацию задачи №6 из ЕГЭ по информатике. Предполагаю, что у многих учащихся школ эта задача вызовет трудности, поэтому в этой заметке мы с вами максимально подробно разберем все способы решения данной проблемы. И порисуему геометрию, и покодим алгоритмы... Готовы? Тогда приятного чтения.
🟡 Читать заметку полностью
#ЕГЭ #разбор_задач #информатика #программирование #алгоритмы #математика
💡 Репетитор IT mentor // @mentor_it
👍7❤3🔥2
👀 Новая вариация задания #6 из ОГЭ по информатике — разбор с параметром 🅰️
Разберем 6-ое задание из ОГЭ по информатике. Новая вариант этого задания немного смущает учащихся 9-го класса из-за появления параметра, который нужно изменять и думать, что будет происходить при данном изменении.
📝 Читать заметку полностью
#информатика #программирование #ОГЭ #разбор_задач #алгоритмы #параметры
💡 Репетитор IT mentor // @mentor_it
Разберем 6-ое задание из ОГЭ по информатике. Новая вариант этого задания немного смущает учащихся 9-го класса из-за появления параметра, который нужно изменять и думать, что будет происходить при данном изменении.
📝 Читать заметку полностью
#информатика #программирование #ОГЭ #разбор_задач #алгоритмы #параметры
💡 Репетитор IT mentor // @mentor_it
🔥6👍3😱2❤1
Что-то на канале давно ничего не было про кодинг. Попытаюсь исправить ситуацию. Сегодня поговорим с вами об оптимизациях цикла. Хорошо известно, что для оптимизации программы, для её ускорения, наши усилия должны быть сосредоточены на локальных областях, чтобы отдача была максимальной. Конструкции цикла в программе как раз представляют собой такие области. И вот что с ними можно сделать...
👨🏻💻 Читать статью полностью
#программирование #алгоритмы #структуры_данных #coding #разбор_задач #development
💡 Репетитор IT mentor // @mentor_it
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤4👨💻2🤩1