If (number < 1) Or (nmber> 3999) Then
sNumber= " "Число должно быть от 1 до 3999! " - затык в этой строке *Не известное маркер *число* Goto print
Else
While number>0
n= n+1
While num[n] <= number
sNumber= sNumber + sNum[n]
number= number - num[n]
EndWhile
EndWhile
Endif
'Печатаем результат вычислений
print:
TextWindow.WriteLine(sNumber)
Goto start
'Выход из проги
exit:
FurCode1.4: FD[Динозавр-Чёрный-Раптор]cp35asw A !C- D++++/
Но трабла именно 45,17 строки. *Не известный маркер *число**
Ну там походу кавычка не закрыта, в строке 45 (точнее, похожа на лишнюю)
В строке 17, если не ошибаюсь, пробел после = ни на что не влияет в бейсике
Ну и - ка работает реаднамбер и инициализирует number? Самому вводить? Переменная number - это число, или какойто объект со свойствами?
North писал: Переменная number - это число, или какойто объект со свойствами?
Так-то прога должна арабские цифры в римские переводить.
А вообще я затеялся с бейсиком что-бы вникнуть в суть программерства. Но финальная цель всё-таки : Скриптинг. Игровой.
Хех!
Стоило перевести *Число должно быть от 1 до 3999!*
В ранг комментария и прога заработала.
Интересно.. Что надо сделать что-бы отображались надписи в стиле *Введите число... Нажмите (определённую кнопку) что-бы выйти...* и прочие...
FurCode1.4: FD[Динозавр-Чёрный-Раптор]cp35asw A !C- D++++/
Raptor-Black,
там были банальные опечатки. Вообще стоит читать, что пишет компилятор и искать ошибку в том месте куда компилятор ставит курсор после двойного нажатия по ошибке. В этой версии он выдает довольно детальные опиания, а не как в кувасике - "синтакс эррор" и все, ищи где ошибся.
North писал: Переменная number - это число, или какойто объект со свойствами?
Так-то прога должна арабские цифры в римские переводить.
А вообще я затеялся с бейсиком что-бы вникнуть в суть программерства. Но финальная цель всё-таки : Скриптинг. Игровой.
Хех!
Стоило перевести *Число должно быть от 1 до 3999!*
В ранг комментария и прога заработала.
Интересно.. Что надо сделать что-бы отображались надписи в стиле *Введите число... Нажмите (определённую кнопку) что-бы выйти...* и прочие...
Там у тебя раз несколько кавычек. Строка должна быть в кавычках - а спереди - лишние.
Вообще, стоит начинать не с какого-то языка, а алгоритмов, структур данных и матана по теме. Язык и синтаксис, это последнее - куда нужно смотреть. Тот же ва хаскель - это описание этих ваших лямбд и ленивые вычисления искаропки и эти всеми любимые монады, чтоб вникнуть в которые надо проштудировать главы матана. То есть сам по себе - он для узкой специализации, для широкого круга задач подойдут и другие широко используемые инструменты. В том числе учится можно и на бейсике и той самой дельфе. А чтобы писать гоBнокод и рубить немножечько бабла, можно забить на алгоритмы и структуры данных и сразу взять пэхопэ и какую нить субд
Если по английски более-менее читаешь, стоит заглянуть на www.codecademy.com
Там несколько учебных курсов по разным ЯП, выбирай на вкус (ИМХО, попробовать стоит все).
Тот же Python - вполне рабочий язык, библиотек для него создано множество, на все случаи жизни, включая игрострой.
Small Basic тоже хорош для освоения азов. Но переучиваться потом бывает сложновато, а у Бейсика "из коробки" доступно многое из того, что в других ЯП работает за счет тех же библиотек. Зато, конечно, обратная связь хорошая.
Raptor-Black писал: Интересно.. Что надо сделать что-бы отображались надписи в стиле *Введите число... Нажмите (определённую кнопку) что-бы выйти...* и прочие...
Как-то так, в принципе:
TextWindow.Write("Введите Ваше имя:")
name = TextWindow.Read()
TextWindow.WriteLine("Здравствуй, " + name)
Опять кулики со своими болотами.
Рискую повториться, но всякой задаче свой инструмент нужен. Я тоже могу предложить к примеру Ардуино. Тоже множество библиотек, огромное сообщество и главный плюс - оно выходит за рамки компьютера.
Raptor-Black писал: Что надо сделать что-бы отображались надписи в стиле *Введите число... Нажмите (определённую кнопку) что-бы выйти...* и прочие...
Как букварь и песочница, MS Small Basic очень хорош. Но нужно заранее думать, куда идти дальше и какие возможности есть в других ЯП (какой под какие задачи "заточен").
Ардуино, кстати, ничуть не хуже других :)
[Добавлено 04.01.2014 23:23:00]:
Morflot писал: букварь и песочница
В том смысле, что быстро осваивается и дает все средства для экспериментов с алгоритмами и проектами.
...Давно я с MS SB не экспериментировал, сейчас полез вспоминать. Устаревшим назвать его сложно, ИМХО. И среда разработки комфортная, и почитать есть что.
Digger Shrew, Blackfish, таки сишарп чем-то разительно отличается от питона с батарейками, кроме как синтаксисом и что он завязан на фреймворк? Моя жена прям категорически вас поддерживает, которая днями и ночами колбасит на этом сишарпе всякие энтерпрайз решения. Сам лет 6 назад на нем работал, когда в питоне еще не было каких красивых фиговин, а счас что сам понаписывал, что другие запилили. Да и сишарп тогда был уныл. В итоге, счас ничем не отличаются - по своей сути, сишарп уже скорее инерция, на питон пока смотря как на хипстеров. Просто разные реализации. Пока на этой волне мы рубим неплохую капусту, в отличие от шарпа, потом посмотрим.
А вобщем - для обучения лучше питон, если уже смотреть туда и на ооп. На нем очень красиво выглядят всякие хитренькие алгоритмы и более понятны паттерны, и есть немножко всякой красивой фигни уже в стандартных модулях. В дотнете, к слову в последних фреймворках тоже хватает разного рода инструментария, но в целом, окинув опыт работы, они скорее его стащили с того же питона, откуда нибудь еще, немного переделали и обозвали по другому
Blackfish, моё «болото» тут непричём. Просто бейсик — ужасный язык. Надо быть мазохистом, чтоб начинать обучение с него.
Для начала обучения программированию есть LOGO, например, думаю и то много лучше чем это.
C#, Java или C++ для начала совершенно не подходят, так как это переусложнённые языки для энтерпрайзной разработки.
Из распространённых языков общего назначения более-менее подходящий для обучения был только Pascal, но он тоже до крайности устарел. Можно впрочем взять Oberon какой-нибудь — потомок паскаля от непоредственно дядюшки Вирта.
C не настолько плох, но это крайне низкоуровневый язык, к нему стоит переходить только если интересует системное программирование — и уже после изучения ассемблера (ну или параллельно), так как без представлений о машинном коде понять работу с указателями не получится.
Из языков программирования общего назначения, тех которые не специально сделаны как обучающие самый простой — Tcl, он же мультипарадигмальный и позволяет получить понятие о метапрограммировании.
Из простых языков которые неплохо подходят для обучения имеет смысл посмотреть на bc — это язык программируемого калькулятора, соответственно умеет работать только с числами, но все основные управляющие структуры есть.
Но ограничиваться только императивными языками не стоит — нужно понимать что есть и другие парадигмы, а значит следует посмотреть на функциональные языки — OCaml, J, Haskell, Pure. И на логические — например Prolog, ну и особняком тут стоит Lisp и его вариант Scheme — тоже мультипарадигмальный и с простым синтаксисом.
Wise Dragon, питон, детка. Для обучения как нельзя лучше подойдет - и современен, все есть, и от каждой парадигмы по кусочку, кросплатформенный и даже можно куда то с пользой применить. А еще код исходников модулей смотреть. Все что ты перечислил, это более узкоспециализированное, про последний абзац, и без специальных знаний смысла не имеет, кроме как учить просто синтаксис.
Ну и вообще - начинать нужно с теории
Рад был бы сам проверить, но сижу пока глубоко в Linux'е :bang: Некуда MS Small Basic установить.
PS: А сама задачка мне понравилась, да решение - тоже :)
[Добавлено 05.01.2014 04:51:31]:
Wise Dragon писал: Просто бейсик — ужасный язык. Надо быть мазохистом, чтоб начинать обучение с него.
Никому не в обиду, но Бейсик (и Small Basic тем более) создан для обучения детей, которые ещё никакого ЯП в глаза не видели. Зато дает привычку продумывать код и писать его руками. И в том он хорош для каждого начинающего программиста. Хотя Goto, конечно, режет глаз :D
Как по мне, Scratch для обучения ещё лучше, но от "рабочих" языков программирования он ещё дальше и требует хорошего учителя. Зато - упор на разработку алгоритма, что ценно.
...Многое надо попробовать, чтобы найти своё. Ту же Java потрогать, или PHP. Благо, Интернет и поддержка сообществ дают для этого такие возможности, о которых и не мечталось.
Мне Codecademy тем и нравится, что в одном месте можно понять надо/не надо про целый ряд распространенных инструментов (без ощущения раскраски для детсада типа "сложите 2 и 3").
Что изучать... Сталкивался с тем, что в некоторых вузах требуют бейсику, но тем не менее, почти все признают что это скорее дань традиции- все так делали, зачем чтото ломать. Хотя, как язык не для людей, вправляет мозги как уже сказали и заставляет не искать лёгких путей. (а то часто такое, зачем нужно знать алгоритмы сортировки,или что они вообще есть, когда есть встроенная функция)
Лично я за более менее живую традицию - паскаль и делфю. Они могут и пригодиться.
Питон- да, он красив до экстаза. Не привязан к каким то паттенам. Широкие возможности. Хотя, отсутствие скобок меня убивает, никак не мог привыкнуть.
Джава- очень привязана к ооп и разным правильным штукам. Вернее 'правильным'- каким его видят создатели. Всякие громоздкие ооп конструкции, часто не нужные.
пхп- только веб язык (Хотя на нём можно писать всё, не надо это делать). Очень лёгкий, без наворотов. Приучает к легким путям.
Хотите быть в тренде- extjs. Многие хвалят за очень приятную и лёгкую работу с кодом.
Ну на под конец стоит добавить слова одного программиста, чтол, перепробовав за свою жизнь кучу языков, переходя от ФП до ооп, пришёл к тому что всё нужно писать на С.
----
как моё имхо- Питон. Он сразу позиционируется как 'язык без костылей', хоть и постоянно пишутся)
И гляньте extjs. Всё таки синтаксис не особо сложный, хотя некоторые фичи труднопонимаемы.
Digger Shrew писал: wiki.linuxformat.ru/index.php/LXF87-88:Mono
Ну, действительно. Очень понятные уроки.
В принципе, даже можно найти гомнокурсы на русском языке, вроде специалиста. Там можно почерпнуть основы, хоть часто там говориться то, что делать не надо.
Завелась и работает. А благодаря Blackfish, мя ещё кой чего понял.
Мя учусь по
Рубанцев В. - Занимательные уроки с компьютером, или Small Basic для начинающих - 2012
FurCode1.4: FD[Динозавр-Чёрный-Раптор]cp35asw A !C- D++++/
Вставлю свои пять копеек:
Сам начинал с Бейсика. Тупо в силу того, что на тот момент был дома БК0010.01, в школе - БК0010Ш, на УПК - Корветы, первый купленный программируемый калькулятор... И все ТОЛЬКО с Бейсиком!!!
Так что - сам бог велел тогда с него начинать.
Потом на олимпиаду по программированию вывезли. И с "удивлением" узнали, что кроме нашей школы - такого старья почти нигде уже и нету! В той школе, где проводилась олимпиада, стояли IBM с другой версией Бейсика, да и то только как вариант.
Потом был Паскаль. Тут постарался отец, т.к. по работе программы у него тогда писались именно на Пасе и именно он стоял на нашей 386й машинке.
Перешёл довольно быстро и легко, хотя и плевался первое время "Что значит GOTO не использовать?!".
Правда я эту привычку убил в зародыше - у меня и до того программы использовали по большей части GOSUB - вызов подпрограмм, так что - переосвоился.
ЯваСкрипт и ПХП - освоил поскольку постольку было "трендом" на тот момент. Потом долго не возился и из-за изменений в языке многое начинало глючить между браузерами разных марок и версий и разными хостерами с разными версиями PHP. Забил - спеца не моя, но для общего развития - норм.
Си - вечная головная боль. Сказались скачки между разными языками, в которых чаще всего регистронезависимые имена. Плюс дурацкое мнение разных производителей, что язык можно корёжить в своё удовольствие.
Как итог - коды примеров зачастую слабосовместимы даже между двумя версиями VisualC!
Про заморочки с синтаксисом и объявлениями переменных, функций, модулей и т.д. - я молчу: голова болеть начинает!
Как итог: пойми, что конкретно тебе нужно и осваивай именно это! А про Васик - забудь как страшный сон: осваивать этот язык сейчас смысла никакого, т.к. от "простого языка для обучения" он ушёл уже лет двадцать назад!
ПРОСТОЙ для обучения язык - это когда языку пофиг на половину новичковых ошибок: "Забыл скобку поставить закрывающую? Ну я и отработаю тот кусок кода в цикле заодно! Нету кавычек? Ну дураку ясно, что такой переменной не объявляли и это - явный текст! Выводим на экран!" и т.д. и т.п.
От ПРОСТОГО языка ты ошибку получишь только если напортачил в коде ОЧЕНЬ качественно, к примеру написав iv вместо if или gotu вместо goto - в противном случае программа запустится всёравно, пусть и будет работать криво.
И это именно для того, чтобы ученик освоил алгоритмы и основные принципы, а не считал "Сколько скобочек я не поставил при выводе текста" и "А почему выводит фигню, когда переменная написана не большими, а маленькими буквами?!"
И вот с этой точки зрения Бейсик давно не катит: это перманентная попытка превратить язык для ОБУЧЕНИЯ в полноценный язык для работы!
Трудозатраты на его освоение давно аналогичны обучению тому-же Паскалю, при этом если Паскаль и Дельфи хоть и слабо, но востребованы, то Бейсик на практике - не нужен почти НИГДЕ!
Если говорить о «взрослом» геймдеве, то это С++, C#, Java, OpenGL, DirectX и некоторые более специфические языки и технологии. Не уверен, что новичку стоит начинать именно с них.
Я бы со своей колокольни посоветовал ActionScript. Он, конечно, тоже не сказать чтоб простой, зато изначально приспособлен для работы с графикой и анимацией. На нем сделано множество игр самых разнообразных тематик. В наличие куча библиотек, которые можно использовать и поковырять.
С другой стороны, для начала сойдет и Бэйсик. Главное, чтоб перло и постигался дзэн. А на более сложные и полезные языки ничто не мешает перейти позже.