PDA

Просмотр полной версии : Pascal


SlipX
17.06.2009, 20:39
Пожалуйста помогите нубу...

Подскажите какие нить книжки по паскалю (если будут с уклоном математики +++)
Хочу и логику математическую развить заодно и паскаль изучить.

8tomat8
17.06.2009, 22:40
Есть замечательная серия "Для Чайников" в них все лучше всего описывается))) ИМХО
Фирма которая их переводит и продает в Укр и Рос - "Вильямс"
Если ты из киева то скажи что надо я по дешовке брак могу найти)))

Lynx
18.06.2009, 01:41
Вот нормальный учебник
http://pascal.proweb.kz/index.php?page=2
Полезно ещё Кнута почитать.
А вообще всё, что нужно здесь http://www.lmgtfy.com/?q=pascal

ПолуГость2
18.06.2009, 03:15
Не связывайся с паскакалем. Ява, .net, AS3.

mks
18.06.2009, 03:32
Не связывайся с паскакалем. Ява, .net, AS3.
а че не связывайся-то, программируй хоть на qbasic, я считаю в любом случаи потом будет проще понять другие языки....

SlipX
18.06.2009, 03:47
ПолуГость2
Поясни пожалуйста то что напостил?

Я хочу выучить и логику математическую чтобы решать поставленные мне задачи (трудности) в игре, в жизни, везде

И pascal т.к. допустим есть задача:
(в ла2 чтобы там открыл в вархаусе взял весч пошел заточил положил) - ПРИМЕР

Ну и вообще считаю в жизни все пригодится )

ПолуГость2
18.06.2009, 03:52
Нет.
Басик не пойдет хотя бы из-за приверженности к goto
Паскаль устарел.
Если изучать, то почему бы не изучать на актуальном материале?
С математикой сложней. Если нужна серьезная вычислительная, то надо учить спецязыки мейнфреймов. Но этот вариант я не рассматриваю как фантастический. Если математика нужна для расчетов при обучении, умнее освоить маткад. Если же хочется научиться использованию математики для визуалки, лучше Flash не придумать.

Добавлено через 4 минуты
ПолуГость2
Поясни пожалуйста то что напостил?
Я хочу выучить и логику математическую чтобы решать поставленные мне задачи (трудности) в игре, в жизни, везде
И pascal т.к. допустим есть задача:
(в ла2 чтобы там открыл в вархаусе взял весч пошел заточил положил) - ПРИМЕР
Ну и вообще считаю в жизни все пригодится )
Тот факт, что для линейки годится паскаль есть уникальный случай, обусловленный только наличием l2ph и больше ничем. В жизни язык программирования тебе НЕ понадобится, если конечно ты не намерен связать с программированием судьбу. В гражданской же жизни программирование не нужно, для всего на свете есть утилита. Я лично такого примера придумать не могу. Это я 10 лет назад писал прогу на Сях, чтобы она мне текст разнесла по строкам, раздвинула пробелами и выровняла по ширине. Сегодня, при наличии ворда это онанизм. Логику и математику проще всего учить на платформе как можно более простой, но без врожденных увечий (это я опять о бейсике и goto). Опять же Flash. AS1/2 - язык простой, несложный, современный, ООПшный, позволяет работать и со строгим синтаксисом (типизация, интерфейсы, ООП, шаблоны - AS2/AS3) и с легким (AS1/AS2), плюс к тому совместим с JavaScript и легко позволяет визуализировать что угодно.

SlipX
18.06.2009, 04:03
ПолуГость2
Гм... гм... Да пожалуй пока все карты не откроешь правды не увидишь...
Вообщет я с детсва полюбил высокие технологии (компы короче)... Начал увлекатся всем что да как... а математикой не сильно занимался так как не было времени (друзья, игры, девченки...) Теперь же хочу постигнуть сам смысл программирования, сами основы (можн так сказать Asembler) понять как работает интернет, компьютер, вирусы и все такое а логика математическая нужна для создания чего то нового... :-) Вот! Учусь щас в институте так у нас 5 курс только там будет С++ я к тому времени умру без знаний )

ПолуГость2
18.06.2009, 04:08
Ну вот Си и изучи. Или все-таки Flash. Об ассемблере даже не заикайся. :) Вирусы ты писать не будешь никогда, сразу учти. ;)
И все-таки я бы рекомендовал AS. Результат будет виден гораздо быстрее. Хотя для алгоритмики лучше потрахаться с сями на чисто математических задачах. Массивчики поинвертировать, посортировать, то-се...

SlipX
18.06.2009, 04:15
ПолуГость2
Вот смотри поставлю вопрос другим ребром

Смотри я нуб в программировании полный мне нужна математическая логика (пусть даже это и трудно) я не ищу легких путей. Такс но кроме математической логики мне нужнен еще для старта в программировании язык программирования
P.S. Мне посоветовали задачи с олимпиад по информатике (они все на паскале)
P.P.S. Так с чего начать? (лучше конкретно линки)
Вирусы ты писать не будешь никогда, сразу учти.
Почму? :confused:

ПолуГость2
18.06.2009, 05:29
Задачи с олимпиад - это кто-то пошутил. :) Хотя было бы здорово. _Начинать_ надо с простого.
Паскаль я не советую. За последние 10 лет ни одному работодателю, с которым мне пришлось общаться, паскаль не был нужен. У меня в резюме паскаль записан в конце строки вместе с basic, rexx и прочей экзотикой, чтоб строка казалась длиннее.
Что касается вирусов, то раньше вирусописательство было высшим пилотажем, до уровня вирусов надо было расти года три, если конечно тебя не родители кормят. Сегодняшние вирусы в большинстве - убогие громоздкие программы чуть ли не на визуал бейсике, которые пишутся только для гнилого обкрадывания на бабло. Лучше заделайся пушером, быстрее и надежнее разбогатеешь (шутка). Впрочем даже для современных вирусов нужно расти пару лет, и здорово разбираться в особенностях работы ОС. Если это тебя до сих пор не торкнуло, скорее всего уже никогда не торкнет. И вообще, оставь эту стезю китайзам и индузам, русский человек по натуре создатель, а не разрушитель. Когда вирусы были произведением искусства, ими было интересно заниматься; эти времена прошли.
Далее, логика в любых алгоритмических языках одинаковая. Вообще для программера новый язык программирования - задача на две ночи. Познакомиться с операторами, конструкциями, работой с данными, scope и все. Поэтому что си, что паскаль, что php, что ActionScript - примерно все едино. Кроме бейсика, практику переходов на метки goto надо выкорчевывать в младенчестве. (так сделано, кстати, в скрипте волкера, если тебе это что-то скажет) Поэтому какой язык ты выберешь, в принципе, не важно. Ну разве что си более растиражирован как по синтаксису, так и по построению. Но в среднеуровневых языках (си, паскаль) очень много геморроев с неподготовленностью среды для человеческой работы. Только когда я писал скрипт для l2ph я понял, как их ненавижу, и как я привык к нормальной среде работы. Чтобы на паскале сделать массив переменной длины надо ВЫЕ..ТЬ себя во все места с этими ублюдскими списками, указателями и прочей хренью. Я больше времени воюю со средой, чем собственно решаю задачу. Разумеется, прога на паскале будет работать быстрее, чем на пхп, благодаря прямой работе с памятью и компиляции, но на современных компах это не существенно совершенно. (если ты конечно не занимаешься хардкором, например пишешь сервер для ММОРПГ ;)) Оно было полезно, когда на компе было 640 кб памяти. Сейчас все это самотрах. В принципе, хорошо знать алгоритмы, это полезно, но лично я не делал сортировку пурырьком много лет - потому что не нужно. В любом языке программирования высокого уровня, который используется для практики - AS, php, perl, JS - все это уже есть. И массивы-хэши, и сортировки-инверсии, и строковые выражения (вот уж проклятие для программера - поиск сложной подстроки) и прочие изыски, а поворот матрицы вдоль главной диагонали - это встречается раз в два года. Так что значительная часть "алгоритмов" - это знание, котрое никогда не лишнее (так можно сказать про любое знание), но которое все меньше и меньше востребовано. Тут хорошая параллель с письмом - люди все меньше пишут от руки, и мы с вами еще увидим, как это умение отомрет. Знание алгоритмов нужно программерам - профессионалам, человеку же, программирующему от случая к случаю - баннер там, на JS сделать подсветку на сайте - это нах не сдалось. Я когда студентам рассказываю про двоичную систему счисления, сдвиги да сумматоры (это проходит как тема, не имеющая прямого отношения к делу, просто при рассмотрении списка орператоров, будет некрасиво пропустить сдвиги, вот и приходится), они смотрят на меня широкими глазами, типа бодже мой, неужели это занудство нужно для работы??? Нет, забейте.
Итак. Лично я бы выбрал что-нить не шибко сложное (т.е. не сразу строгое ООП - ява, AS3), и не шибко древнее (pascal, c, basic), а что-то среднего уровня, чаще востребованное, то что будет актуально на практике для человека, не планирующего связать с программированием свою жизнь. Это Javascript (ajax), ActionScript 1/2(Adobe Flash) или php, если намерен программировать для веба. ActionScript мне кажется наилучшим выбором, т.к. Flash это
- современно (сейчас такой момент, что надо выбирать, на кого ставить - на гугл (ajax), на эдоби (flash) или на MS (.net, silverlight)) Одна из этих платформ вскоре будет править миром. Я бы поставил на гугл с эдобом, эта связка мне кажется наиболее жизнеспособной, кроме того actionscript это
- несложно
- совместимо с Javascript
- результат быстро и наглядно виден (flash - мультимедиа компилятор по определению)
- навалом литературы
- обустроеный api (массивы, хэши, развитое ООП - последнее НЕ ОБЯЗАТЕЛЬНО, как в яве, а ЕСЛИ ХОЧЕШЬ, что по нынешним временам большая редкость)

Ну и если все-таки хочешь глубоких знаний, близких к академической школе, тогда бери си. Я предпочитаю его паскалю из-за широко растиражированного синтаксиса, отсутствия ИДИОТСКОЙ НИЧЕМ НЕ ОБОСНОВАННОЙ болтливости, а возможности там те же. После си паскаль изучишь за два-три дня. Впрочем, если начнешь с паскаля, то и си потом изучишь за два-три дня :) (Наверное)

А вообще, я когда перешел от сей-паскалей к языкам действительно высокого уровня (тогда это был REXX), я обалдел от счастья. Это как десять лет учиться в темноте и занудстве монастыря, а потом вырваться на простор огромной страны с побережьем. Школьную же тригонометрию я почувствовал "печенками" только когда занялся flash-ем. Вся эта заумь наполнилась понятным, разумным и красивым смыслом.

Такой вот будет краткий совет. :)

QaK
18.06.2009, 08:55
ПолуГость2, писькой меряться заканчивай.
SlipX, выбирай из предложенных ссылок учебник, ну или погугли.

8tomat8
18.06.2009, 08:56
SlipX, Хочеш трудностей и розвить мат логику?))) НА тебе в помощ Сканави (http://blackcat.or.kz/2008/02/09/pod-redakciejj-m.-i.-skanavi-kniga.html)):D

QaK
18.06.2009, 08:58
8tomat8, кстати, Сканави - мегарульный учебник.SlipX, оч. рекомендую.

8tomat8
18.06.2009, 09:09
QaK, знаю) перерешал сам)))))

SlipX
18.06.2009, 12:16
Блин народ большое спасибо что откликнулись на мою проблему!!!!


8tomat8
Спс за учебник четкая тема


ПолуГость2
Большое тебе спасибо думаю начну все таки с древности просто чтобы понять как вся эта субкультура развивалась, и из чего это все состоит... Но думаю благодаря тебе основными языками станут: AS, С++

Советую всем новичкам в скриптинге заглянуть сюда

alexteam
18.06.2009, 13:01
Если суть только в том чтобы научиться думать как машина и лепить алгоритм выполнения програмы на ходу, научится предусматривать последствия действий пользователей и остальных "внешних" факторов неблагоприятных для софты.. что является имхо основой.. то имхо похрен на каком языке начинать. главное лишь одно - возможность реализации задумки этим языком.

8tomat8
18.06.2009, 17:50
alexteam, красиво)

Lynx
18.06.2009, 22:38
ПолуГость2, Хватит тут обсирать ассемблер=) то, что елементарно сделать на нём, на другом языке просто невозможно. Многие его считают мертвым языком, и в результате имеем кучу шароварных программ, защищённых аспротектом, снятие которого заключяется в том, чтобы загрузить ольку и запустить скрипт.

Или ещё пример: Была задача по инфе
Обменять значения двух переменных, не заводя третей. вот моё решение

push eax
push ebx
pop eax
pop ebx

Насчёт вирусов, да, под дос их писать намного проще, нежели сейчас. Но это не значит, что невозможно.

NLObP
19.06.2009, 01:52
Обменять значения двух переменных, не заводя третей. вот моё решение

Стек это, как переменная. А задачу суммированием и вычитанием решается.

SlipX
19.06.2009, 01:54
Ээээ... ребят тише тише я вас не просил рассказывать про какой то стек ))) Хватит оффтопить ) Я бы очень был рад линкам для начинающего нуба программиста.

P.S. Книгу по задачам уже скачал понравилась щас праздники мои пройдут сяду за нее, кто еще че посоветует?

Lynx
19.06.2009, 04:25
ладно, тогда так)
xchg eax,ebx

про сложение вычитание знаю, но так лучше по этому:

var x,y:integer;
begin
x:=30000;
y:=5000;//ДАНО
//меняю
x:=x+y;
y:=x-y;
x:=x-y;

Оно работать не будет, т.к в встроке x:=x+y будет переполнение.

QaK
19.06.2009, 09:14
Так, б**, попсовики .. (с) Масяня
Заканчиваем спорить, что лучше. Лучше всего то, что для тебя лучше.Следующие посты про то, что рулит машинный код/азм/ц два креста/паскаль/дельфя/пхп и т.д. буду злостно удалять. Хорошь офтопить.

alexteam
19.06.2009, 12:35
калькулятор рулит....

ПолуГость2
19.06.2009, 22:50
QaK
Я еще и не доставал. ;)

Lynx
Т.е. ты таки в натуре считаешь, что нубу надо начинать с асма? ;)
Лучше сначала пусть двухлетний курс на галерах отработает.

xkor
24.06.2009, 03:59
все срочно переходим на перфокарты!
пара часов вырезания дырочек в картоне и возведение в степень готово)))

8tomat8
24.06.2009, 14:02
все срочно переходим на перфокарты!
пара часов вырезания дырочек в картоне и возведение в степень готово)))
Спс поржал))) а вообще xkor прав) нафига учить с начала самое геморное и придумывать велосипед если уже он придуман! уже куча таких геморое-любцев создалии замечетельные и простые языки програмирования)
Ибо весь код равен! (с) Библия для чайников

QaK
24.06.2009, 22:00
Машинный код рулит!!! Даешь машинный код!

Lynx
25.06.2009, 01:00
Ок, перехожу на VB =)

Yegor
02.07.2009, 03:28
Изучай язык который больше тебе по душе, самое главное чтобы он был распространенный и были примеры на которых можно поучиться. Имхо лучше все таки начать с С++, многие языки (например Java) ,очень на него похожи. Хотя ничто не запрещает знать несколько языков, это даже очень может пригодиться. А вот во всякие очень специфические вещи типа "флеш" и т.д сразу лезть думаю не стоит.

Jes
02.07.2009, 17:32
мой совет
- берешь любой язык который больше понравился из тех которые видел
- берешь книжку по этому языку
- берешь пару примеров
- начинаешь разбирать как работают примеры
- пробуешь писать подобные примеры с некоторыми изменениями/ремиксами
- поймешь структуру одного языка - поймешь и все остальные - они одинаковы - отличие только в АПИ

ПС: неплохо было бы изучить какой-то отладчик (для пошагового просмотра)

Breadfan
04.07.2009, 16:31
угумс, выучить бейсик, жестко привыкнуть к его GO TO, и прыгнуть на какойнть паскаль

Yegor
04.07.2009, 16:39
Breadfan, жестко привыкнуть к goto можно только на ассемблере, там это целое искуство.

mks
04.07.2009, 16:41
угумс, выучить бейсик, жестко привыкнуть к его GO TO, и прыгнуть на какойнть паскаль
Ну у меня например именно так и получилось, и особо не затруднило отвыкать от GO TO