KtinaЯ Вам советовал бы пройти олимпиадную школу программирования. Выучить какой-нибудь язык в наше время не трудно, мне в своё время приходилось его изучать по чужим программам, учебник было просто не купить. Изучите для начала Си (мои ученики 6-го класса довольно быстро это делают). Потом зарегистрируйтесь в каких-нибудь системах по олимпиадному программированию. Например,
http://acm.sgu.ru/,
http://acm.timus.ru/,
http://codeforces.ru/,
http://community.topcoder.com/tc. Для начала советую первые два, последние лучше посещать не раньше, чем станете программировать лучше ваших преподавателей.
Решите там для начала хотя бы 500 задач, поучаствуйте в паре десятков олимпиад, тогда сможете делать выводы: получается у Вас на самом деле или нет. Я эту школу прошёл в своё время, не жалею. Самое главное - вовремя уйти. Когда Ваш уровень станет высоким (сами поймёте), надо уходить из этого спорта как можно быстрее. Иначе он превратится в бесполезную трату времени. Лучше отдать это время тому, чтобы применять полученные навыки для решения полезных, а не спортивно-игровых задач. То есть заниматься этим можно с пользой лет до 18-20.
Ваши же рассуждения о том, что "не дано" или "не получается" следует рассматривать как чисто эмоциональные всплески на фоне общего непонимания того, что тут к чему. Если у Вас талант к математике, то программирование должно даться тоже легко. Только не путайте программирование и кодерство. Кодеры - это которые пишут код. А программисты ещё думают, что пишут и зачем. Чтобы стать программистом, нужно всё-таки поучиться решать задачи типа олимпиадных, что я посоветовал. Там нужна и математика и знание особенностей архитектуры современных персоналок.
Советы разных людей изучать тот или иной язык программирования не принимайте во внимание (и мой совет тоже). С опытом вы поймете, какой из тысяч языков позволяет решать нужные Вам задачи, а какой позволяет только баловаться, а может вообще придется разработать свой язык и компилятор к нему. Участники форума советуют из своего опыта, а у Вас будет свой. Я, вот, занимаюсь быстрыми высокопроизводительными вычислениями и кроме как на Ассемблере пишу иногда на Си/Си++, но в свое время приходилось изучать Pascal, Java и даже Basic (чтоб его), чтобы сдать какие-то глупые работы в университете.
Изучать же программирование с того, чтобы писать какие-то полезные прикладные программы, рисовать формочки, окошки, писать макросы, верстать страницы в интернете и писать для них сценарии на JS, изучать всякие заумные технологии, я крайне не рекомендую. Станете кодером. Если повезет, очень эрудированным кодером, как в анекдоте:
Цитата:
Я знаю Ruby, Pyton, PHP, Perl, Java и много других слов
Но это тоже ИМХО, основанное на большом опыте личных наблюдений за своим окружением. Хотя, надо сказать, такие кодеры
поначалу зарабатывают раз в 10-100 больше тех, кто пошёл заниматься наукой.