хммм…. очередной холивар=))) Алмаз Алмазей и Роман Дрындик правильно сказали – сначала надо научиться составлять алгоритмы, формализировать задачу, а уж потом конкретную реализацию делать… и по сабжу – по себе понял,что лучше учить несколько языков одновременно… тогда лучше замечаются отличия между языками и впоследствии можно легче сделать правильный выбор, на каком языке реализовать конкретную задачу…. а тема уже, как обычно, скатилась в холивар… все языки хороши… если уметь ими пользоваться….
Я начинал с Basic. Хочется сказать, если у человека есть логическое мышление, то осваивать программирование дальше не составит никаких проблем. Базовый язык есть базовый язык. А лишних разговоров не надо. Берёшь в руки мануал по Java, С++, РНР, а там все те же зарезервированные выражения. Типы данных – никто ещё не отменял. Согласен, что для написания сложных программ языки высокого уровня подходят больше, чем Basic. Хотя я видел исходники клиента IRC написанные на Basic.
>Тогдашний бейсик имел мало общего с нынешним, и в нем многого не было. Насколько я знаю не было ни функций, ни вменяемых циклов. И единственным выходом из этой катавасии было постоянное использование этого самого goto.
Доводилось мне переписывать на VB прогу, деланную на Advanced Basic, выпущенный корпорацией Toshiba в далеком 1983 году. И… ну я в общем поддерживаю мнение тех людей, которые утверждают, что использование этого оператора затрудняет читабельность. Более того, возьму на себя смелость заверить, что начиная с VB первой версии можно ВСЕГДА прекрасно обойтись без goto.
Топстартеру: Бэйсик прекрасный язык для обучения программированию и понятию базовых концепций, ведь само название говорит за себя
Лично я начинал со спектрумовского бэйсика, а сейчас неплохо понимаю и некоторые другие языки высокого уровня
А Дейкстра, вероятно он был прав для своего времени,ведь с момента его высказывания прошла целая эпоха в мире развития IT-технологий.
Возможно, он и имел в виду Бэйсик, сходный с Бэйсиком фирмы Тошиба, там от 10 печатных листов я сам чуть не деградировал
Читабельность ухудшилась с repeat until? А с goto она значит улучшилась. Интересные представления о читабельности. Значит легче рыскать по программе и искать эту проклятую метку, на которую goto ссылается, чем сделать обычный цикл с постусловием. Не в одно goto превратится? А во сколько? В 10? Когда ты используешь repeat until, ты можешь быть уверен, что все работает как надо, и не важно в какой клубок goto это превратится компилятором. Имеется ввиду явное использование goto, которого как раз таки следует всячески избегать.
По сабжу. Дейкстра про ваську такое говорил, когда половина этой группы (в том числе и я) еще даже не родились. Тогдашний бейсик имел мало общего с нынешним, и в нем многого не было. Насколько я знаю не было ни функций, ни вменяемых циклов. И единственным выходом из этой катавасии было постоянное использование этого самого goto. И как следствие, формировалось порочное мышление. А сейчас бейсик – нормальный язык, с которого вполне можно начинать. Хотя, если честно, я бы лучше рекомендовал Pascal.
Ребят, раскаожу вам я историю из жизни. Было это давно. Приходим мы защищать лабу на Паскале. А нас перед этим 3 курс напугал, что если мы goto будем использовать то в жизни ее не сдадим. Мы выкрутились конечно. Вместо
PovtorVvoda:
Readln(a);
If a<>0 Then Else goto PovtorVvoda;
ниписали
Repeat
Readln(a);
Until a<>0;
Как орала препод: "Вы юзверы, а не прогеры! Ты что не понимаешь что это в машинном коде превратиться в goto да не в одно! А прога еще не читаемее стала. Надо же меру знать!"
Хотя все преподы говорили что goto если и посмели использовать то только чтобы вниз перейти. А эта училка (самая у нас главная и крутая) наверх заставила.
Ну а вообще согласен, goto использовать очень не хорошо.
А кто сказал что Бейсик плохой язык. Нормальный, на Фортран немного похож.А тем более к нему можно стандартных библиотек из нета накачать.
о, может тут ещё не забыли Бейсик
кому не шибко лень, напишите пожааааалуйста на Бейсике, есть решение на Паскале, но он для меня вообще тёмный лес =\
C4
На вход программе подаются сведения о номерах школ учащихся, участвовавших в олимпиаде. В первой строке сообщается количество учащихся N, каждая из следующих N строк имеет формат: <Фамилия> <Инициалы> <номер школы>, где <Фамилия> – строка, состоящая не более чем из 20 символов, <Инициалы> – строка, состоящая из 4-х символов (буква, точка, буква, точка), <номер школы> – не более чем двузначный номер. <Фамилия> и <Инициалы>, а также <Инициалы> и <номер школы> разделены одним пробелом. Пример входной строки:
Иванов П.С. 57
Требуется написать как можно более эффективную программу (укажите используемую версию языка программирования, например, Borland Pascal 7.0), которая будет выводить на экран информацию, из какой школы было меньше всего участников (таких школ может быть несколько). При этом необходимо вывести информацию только по школам, пославшим хотя бы одного участника.
Следует учитывать, что N>=1000.
По поводу читабельности: читать программу сложно и когда в ней много условий, но в этом случае читабельность можно контроллировать, а вот если в программе стоит куча непонятных переходов, тут не только программу читать сложно, но дажу логику исполнения понять с первого раза не легко. Для анализа такойпрограммы можно даже графы построить и анализировать их.
А что касается иерархии это тоже один из принципов ХОРОШЕЙ читабельной программы.
Медвед, читабельность программы убивает отсутствие каментов. Неужто вы легко прочитаете прогу в которой вместо одного готу стоит несклько условий? А готу обычно убивает иерархичность программы (по словам Дейкстры, кстати).
а) нельзя путать низкий и высокий уровень
б) ГОТО напроч убивает читабельность программы, особенно на современном языке высокого уровня. Когда хрен поймёшь, откуда, по какой логике и зачем прыгают – это извините полная з.
Так что Дейкстра всё правиль писал
2 Владимир Крылов, фига ты загнул)) нехеровые у тебя основы!! Я под основами подразумеваю понимание работы операторов ветвления, циклов (с предусловием, с постусловием, итерационные) простейшие математические операции, подфункции (subfunction). В бэйсике это все есть. Насколько я помню, топикстартер спросил "с чего бы начать изучение?" Видите-ли, я глубоко уверен, что изучение таких основ "с нуля" лучше начинать с бэйсика, так как в нем нет особенностей семантики языка (например, begin и end в каждом цикле и тд., а также нет оператора ";") Для понимания работы эти особенности не нужны. За месяц можно выучить основы, а затем уже переходить на с++ или паскаль, кому как.
Кто там что сказал по поводу безусловных переходов – прыжка в пропасть? А попробуйте-ка напишите модульный пакет для локальной сети на АСМ-е без jump-ов, и чтоб все вместе это фунциклировало – тогда и глянем. Может и на О-О языке переход можно заменить чем-то другим, но на низком уровне хрена толченого – банку.
Владимир fixxxer Крылов, алилуя )))
Но вот только я сейчас немного стану на защиту бейсика, дело в том, что в недавних версия VB есть много вещи о которых гокорил Владимир fixxxer Крылов, это у указатели и сслыки, и функция, и функция в функции и т.д., если проследить он начинает становится походим на Си, там много сходствнаблюдается например появился оператор return и т.д. И кроме того бейсик болезе тем, что он включен в состав многих офисных приложений например Access
2 Николай Васильев
> чего такого из основ умеет паскаль, чего нет в Бэйсике?
в сабже есть set? ссылки и указатели? функциональное программирование? записи? функция в функции? виртуальные функции? создание своих модулей? я просто не знаю что из этого есть вбэйсике, но наверно не всё.
> А дейкстра ламер…не умел пользоваться гото
ну уж конешно ламер. скажи исчо, что ниасилил он Великий язык Бейсег и вместо этого придумал АЛГОЛ (который НАМНОГО более структурированный и продуманный).
> когда прогер говорит, что никогда не используйте какой-либо оператор, это значит что он просто не умеет его использовать
поверь, дейкстра ЗНАЛ как используется оператор, и именно из-за этого отговаривал им пользоватся. гото не нужен ибо, неправильное его использование вызывает кривость всей программы. без него обойтись можно ВСЕГДА. во фри бейсике гото убрали за ненадобностью.
зы. если ты кодишь и не слышал кто такой Дейкстра то уровень твоей образованности виден налицо
А никто не говорит что GOTO незаменм. Практически во всех книгах, которые я читал, про этот оператор написано всего один абзац. Про него можно писать всего одну строку. Смысл в том, что этот "плохой" оператор никак невозможно убрать из языка, и что все остальные операторы перехода все равно приводятся компилятором к форме "готу". Даже в Ada он есть.
>Владимир Крылов, чего такого из основ умеет паскаль, чего нет в Бэйсике?
Если четсно даже зло берёт когда на Дейкстру плохо говорят. Он много сделал для комп. индустрии, науки, дискретной математике в частности попробуйте ВЫ превзойти его или во всяком случае хотя бы догнать его. Возникает вопрос кто ты такой, Николай Васильев, чтобы его осуждать?
Он выдающаяся личность, а не ламер, если бы не его идеи мало лик как бы история закрутилась. И умел он готу использовать просто это нерационально, знал бы структуру машинных команд понял бы.
Вот про goto не надо гнать. Операторы безусловного перехода – это реально прыжок в пропасть они остались со старых языков где они нужны были, это отголоски процедурно-ориентированного и машинно-ориентированного программирование и вообще я много сталкивался с тем что программистов, которые испльзует goto просто не уважают. И дело не в том что его никто не умеет использовать дело в том, что он реально затрудняет читабельность кода и переносимость программы. Я в свое время когда Си начинал учить я читал учебник "Язык программирования Си" Керниган и Ричи, так вот там про этот оператор было сказано всего 1 обзац – в языке Си есть оператор goto и все. Математиками доказано, что любой оператор безусловного перхода можно эквивалентно заменить более рациональными операторами или действиями. ИМХО люди, которые говорят что готу лучше не использовать вовсе не ламеры, а как раз наоборот.
И не надо гнать на дейкстру, этот человек слишком много сделал и слишком много умел, чтобы на него гнали люди, которые не достигли и не факт что достигнут его уровня и высот.
В защиту goto скажу что бывают случае, когда этот оператор даже дает выиграш в нескольких машинных тактах, но происходит привязывание к исполняемой платформе и возникают проблемы переносимости. К тому же чтобы его применять нужно досконально знать используемую платформу а их не одна и не две. Так что случаи когда этот оператор полезен скорее редкость, чем правило.
И еще ИМХО хоть и говорят что иногда он нужен, ВСЕГДА можно обойтись без него, конечно конструкция может быть громоздкой, но она существует. А вот читабильность снижается правда.
Владимир Крылов, чего такого из основ умеет паскаль, чего нет в Бэйсике?
А дейкстра ламер. Не умел пользоваться goto. И вообще, когда прогер говорит, что никогда не используйте какой-либо оператор, это значит что он просто не умеет его использовать. ( ине надо мне говорить этих басен, что безусловный переход это шаг к пропасти и нечитаемости программ!! Иногда он нужен)
Николай Васильев не стали бы позориться. Дейкстра знаменит в первую очередь алгоритмом имени себя. алгоритм Дейкстры должен знать и уметь реализовывать любой грамотный кодер. Этот человек оказал огромное влияние на программирование и развитие комп. индустрии. Писал на разных языках, в основном на псевдо, также занимался разработкой АЛГОЛа.
Конечно, язык – дело не первой важности, но в том то и дело, что из-за примитивизма бэйсика как языка возникает примитивизм мышления. для основ в принципе можно учить паскаль, так как это довольно удобный и строгий язык. НО он имхо уже мертвый. а си и си++ развиваются. большинство прг написано на С/С++. к тому же, С++ легок в изучении, как бы там не говорили. в последнее время популярен Питон. тоже хороший язык для начала.
имхо, лучше сразу отговорить человека писать на унылом языке.
"Студентов, ранее изучавших Бейсик, практически невозможно обучить хорошему программированию. Как потенциальные программисты они подверглись необратимой умственной деградации."
xD))))) Это всё про меня…)) Не могу перейти на С… … … Сижу на FreeBASIC-е..
Вопросо о языках – это ИМХО самое последнее. Самая главная задача для программиста, я имею в виду настоящего программиста – это научится четко формализовать поставленную задачу и найти оптимальный способ ее решения. А написания и отладка программы – это уже дело техники, оно тоже требует знания некоторых тонкостей, но куда проще писать программу, когда уже есть готовый алгоритм. Ну а вообще лично я считаю что если вообще раньше с языками дела не имел, то лучше прощупать старыеязыки типа бейсика, паскаля, потом чистого Си ну а дальше когда есть навыки можно переходить уже на более мощные языки и компиллеры – С++, C#, java.
Я например в школе учил паскаль и все время им занимался, а в универе нам с первого курса дали Си и все пугали типа Си для вас сейчас напряжен слишком будет, он только для опытных, но со временем мы поняли что все-таки Си – это тру – очень гибкий язык, со своими конечно прибабахами, но тем не менее очень мощный. Но для начинающих я бы советовал попробывать чистый Си, а не С++
Напиши "Hello, world" ! А потом калькулятор! А потом инженерный калькулятор! А потом еще чего-нибудь! Так одно за одним, будешь решатьвозникающие проблемы по книжкам – и научишься! Только не лезь сразу за помощью на форумы и прочие аналогичные ресурсы, пробуй разобраться самостоятельно, иначе привыкнешь и разучишься думать самостоятельно. Да, еще не советую тупо переписывать готовые программы, лучше попробовать разобрать их, закрыть книжку и написать самой.
Кто такой Дейкстра? Он, наверное, на Бейсике программировал? Для изучения основ, имхо, QBasic лучший язык. Но только(!) для основ. Серьезную программу на нем написать не получится.
так сказал Дейкстра:
"Студентов, ранее изучавших Бейсик, практически невозможно обучить хорошему программированию. Как потенциальные программисты они подверглись необратимой умственной деградации."
Поэтому не надо учить бейсик, учи какой-нибудь питон, а лучше вообще ничо не учи
"Пощупай" все операторы и функции, пойми как они работают, расставь все по полочкам и в путь пиши программы, лучше переходи на Visual со временем это вещь полезная, но лучше не сразу сначала действительно надо научиться залачу формализовывать, алгоритмизировать и интерпретировать… потом можно браться и за ООП
А тебе зачем бэйсик-то?)) Или ты имеешь ввиду Visual Basic? А начинать изучение проще с основ, операторы присваивания, несложные математические действия, операторы ввода/вывода)) А потом уже операторы ветвления, циклы, функции, подфункции, классы ) Ну и т.д.
Теоретически, достаточно компьютера и доступа к интернету. Дальше все просто: яндекс (не рекалама ) -> бэйсик.
А фактически, нужно сначала определиться, что именно и для чего требуется. Бэйсик – это семейство языков, может окажется достаточно лишь основ, а может потребуется конкретная реализация. Ну а в идеале – это помощь преподавателя хотя бы на ранних этапах: объяснения основ, определения курса изучения и подбор программного обеспечения и литературы.
22 июня 2009 в 3:04
хммм…. очередной холивар=))) Алмаз Алмазей и Роман Дрындик правильно сказали – сначала надо научиться составлять алгоритмы, формализировать задачу, а уж потом конкретную реализацию делать… и по сабжу – по себе понял,что лучше учить несколько языков одновременно… тогда лучше замечаются отличия между языками и впоследствии можно легче сделать правильный выбор, на каком языке реализовать конкретную задачу…. а тема уже, как обычно, скатилась в холивар… все языки хороши… если уметь ими пользоваться….
22 июня 2009 в 0:04
васик и есть язык высокого уровня.
22 июня 2009 в 0:03
Я начинал с Basic. Хочется сказать, если у человека есть логическое мышление, то осваивать программирование дальше не составит никаких проблем. Базовый язык есть базовый язык. А лишних разговоров не надо. Берёшь в руки мануал по Java, С++, РНР, а там все те же зарезервированные выражения. Типы данных – никто ещё не отменял. Согласен, что для написания сложных программ языки высокого уровня подходят больше, чем Basic. Хотя я видел исходники клиента IRC написанные на Basic.
21 июня 2009 в 10:03
Spectrum Basic +1 xD
20 июня 2009 в 5:01
>Тогдашний бейсик имел мало общего с нынешним, и в нем многого не было. Насколько я знаю не было ни функций, ни вменяемых циклов. И единственным выходом из этой катавасии было постоянное использование этого самого goto.
Доводилось мне переписывать на VB прогу, деланную на Advanced Basic, выпущенный корпорацией Toshiba в далеком 1983 году. И… ну я в общем поддерживаю мнение тех людей, которые утверждают, что использование этого оператора затрудняет читабельность. Более того, возьму на себя смелость заверить, что начиная с VB первой версии можно ВСЕГДА прекрасно обойтись без goto.
Топстартеру: Бэйсик прекрасный язык для обучения программированию и понятию базовых концепций, ведь само название говорит за себя
Лично я начинал со спектрумовского бэйсика, а сейчас неплохо понимаю и некоторые другие языки высокого уровня
А Дейкстра, вероятно он был прав для своего времени,ведь с момента его высказывания прошла целая эпоха в мире развития IT-технологий.
Возможно, он и имел в виду Бэйсик, сходный с Бэйсиком фирмы Тошиба, там от 10 печатных листов я сам чуть не деградировал
19 июня 2009 в 14:04
Ага, +1
19 июня 2009 в 14:03
Олег СтаRый++ Савинов, шаришь, чувак!
19 июня 2009 в 13:05
Читабельность ухудшилась с repeat until? А с goto она значит улучшилась. Интересные представления о читабельности. Значит легче рыскать по программе и искать эту проклятую метку, на которую goto ссылается, чем сделать обычный цикл с постусловием. Не в одно goto превратится? А во сколько? В 10? Когда ты используешь repeat until, ты можешь быть уверен, что все работает как надо, и не важно в какой клубок goto это превратится компилятором. Имеется ввиду явное использование goto, которого как раз таки следует всячески избегать.
По сабжу. Дейкстра про ваську такое говорил, когда половина этой группы (в том числе и я) еще даже не родились. Тогдашний бейсик имел мало общего с нынешним, и в нем многого не было. Насколько я знаю не было ни функций, ни вменяемых циклов. И единственным выходом из этой катавасии было постоянное использование этого самого goto. И как следствие, формировалось порочное мышление. А сейчас бейсик – нормальный язык, с которого вполне можно начинать. Хотя, если честно, я бы лучше рекомендовал Pascal.
18 июня 2009 в 8:01
Ребят, раскаожу вам я историю из жизни. Было это давно. Приходим мы защищать лабу на Паскале. А нас перед этим 3 курс напугал, что если мы goto будем использовать то в жизни ее не сдадим. Мы выкрутились конечно. Вместо
PovtorVvoda:
Readln(a);
If a<>0 Then Else goto PovtorVvoda;
ниписали
Repeat
Readln(a);
Until a<>0;
Как орала препод: "Вы юзверы, а не прогеры! Ты что не понимаешь что это в машинном коде превратиться в goto да не в одно! А прога еще не читаемее стала. Надо же меру знать!"
Хотя все преподы говорили что goto если и посмели использовать то только чтобы вниз перейти. А эта училка (самая у нас главная и крутая) наверх заставила.
Ну а вообще согласен, goto использовать очень не хорошо.
А кто сказал что Бейсик плохой язык. Нормальный, на Фортран немного похож.А тем более к нему можно стандартных библиотек из нета накачать.
18 июня 2009 в 2:04
так экзамен уже давно прошел вроде ?оО
да и разбор этой задачи есть в инете
14 июня 2009 в 16:00
о, может тут ещё не забыли Бейсик
кому не шибко лень, напишите пожааааалуйста на Бейсике, есть решение на Паскале, но он для меня вообще тёмный лес =\
C4
На вход программе подаются сведения о номерах школ учащихся, участвовавших в олимпиаде. В первой строке сообщается количество учащихся N, каждая из следующих N строк имеет формат: <Фамилия> <Инициалы> <номер школы>, где <Фамилия> – строка, состоящая не более чем из 20 символов, <Инициалы> – строка, состоящая из 4-х символов (буква, точка, буква, точка), <номер школы> – не более чем двузначный номер. <Фамилия> и <Инициалы>, а также <Инициалы> и <номер школы> разделены одним пробелом. Пример входной строки:
Иванов П.С. 57
Требуется написать как можно более эффективную программу (укажите используемую версию языка программирования, например, Borland Pascal 7.0), которая будет выводить на экран информацию, из какой школы было меньше всего участников (таких школ может быть несколько). При этом необходимо вывести информацию только по школам, пославшим хотя бы одного участника.
Следует учитывать, что N>=1000.
26 мая 2009 в 19:05
По поводу читабельности: читать программу сложно и когда в ней много условий, но в этом случае читабельность можно контроллировать, а вот если в программе стоит куча непонятных переходов, тут не только программу читать сложно, но дажу логику исполнения понять с первого раза не легко. Для анализа такойпрограммы можно даже графы построить и анализировать их.
А что касается иерархии это тоже один из принципов ХОРОШЕЙ читабельной программы.
26 мая 2009 в 12:02
Медвед, читабельность программы убивает отсутствие каментов. Неужто вы легко прочитаете прогу в которой вместо одного готу стоит несклько условий? А готу обычно убивает иерархичность программы (по словам Дейкстры, кстати).
26 мая 2009 в 11:00
а) нельзя путать низкий и высокий уровень
б) ГОТО напроч убивает читабельность программы, особенно на современном языке высокого уровня. Когда хрен поймёшь, откуда, по какой логике и зачем прыгают – это извините полная з.
Так что Дейкстра всё правиль писал
26 мая 2009 в 9:02
2 Владимир Крылов, фига ты загнул)) нехеровые у тебя основы!! Я под основами подразумеваю понимание работы операторов ветвления, циклов (с предусловием, с постусловием, итерационные) простейшие математические операции, подфункции (subfunction). В бэйсике это все есть. Насколько я помню, топикстартер спросил "с чего бы начать изучение?" Видите-ли, я глубоко уверен, что изучение таких основ "с нуля" лучше начинать с бэйсика, так как в нем нет особенностей семантики языка (например, begin и end в каждом цикле и тд., а также нет оператора ";") Для понимания работы эти особенности не нужны. За месяц можно выучить основы, а затем уже переходить на с++ или паскаль, кому как.
26 мая 2009 в 9:02
Кстати, я слышал кто такой Дейкстра. В моем первом посте сильно сквозит иронией по поводу готу и его не любовью к этому оператору.
25 мая 2009 в 23:05
Уважаемый, а мы сейчас говорим о языках высокого уровня. Заметь, есть разница!
25 мая 2009 в 23:04
Кто там что сказал по поводу безусловных переходов – прыжка в пропасть? А попробуйте-ка напишите модульный пакет для локальной сети на АСМ-е без jump-ов, и чтоб все вместе это фунциклировало – тогда и глянем. Может и на О-О языке переход можно заменить чем-то другим, но на низком уровне хрена толченого – банку.
25 мая 2009 в 22:05
Владимир fixxxer Крылов, алилуя )))
Но вот только я сейчас немного стану на защиту бейсика, дело в том, что в недавних версия VB есть много вещи о которых гокорил Владимир fixxxer Крылов, это у указатели и сслыки, и функция, и функция в функции и т.д., если проследить он начинает становится походим на Си, там много сходствнаблюдается например появился оператор return и т.д. И кроме того бейсик болезе тем, что он включен в состав многих офисных приложений например Access
25 мая 2009 в 22:03
начни с изучения Паскаля. Используй для этого свободно-распростроняемый компилятор Free Pascal
25 мая 2009 в 22:00
2 Николай Васильев
> чего такого из основ умеет паскаль, чего нет в Бэйсике?
в сабже есть set? ссылки и указатели? функциональное программирование? записи? функция в функции? виртуальные функции? создание своих модулей? я просто не знаю что из этого есть вбэйсике, но наверно не всё.
> А дейкстра ламер…не умел пользоваться гото
ну уж конешно ламер. скажи исчо, что ниасилил он Великий язык Бейсег и вместо этого придумал АЛГОЛ (который НАМНОГО более структурированный и продуманный).
> когда прогер говорит, что никогда не используйте какой-либо оператор, это значит что он просто не умеет его использовать
поверь, дейкстра ЗНАЛ как используется оператор, и именно из-за этого отговаривал им пользоватся. гото не нужен ибо, неправильное его использование вызывает кривость всей программы. без него обойтись можно ВСЕГДА. во фри бейсике гото убрали за ненадобностью.
зы. если ты кодишь и не слышал кто такой Дейкстра то уровень твоей образованности виден налицо
25 мая 2009 в 21:01
А это есть такой синтаксис, ты правильно написал .067 это 0.067
25 мая 2009 в 21:01
Большое спасибо, Роман, очень помог.
25 мая 2009 в 21:01
Всегда пожалуйста )))
25 мая 2009 в 21:00
Спасибо, а что насчет .067?
25 мая 2009 в 20:04
I = (j – a * tt * LOG(tt) – (b / 2) * tt ^ 2 – (c / 2 / tt) + o * tt)
25 мая 2009 в 20:04
Да, в данном случае tt^2 – это значит tt возводится в квадрат
25 мая 2009 в 20:03
Помогите пож:
Перевожу программу с Бэйсика на Паскаль, первый язык знаю плохо.
.067=0.067?Что значит ^?
Заранее спс.
25 мая 2009 в 20:03
На сколько я помню это оператор возведения в степень. Но лучше кинь кусок кода побольше, там где ^ фигурирует
25 мая 2009 в 18:00
А никто не говорит что GOTO незаменм. Практически во всех книгах, которые я читал, про этот оператор написано всего один абзац. Про него можно писать всего одну строку. Смысл в том, что этот "плохой" оператор никак невозможно убрать из языка, и что все остальные операторы перехода все равно приводятся компилятором к форме "готу". Даже в Ada он есть.
25 мая 2009 в 18:00
GOTO классная функция, всегда жалел что в языках высокого уровня его нет.
25 мая 2009 в 17:05
Знаю много людей, начавших с Бейсика, и ставших нормальными программистами C++/Java.
25 мая 2009 в 17:05
Поддерживаю
25 мая 2009 в 17:04
>Владимир Крылов, чего такого из основ умеет паскаль, чего нет в Бэйсике?
Если четсно даже зло берёт когда на Дейкстру плохо говорят. Он много сделал для комп. индустрии, науки, дискретной математике в частности попробуйте ВЫ превзойти его или во всяком случае хотя бы догнать его. Возникает вопрос кто ты такой, Николай Васильев, чтобы его осуждать?
Он выдающаяся личность, а не ламер, если бы не его идеи мало лик как бы история закрутилась. И умел он готу использовать просто это нерационально, знал бы структуру машинных команд понял бы.
25 мая 2009 в 17:03
Вот про goto не надо гнать. Операторы безусловного перехода – это реально прыжок в пропасть они остались со старых языков где они нужны были, это отголоски процедурно-ориентированного и машинно-ориентированного программирование и вообще я много сталкивался с тем что программистов, которые испльзует goto просто не уважают. И дело не в том что его никто не умеет использовать дело в том, что он реально затрудняет читабельность кода и переносимость программы. Я в свое время когда Си начинал учить я читал учебник "Язык программирования Си" Керниган и Ричи, так вот там про этот оператор было сказано всего 1 обзац – в языке Си есть оператор goto и все. Математиками доказано, что любой оператор безусловного перхода можно эквивалентно заменить более рациональными операторами или действиями. ИМХО люди, которые говорят что готу лучше не использовать вовсе не ламеры, а как раз наоборот.
И не надо гнать на дейкстру, этот человек слишком много сделал и слишком много умел, чтобы на него гнали люди, которые не достигли и не факт что достигнут его уровня и высот.
В защиту goto скажу что бывают случае, когда этот оператор даже дает выиграш в нескольких машинных тактах, но происходит привязывание к исполняемой платформе и возникают проблемы переносимости. К тому же чтобы его применять нужно досконально знать используемую платформу а их не одна и не две. Так что случаи когда этот оператор полезен скорее редкость, чем правило.
И еще ИМХО хоть и говорят что иногда он нужен, ВСЕГДА можно обойтись без него, конечно конструкция может быть громоздкой, но она существует. А вот читабильность снижается правда.
25 мая 2009 в 17:00
Владимир Крылов, чего такого из основ умеет паскаль, чего нет в Бэйсике?
А дейкстра ламер. Не умел пользоваться goto. И вообще, когда прогер говорит, что никогда не используйте какой-либо оператор, это значит что он просто не умеет его использовать. ( ине надо мне говорить этих басен, что безусловный переход это шаг к пропасти и нечитаемости программ!! Иногда он нужен)
25 мая 2009 в 16:02
Николай Васильев не стали бы позориться. Дейкстра знаменит в первую очередь алгоритмом имени себя. алгоритм Дейкстры должен знать и уметь реализовывать любой грамотный кодер. Этот человек оказал огромное влияние на программирование и развитие комп. индустрии. Писал на разных языках, в основном на псевдо, также занимался разработкой АЛГОЛа.
Конечно, язык – дело не первой важности, но в том то и дело, что из-за примитивизма бэйсика как языка возникает примитивизм мышления. для основ в принципе можно учить паскаль, так как это довольно удобный и строгий язык. НО он имхо уже мертвый. а си и си++ развиваются. большинство прг написано на С/С++. к тому же, С++ легок в изучении, как бы там не говорили. в последнее время популярен Питон. тоже хороший язык для начала.
имхо, лучше сразу отговорить человека писать на унылом языке.
24 мая 2009 в 20:02
"Студентов, ранее изучавших Бейсик, практически невозможно обучить хорошему программированию. Как потенциальные программисты они подверглись необратимой умственной деградации."
xD))))) Это всё про меня…)) Не могу перейти на С… … … Сижу на FreeBASIC-е..
23 мая 2009 в 8:05
Вообще-то топикстартер говорит про языки, а конкретно — про бейсик.
22 мая 2009 в 21:03
а никто и не спорит про языки
спрашивают про методику изучения
22 мая 2009 в 17:01
Вопросо о языках – это ИМХО самое последнее. Самая главная задача для программиста, я имею в виду настоящего программиста – это научится четко формализовать поставленную задачу и найти оптимальный способ ее решения. А написания и отладка программы – это уже дело техники, оно тоже требует знания некоторых тонкостей, но куда проще писать программу, когда уже есть готовый алгоритм. Ну а вообще лично я считаю что если вообще раньше с языками дела не имел, то лучше прощупать старыеязыки типа бейсика, паскаля, потом чистого Си ну а дальше когда есть навыки можно переходить уже на более мощные языки и компиллеры – С++, C#, java.
Я например в школе учил паскаль и все время им занимался, а в универе нам с первого курса дали Си и все пугали типа Си для вас сейчас напряжен слишком будет, он только для опытных, но со временем мы поняли что все-таки Си – это тру – очень гибкий язык, со своими конечно прибабахами, но тем не менее очень мощный. Но для начинающих я бы советовал попробывать чистый Си, а не С++
22 мая 2009 в 16:05
Напиши "Hello, world" ! А потом калькулятор! А потом инженерный калькулятор! А потом еще чего-нибудь! Так одно за одним, будешь решатьвозникающие проблемы по книжкам – и научишься! Только не лезь сразу за помощью на форумы и прочие аналогичные ресурсы, пробуй разобраться самостоятельно, иначе привыкнешь и разучишься думать самостоятельно. Да, еще не советую тупо переписывать готовые программы, лучше попробовать разобрать их, закрыть книжку и написать самой.
22 мая 2009 в 15:05
TP куда лучше подходит для начала программирования.
22 мая 2009 в 15:04
Кто такой Дейкстра? Он, наверное, на Бейсике программировал? Для изучения основ, имхо, QBasic лучший язык. Но только(!) для основ. Серьезную программу на нем написать не получится.
22 мая 2009 в 14:05
Дейкстра ошибался.
22 мая 2009 в 12:02
так сказал Дейкстра:
"Студентов, ранее изучавших Бейсик, практически невозможно обучить хорошему программированию. Как потенциальные программисты они подверглись необратимой умственной деградации."
Поэтому не надо учить бейсик, учи какой-нибудь питон, а лучше вообще ничо не учи
22 мая 2009 в 11:05
"Пощупай" все операторы и функции, пойми как они работают, расставь все по полочкам и в путь пиши программы, лучше переходи на Visual со временем это вещь полезная, но лучше не сразу сначала действительно надо научиться залачу формализовывать, алгоритмизировать и интерпретировать… потом можно браться и за ООП
22 мая 2009 в 9:04
сначала была алгоритмизация, а затем уже программирование..
т.е. начать необходимо с алгоритмизации, если еще не изучала
22 мая 2009 в 9:03
Начни с написания простейшей программы (калькулятор на 4 действия в самый раз).
22 мая 2009 в 9:02
А тебе зачем бэйсик-то?)) Или ты имеешь ввиду Visual Basic? А начинать изучение проще с основ, операторы присваивания, несложные математические действия, операторы ввода/вывода)) А потом уже операторы ветвления, циклы, функции, подфункции, классы ) Ну и т.д.
22 мая 2009 в 8:05
С любого оператора, например PRINT.
22 мая 2009 в 8:05
Теоретически, достаточно компьютера и доступа к интернету. Дальше все просто: яндекс (не рекалама ) -> бэйсик.
А фактически, нужно сначала определиться, что именно и для чего требуется. Бэйсик – это семейство языков, может окажется достаточно лишь основ, а может потребуется конкретная реализация. Ну а в идеале – это помощь преподавателя хотя бы на ранних этапах: объяснения основ, определения курса изучения и подбор программного обеспечения и литературы.