![]() |
|
|
![]()
|
|
| ingenerum |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 20.8.2015 Репутация: нет Всего: нет |
Здравствуйте, уважаемые форумчане.
Хочу освоить программирование. Целей пока конкретных нет , т.е. область с которой буду работать пока не выбрал , конкретный язык программирования тоже пока не выбран. Хочу начать непосредственно с азов, чтобы уловить самую суть так сказать. Слышал что начинать надо с Алгоритмов программирования. И первый вопрос какую книгу(ги) посоветуете для освоения. Погуглив наткнулся на советы о трех авторах Кормен, Кнут и и Н. Вирта Но первые два удивили математической направленностью в своих задачах . Вопрос считаете ли вы эти книги реально хорошими для освоения алгоритмов ( если да, то почему?) или может стоит начинать с более простых книжек чем книги первых двух авторов . Второй вопрос почему большая часть книг по алгоритмам завязывается на математике , ведь программированием занимаются не только с целью вычислительных задач (математических толка) , но и множества других , так почему тогда большинство советует этих авторов? Еще вопрос какие еще знания кроме алгоритмов потребуются начинающему или следующим шагом следует выбрать конкретный ЯП и уже делать на нем какие-то задачи? Слышал так же что хороший программист должен понимать как машина преобразует конкретный ЯП в машинный код то есть как она его интерпритирует и преобразует. Какую литеру на этот счет подскажите или не стоит этим на начальном этапе забивать голову? И последний вопрос , какой язык на данный момент является перспективным( и в плане широты спектра решаемых задач и в плане влияния на з/п) , что посоветуете? |
|||
|
||||
| disputant |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 210 Регистрация: 28.11.2011 Репутация: 2 Всего: 3 |
Ну видите ли, а как вы себе представляете алгоритм НЕ математической направленности? Компьютер-то оперирует с числами, даже если потом это оказывается музыка или игровой персонаж
Да, Кнут переполнен математикой, и уж точно не годится для начинающего. Я бы посоветовал Кормена - но не "Алгоритмы, построение и анализ", а "Алгоритмы, вводный курс". Существенно проще. Еще есть Левитин, "Алгоритмы. Введение в разработку и анализ". Тоже не самый сложный уровень. Но на мой взгляд, сами по себе алгоритмы мало что дадут, если вы не будете сразу же программировать. Язык... ну, я очень пристрастен, для меня лучший язык - это С++, но тут выбор за вами. Кстати, обычно программист не ограничивается одним языком, так что начинайте с чего хотите. Но не с Бейсика Кстати, если выбираете C+, то есть еще вариант "Алгоритмы - просто как 2x2" Красиковых. Это не учебник, скорее, справочник для чайника, но его плюс - в нем сразу приводятся тексты на C+. Минус - C++там не совсем для чайников... Лично я в свое время начинал с "Алгоритмов и структур данных" Вирта, но это было слишком давно, когда Кормена еще и близко не было, а Кнут имелся только 1962 года издания... Кстати, есть такая хорошая книга - скорее всего то, что вам надо: Страуструп, "Программирование. Принципы и практика с использованием С++". Это в первую очередь как раз не язык, а основы программирования. Но заодно и язык выучите. Если решитесь с C++дело иметь. Только искренний совет - не берите перевод первого издания. Там переводчик ко всем ошибкам Страуструпа добавил на порядок больше своих. Если дружите с английским (кстати, программисту без этого - никак), возьмите второе издание в оригинале. Если не дружите - то по моим сведениям, осенью выйдет второе издание на русском, и в этот раз ее таки отдали в очень хорошие руки Это сообщение отредактировал(а) disputant - 20.8.2015, 21:19 |
|||
|
||||
| Cheloveck |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1578 Регистрация: 26.7.2008 Где: Тула Репутация: нет Всего: 32 |
Первое, что надо изучить -- любой язык программирования высокого уровня. Я бы рекомендовал компилируемый и компилируемый в нативный код. Лучше всего, чтобы это был C или C++. Тут не особо важно, какую книгу ты возьмешь -- основы почти везде описаны достаточно хорошо. Я учился по этой книге, для старта -- самое то!
На первой книге я просидел месяца два, придумывая себе какие-то задачи. Дальше можно взяться за какую-то более или менее серьёзную программу и просидеть с ней ещё пару месяцев в обнимку с гуглом и этим форумом. После эту программу следует заархивировать вместе с исходниками и положить туда, где ты её точно не потеряешь (очень ржачно на это потом смотреть =)). Теперь пришёл тот самый момент, когда надо понять, как работает компилятор. Для этого подойдёт любая книжёнка по ассемблеру. Я читал эту. После всего этого уже станет понятно то, что пишут в книгах по алгоритмам и зачем тебе это надо. К сожалению, C++ не является сегодня самым популярным языком среди работодателей (по крайней мере в том городе, где я живу). Наиболее используемым у нас является C# и Java. После C++ переход на них занимает пару недель, так что не особо парься на первых парах. Удачи! PS C++ -- это такой язык, который будет открывать свои тайны ещё многие годы после того, как ты посчитаешь, что знаешь о нём всё... PPS Must read для любого C++ программера http://www.ozon.ru/context/detail/id/2610625/ PPPS Must read для любого ООП программера http://www.ozon.ru/context/detail/id/2457392/ -------------------- ![]() |
|||
|
||||
| Pavia |
|
||||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 418 Регистрация: 6.12.2008 Репутация: 11 Всего: 12 |
Вам надо начать с более простых книжек.
Выучите хотя бы один язык. Остальные языки похожи. Так вот основы программирования, как правило рассматриваются в книгах по конкретному языку. Какой именно язык учить первым или второй я советовать не буду. Выбирайте сами какой вам по душе. 1. Основы программирования: арифметика и логика, простые типы, циклы, условный оператор, массив, матрицы, функции и рекурсия, составные типы: 2. Структуры данных и основные алгоритмы: списки, деревья, графы, таблицы, сортировка, поиск, вставка, обход графа; 3. Сложные алгоритмы; 4. ООП и шаблоны проектирования; 5. Качественный код; Затем второстепенные дисциплины.
Но зато математика хорошо тренирует ум. приучает перебирать варианты.
Добавлено через 1 минуту и 35 секунд Так уж сложилось что лет десять назад время в России был популярен Паскаль. Поэтому вкратце о нём. Вирт конечно хорошая книга. Но я бы взял Окулова. Пишет также если не более подробно. Или книгу Попова у него тоже хорошая книга, только подход обучения не столько на примере сколько на задаче. По Си++: Прата С.-Язык программирования С++. Лекции и упражнения-ИД Вильямс(2012) По Си: «Язык программирования Си» Брайана Кернигана и Денниса Ритчи По Паскалю: Попов В. Б. Turbo Pascal для школьников. (2-издание 1999 или 3-издание) Вирт Н. "Алгоритмы + структуры данных = программы"-Мир (1985 вариант книги паскаль) Окулов С. М.-Основы программирования - (2002) Окулов С. М.-Программирование в алгоритмах - (2002) |
||||||
|
|||||||
| bag2013 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 1 Регистрация: 2.11.2015 Репутация: нет Всего: нет |
Здравствуйте! Я новичок в системе программирования. Не могли бы Вы мне помочь решить вот эту задачу: "Записать алгоритм, с помощью псевдокода, и программу на языке Pascal". Просто за 2 недели невозможно с нуля выучить язык программирования.
|
|||
|
||||
| Cheloveck |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1578 Регистрация: 26.7.2008 Где: Тула Репутация: нет Всего: 32 |
-------------------- ![]() |
|||
|
||||
![]()
|
| Правила форума "Алгоритмы" | |
|
|
Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Алгоритмы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |