Как научиться извлекать математическую модель для решения задач на программирование?
Проблема: недавно я решил порешать задачи из книги по C# на Python. Когда задачи были на бесплатном курсе по Питону, я, конечно, мучился, когда только начинал, но не настолько. Там были задания из разряда «Проверьте строку на...» и так далее. Иногда было непросто, например с вложенными списками, но я смог их преодолеть. В книге задачи в основном на извлечение математической модели, я решил несколько, но когда дошел до повышенного уровня... Дело было не в том, что я не знаю, как написать if или создать список, я просто не могу извлечь формулы, понять формулировки и того, что от меня требуется. Мозг начинает кипеть и путаться во всём этом. Как быть, чтобы лучше понимать условия и переносить их в код?
А зачем ты решаешь задачи, какая у тебя цель? Если изучение Питона, то замудреные формулы/матмодели тебе не нужны, тебе нужно набивать уровень владения языком. Я бы просто забил и нашел другие, более адекватные задачи.
Замудрённых формул там нет. Просто тип задач для меня новый. Это как в математике сказать: "Реши систему уравнений". Ну, решу. А если из обычной системы сделать задачу с условием, на скорость, например? Уровень сложности значительно меняется. Хотя, смотря какая задача. Когда занимался на Stepik'е, там было больше задач, где как раз-таки было "сухое условие" без лишней информации. Например, обойдите вложенные списки (матрицу) по столбцам или строкам. В новых задачах появились те самые "формулы". Насчет моей цели, я хочу вспомнить Python и начать изучать более сложные концепции программирования (рекурсия, ООП и так далее).
Математическая модель — по сути набор взаимосвязанных математических формул, описывающих реальный объект или систему. Если вы не можете понять формулу — значит у вас просто недостаточно знаний. Так что всё что вам нужно, так это развивать свои знания в области математики. Изучайте теорию и решайте реальные математические задачи. Вариантов куча — статьи, задачники, учебники математики Советской высшей школы, лекции ведущих ВУЗов на ютюбе и прочее.
Я думаю, что я еще не сильно развил у себя алгоритмическое мышление. Ведь когда говорят, что нужно проверить или создать, всё намного легче, но когда нужно доставать условия и формулы прямиком из условия задачи, уровень сложности для меня значительно поднимается. Было бы интересно, если вы поделитесь своим опытом в этом вопросе. Например, трудно ли было вам, или как вы смогли преодолеть этот этап.
От себя добавлю, что формулы в задачах довольно простые, но, как я уже сказал, держать всё в голове и переводить всё в код пока вызывает у меня затруднения.
Для себя я уже сделал вывод: нужно, прежде всего, практиковаться. Сначала буду тренироваться на задачах похожего типа, но с самыми простыми конструкциями из программирования, чтобы сконцентрировать всё внимание именно на извлечении той самой математической модели.
когда нужно доставать условия и формулы прямиком из условия задачи, уровень сложности для меня значительно поднимается. Было бы интересно, если вы поделитесь своим опытом в этом вопросе.
Это самая обычная математика. Анализируете саму задачу и расписываете алгоритм решения. Вам следует просто тренироваться решать такого рода задачи от простого к сложному. Самый простой способ описания алгоритма: нарисовать его. Берёте листок, карандаш и рисуете слева исходные данные, справа результат, а между ними постепенно рисуете схему/диаграмму алгоритма решения.
Что-то типа такого
Это, конечно, не чисто математическое решение, а описание работы алгоритма и всего лишь пример.
обычно, когда не понимаешь тему урока, причина в том что предыдущие уроки были пропущены или недопоняты.
если ты не хочешь показывать здесь примеры, что тебе не понятно, поговори с топовыми ИИ, они сейчас идеально подходят как учитель для простых задач.
p.s. рекомендую составлять вопрос максимально полным, даже если ты думаешь что какая то информация должна быть очевидной, лучше добавь.
начни диалог с чего то типа - помоги мне научиться решать такие задачи, текст задачи (выделив в кавычки ``` ... ``` каждая на новой строке), я не понимаю почему ....
Формально, в процессе создания правильного вопроса ты начнешь понимать как это работает.
p.p.s. даже топовые нейронки тупят, это стало реже заметно на простых задачах но все еще происходит, держи это в памяти