Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Как начинающему программисту развить абстрактно-логическое мышление?

Владислав Гурамов Ученик (51), закрыт 3 года назад
Здравствуйте. Я отучился на программиста. Знаю несколько языков, но у меня одна очень большая проблема: я не умею решать задачи. На собеседованиях валюсь именно тогда, когда просят решить задачу на логику и/или алгоритмы. Я их вообще не умею решать: не знаю с чего начать и чем закончить, да и вообще что там нужно делать. Сколько себя помню, я всегда был крайне плох и беспомощен в точных науках. Правда, преподаватель в ВУЗе сумел пробудить некоторый интерес к математике и я научился решать уравнения, неравенства, немного понял тригонометрию, получалось решать задания с пределами, производными, первообразными, а также совсем немного с логарифмами и интегралами.

Вопрос: можно ли исправить мой мозг? Как его научить решать задачи? На собеседованиях программисту почти всегда дают задачи на логику и алгоритмы, а я смотрю на них, как идиот и в голову не приходит вообще никаких идей для решения, не могу ничего "родить"... Не знаю, играет ли существенной роли возраст, но мне 25 лет. Встречал мнения о том, что уже поздно и лучше искать другую профессию. Но я пока не сдаюсь)
Лучший ответ
Гаруспик Артемий Бурах Гений (66477) 3 года назад
на самом деле проверить очень просто. сделай программу навроде тотал командера например - просто файловый менеджер двухоконный с основными возможностями, создавать удалять папки файлы, переименовывать, копировать, переносить - если осилишь - значит сможешь быть программистом.
АндрейВысший разум (466204) 3 года назад
А ты сам пробовал сделать "программу навроде тотал командера"? Я вот для УК-НЦ много лет назад сделал: даже в очень простом варианте эта задача совсем не для новичков.
АлександрГуру (3379) 3 года назад
Вот ты сейчас читаешь мой ответ, представь что захотел в туалет. Можешь описать алгоритм твоих действий? Повернулся на кресле, встал, прошел n шагов до выхода из комнаты, поверернулся в сторону wc.. и т. д. если сможешь это с алгоритмами у тебя все норм)
Остальные ответы
Андрей Высший разум (466204) 3 года назад
"Принцесса или тигр" - сборник занимательных задач по матлогике для школьников.

"Алгоритмы и структуры данных" (лучше последнее издание) - учебник программирования для начинающих. Как раз изучение основ алгоритмов.
Владислав ГурамовУченик (51) 3 года назад
Большое Вам спасибо!!!
Молот Шотландцев Высший разум (301470) 3 года назад
В программированнии логика в основном следующая: если задача сложная то для начала смотрим можно ли ее разбить на более мелкие подзадачи. Разбиваем, решаем все подзадачи по отдельности, склеиваем из них общее решение
Аркадий Саакян Мастер (1680) 3 года назад
Развить программное мышление не сложно. Берите любые популярные алгоритмы: поиск числа в массиве, сортировка пузырьком, бинарный поиск, сортировка вставками, быстрая сортировка (самая быстрая для больших массивов); начните их поочерёдно изучать: от простого к сложному.

Из книг рекомендую «Грокаем алгоритмы».

После всего вам незаметно будет просто решать задачи разной сложности.

P.S. Для того чтобы решать сложнейшие задачи, нужны отличные знания математики. Вам не обязательно их знать, как решать. Для собеседования и того вполне хватит.
АндрейВысший разум (466204) 3 года назад
"Грокаем алгоритмы" - научпоп, а не учебник. Там нет серьёзного сравнения разных алгоритмов решения одной задачи.
ОракулОракул (62257) 3 года назад
Аркадий, когда вы успели такой жизненный опыт набрать в ваши года?)
Непрограммист, как когда. третий месяц яву учит на ютубе
Александр Гуру (3379) 3 года назад
Ответил случайно в коммент, цетирую ). Вот ты сейчас читаешь мой ответ, представь что захотел в туалет. Можешь описать алгоритм твоих действий? Повернулся на кресле, встал, прошел n шагов до выхода из комнаты, поверернулся в сторону wc.. и т. д. если сможешь это с алгоритмами у тебя все норм)
Александр Просветленный (21199) 3 года назад
Что самое интересное)), как раз алгоритмические задачи и развивают мышление. Еще наверное математика, шахматы и т. д. Ну и опыт. А вообще, хочу сказать, что умение мыслить абстракцию кода и моделей, а также уметь проецировать это на задачи реального мира это либо есть, либо этого нет.
Похожие вопросы