СПО в российских школах

Команда ALT Linux рассказывает о внедрении свободного программного обеспечения в школах России
Ноябрь 12, 2010

BASIC-256 Глава 1

Методические материалы
Автор: Владимир Черный

Предлагаем вашему вниманию перевод книги по BASIC-256. Недавно в репозиториях появилась новая версия с новыми возможностями. Поддержку пакета в репозитории ALT Linux ведет Сергей Ирюпин. Он же переводчик книги. Перевод планируется печатать по главам. Это первая.

От переводчика
BASIC-256 – это версия классического языка BASIC, созданная для обучения детей основам программирования. Использует традиционные управляющие структуры, такие как gosub, for/next и if и т.п., что помогает детям легче понять, как происходит управление выполнением программы. Имеет встроенный редактор текста программ, пошаговый отладчик, специальные окна для текстового и графического вывода.

Начал разрабатываться в 2006 году как свободная кроссплатформенная альтернатива коммерческим реализациям BASIC. Долгое время развивался слабо. В ПСПО была включена версия 0.9.2 с весьма ограниченными возможностями. C 2008 года новый разработчик, Джеймс Рено (James М. Reneau), преподаватель и программист, стал активно развивать BASIC-256. В 2010 году к разработке и переводу подключился российский программист Сергей Ирюпин (lamp@), одновременно став майнтейнером пакета BASIC-256 в ALT Linux. В мае 2010 года среди пакетов ALT Linux стала доступна версия 0.9.5. Весной 2010 года Джеймс начал писать книгу — руководство по BASIC-256, которую фактически закончил к концу июля. Затем он начал активно добавлять новые возможности — работу с базами данных, портами ввода-вывода, сетевые функции, одновременно создавая соответствующие новые главы в книге.

Вашему вниманию представляется перевод книги Джеймса Рено, описывающий работу в BASIC-256 версии 0.9.6w. Именно такая версия доступна сейчас в пакетной базе ALT Linux. Она имеет некоторые отличия от текущей версии, 0.9.6.48 (после буквы z, автор перешел на цифровое обозначение релизов), бинарную версию которой можно загрузить только для Windows. В частности, версия 0.9.6w для ALT Linux снабжена оффлайновой справкой на русском языке (начиная с 0.9.6g автор сделал справку онлайновой — в окне открывается вики раздел сайта basicbook.org). В книге много примеров, которые у автора собраны на одной странице

Глава 1: Знакомство с BASIC-256 – cкажи «Привет»1.

В этой главе вы познакомитесь со средой BASIC-256, на примере операторов print и say. Вы увидите разницу между командами, которые вы отдаете компьютеру, а также разницу между текстовыми строками и числами, которые будут использованы программой. Мы также исследуем простую математику для того, чтобы показать, насколько умен ваш компьютер. Наконец, вы узнаете, что такое синтаксическая ошибка и как ее можно исправить.

Окно BASIC-256
Окно BASIC-256 разделено на 5 секций: строка меню, панель инструментов, область текста программы, окно ввода-вывода текста, окно вывода графики (см. рис. 1).

Рис 1
Рисунок 1. Экран BASIC-256
Верхнее меню
Верхнее меню содержит несколько различных раскрывающихся меню. Она включает в себя: «Файл», «Правка», «Просмотр», «Старт», «Справка». Меню «Файл» позволит вам сохранять и загружать сохраненные ранее программы, печатать и выходить из BASIC-256. Меню «Правка» позволяет вырезать, копировать, вставлять текст и изображения из программы, текстового и графического окна. Меню «Просмотр» позволит просмотреть или скрыть различные окна BASIC-256. Меню «Старт» позволит выполнять и отлаживать вашу программу. Меню «Справка» покажет окно с информацией о BASIC-256, также какую версию вы сейчас используете.
Панель инструментов
Большинство пунктов меню, которые вы будете использовать, доступны на панели инструментов.

 Новый – начать новую программу.
 Открыть – загрузить сохраненную программу.
 Сохранить – сохраняет программу на диск или USB устройство.
 Старт – выполняет текущую программу.
 Отладка – начинает построчное выполнение программы.
 Шаг – при отладке – перейти на новую строку.
 Стоп – прекращает выполнение текущую программу.
 Отмена – отменяет последнее изменение в программе.
 Повтор – возвращает последнее отмененное изменение.
 Вырезать – переносит выделенный текст в буфер обмена.
 Копировать – помещает копию выделенного текста в буфер обмена.
 Вставить – вставляет текст из буфера обмена в необходимое место.

Окно текста программы
Текст программы состоит из инструкций, которые указывают компьютеру, что и как нужно делать. Вы будете набирать текст программ, изменять и исправлять их код именно в этом окне, а также загружать сюда сохраненные ранее программы.

Окно ввода-вывода текста
Эта окно будет отображать вывод текста из ваших программ. Это могут быть и слова и числа. Если программа захочет задать вам вопрос, то вопрос (а также и то, что вы напечатаете в ответ) тоже появится здесь.
Окно вывода графики
BASIC-256 – это язык, умеющий управлять графикой (в дальнейшем вы это увидите). Картинки, формы и образы, созданные вами, будут отображаться в этом окне.
Ваша первая программа – оператор say
Давайте создадим компьютерную программу и посмотрим, поприветствует ли нас BASIC-256. В окне текста программы напечатайте следующую команду в одну строку:

say "Hello! Привет!"

Программа 1: Скажи привет

После того, как вы наберете эту команду, щелкните мышью по кнопке «Старт»  на панели инструментов. BASIC-256 поздоровался с вами через динамики компьютера?2


Новое понятие
say выражение
Оператор say используется для того, чтобы BASIC-256 прочитал выражение вслух, в компьютерные динамики.

Новое понятие
«Hello! Привет!»
BASIC-256 рассматривает буквы, цифры и знаки препинания, которые находятся внутри двойных кавычек, как единый блок. Этот блок называется строкой.

Новое понятие
 «Старт» на панели инструментов или «Старт» в меню

Вы должны сказать BASIC-256, когда вы хотите приступить к выполнению программы. Автоматически он не узнает, что вы закончили вводить код программы. Запустить программу на выполнение можно либо нажав на кнопку  «Старт» на панели инструментов, либо выбрав пункт «Старт» в выпадающем меню.

Для того, чтобы полностью удалить программу, в которой вы работаете и начать новую, мы используем кнопку «Новый» на панели инструментов. Нажатие этой кнопки вызовет появление следующего диалогового окна:
Рис. 2
Рисунок 2. BASIC-256 – окно начала новой программы

Если вы действительно хотите удалить программу, нажмите кнопку «Yes». Если вы случайно нажали «Новый» и не хотите начинать другую программу, нажмите кнопку «No».


Новое понятие
 «Новый» на панели инструментов или «Файл» → «Новый» в меню
Команда «Новый» сообщает BASIC-256 о том, что вы хотите удалить текущую программу и начать новую. Если вы не сохранили программу (Глава 2), то все изменения, сделанные в программе, не будут сохранены.

Эксперимент
Попробуйте несколько разных программ, используя оператор say. Поприветствуйте своего лучшего друга, попросите компьютер назвать ваш любимый цвет, в общем — развлекитесь.

Оператор say также может называть числа. Попробуйте следующую программу:

say 123456789

Программа 2: Назови число

После того, как вы наберете эту команду, щелкните мышью по кнопке  «Старт» на панели инструментов. Сказал ли BASIC-256 то, что вы хотели?3


Новое понятие
числа
BASIC-256 позволяет вводить числа в десятичной форме. Не используйте запятые при вводе больших чисел. Если вам нужно число меньше нуля, поставьте перед ним знак минус.
Например: 1.56, 23456, -6.45 и 5.

BASIC-256 действительно хорошо работает с числами – простая арифметика

Мозг компьютера (который называется Центральным Процессором или кратко – ЦП) работает только с числами. Все, что он делает, начиная с графики, звука и заканчивая все остальным, делается при помощи умелого обращения с числами.

Четыре основные действия: сложение, вычитание, умножение и деление приводятся в исполнение, используя операторы, показанные в Табл. 1.

Оператор Операция
+ Сложение
выражение1+выражение2
Вычитание
выражение1-выражение2
* Умножение
выражение1*выражение2
/ Деление
выражение1/выражение2

Таблица 1. Основные математические операции

Попробуйте эту программу и послушайте разговаривающий супер-калькулятор.

say 12 * (2 + 10)

Программа 3: Скажи ответ

Компьютер должен сказать вам: «144»

say 5 / 2

Программа 4: Скажи другой ответ

Сказал ли компьютер «2.5»?


Новое понятие
+ — * / ( )
Четыре основных математических оператора: сложение (+), вычитание (-), деление (/) и умножение (*) работают с числами для выполнения вычислений. Числа должны быть по обе стороны этих операторов. Вы также можете использовать круглые скобки» (» и «)» для группировки операций.

Эксперимент
Попробуйте написать несколько коротких программ, используя оператор say, а также четыре основные математические операции. Обязательно используйте все четыре операции.

Другое использование + (конкатенация)
Оператор + также соединяет строки. Эта операция называется конкатенация. Конкатенация добавляет строку к строке, как вагоны в составе поезда, чтобы сделать её длиннее.

Давайте попробуем:

say "Привет " + "Сергей."

Программа 5: Скажи «Привет, Сергей»

Компьютер должен поприветствовать Сергея.

Попробуем другую программу.

say 2 + " жды два - четыре"

Программа 6: Сказать «Дважды два — четыре»

Оператор + в последнем примере был использован для объединения, потому что второй операнд является строкой и компьютер не знает
как выполнить математическое действие со строкой (поэтому — «конкатенация»).


Новое понятие
+ (конкатенация)
Другое применение знака плюс (+), — сказать компьютеру выполнить конкатенацию (объединение) строк. Если одно или оба операнда — строки, будет выполнена конкатенация; если оба операнда — числа, произойдет их сложение.

Эксперимент
Попробуйте несколько разных программ, используя команду say и оператор + (конкатенации). Соединяйте строки и числа вместе с другими строками и числами.

Окно ввода-вывода текста — оператор print
Программы, использующие say, могут быть очень полезными и развлекающими, но часто бывает необходимо написать информацию (слова и числа) на экране так, чтобы их можно было прочесть. Эту задачу выполняет оператор print. В окне для ввода текста программы наберите программу из двух строк:

print "привет"
print "всем"

Программа 7: напечатать «привет», «всем»

После того, как вы наберете текст этой программы, щелкните мышкой по кнопке «Старт» на панели инструментов. В окне для ввода-вывода текста появятся слова: «привет» на первой строке и «всем» — на второй.


Новое понятие
print выражение
print выражение;
Оператор print используется, чтобы отображать текст и числа в окне ввода-вывода текста BASIC-256. Напечатав что-либо, print переходит на новую строку, но можно напечатать несколько знаков в одной и той же строке, используя ; (точку с запятой) в конце выражения.

Оператор print по умолчанию действует так, что последующий текст оказывается на новой строке. Если вы используете ; (точку с запятой) в конце выводимого выражения, то последующие выводимые знаки останутся на этой же строке.

cls
print "Привет ";
print "вам, ";
print "мои друзья."

Программа 8: Несколько print выводят в одну строку


Новое понятие
cls
Оператор cls стирает всю информацию в окне ввода-вывода текста.4

Эксперимент
Попробуйте разные программы, используя оператор print. Используйте слова, числа, математику и конкатенацию.

Что такое «Ошибка синтаксиса»?
Программисты – обычные люди и иногда совершают ошибки. «Ошибка синтаксиса» – один из видов ошибок, с которыми мы можем столкнуться. Такая ошибка возникает, когда BASIC-256 не понимает программу, которую вы набрали. Обычно синтаксические ошибки вызваны неправильным написанием операторов (команд), пропущенными запятыми, ненужными пробелами, незакрытыми кавычками, непарными скобками. BASIC-256 сообщит вам, в какой строке находится ошибка и даже попытается сказать, в какой позиции строки её можно найти.

—————————
1В оригинале «say Hello». Во всех учебниках программирования принято начинать изучение языка с вывода на экран фразы «Hello World», автор обыгрывает этот момент в заголовке. (прим. переводчика)
2Оператор say появился в версии 0.9.4. Если вы используете BASIC-256 в ALT Linux, для работы say необходимо установить пакет espeak (консольной командой от root: apt-get install espeak или с помощью Synaptic). В противном случае вы ничего не услышите. При работе в Windows английские слова будут проговариваться без необходимости установки дополнительных программ, русские — нет. (прим. разработчика)
3Если вы работаете в ALT Linux и пакет espeak установлен, вы услышите: «сто двадцать три миллиона четыреста пятьдесят шесть тысяч семьсот восемьдесят девять», — на русском языке. При работе с Windows (без установки дополнительных программ) цифры будут называться только на английском языке. (прим. разработчика)
4Каждый раз, при запуске программы для исполнения, окно ввода-вывода текста очищается автоматически. (прим. разработчика)

Комментарии (23) к “BASIC-256 Глава 1”

  1. Маргарита говорит:
    Ноябрь 12, 2010, 5:10 пп

    Здравствуйте, курс для начального знакомства со средой хороший, спасибо. Подскажите, где можно взять Basic 256?

  2. Владимир Черный говорит:
    Ноябрь 12, 2010, 5:35 пп

    Он входит в ПСПО (4.0), в Альт Линукс 5.0 Школьный. Просто обновите. Если вдруг не установлен, подключите нужный репозиторий и установите через synaptic пакет basic256 (basic256-0.9.6-alt1.rpm)
    Какой у Вас дистрибутив установлен?

  3. Татьяна говорит:
    Ноябрь 12, 2010, 8:17 пп

    При использовании оператора say хорошо произносится английский текст и цифры, а русский текст не звучит. Как устранить этот недотаток?

  4. Владимир Черный говорит:
    Ноябрь 13, 2010, 10:19 дп

    Татьяна, вы читали второе примечание?
    «Оператор say появился в версии 0.9.4. Если вы используете BASIC-256 в ALT Linux, для работы say необходимо установить пакет espeak (консольной командой от root: apt-get install espeak или с помощью Synaptic). В противном случае вы ничего не услышите. При работе в Windows английские слова будут проговариваться без необходимости установки дополнительных программ, русские — нет. (прим. разработчика)»
    У вас проблема в произнесении русского текста в линукс? Под какой ОС?

  5. Татьяне: Видимо, у вас linux-версия 0.9.5. К сожалению, она также не способна проговаривать русский текст. Обновитесь до версии 0.9.6.

  6. Добрый день. В Мастере 5 после набора 2-3 команд программа зависает. Пробовали Win-вариант через WINE. То же самое. Скачали архив basic256_n.n.nx.tgz версии 0.9.5. Не раскрывается. Обновление через Сизиф приведёт к непредсказуемому сносу части приложений. Что делать? Как всё-таки с этой программой работать (что желательно, далеко не везде используются визуалы»)?

  7. Выграненко: какие конкретно команды набирали? Мастер 5 — какой? с KDE, GNOME или XCFE? Какую версию BASIC-256 использовали?

  8. Татьяна говорит:
    Ноябрь 16, 2010, 6:50 пп

    Операционная система Windows. версия BASIC-256 — 0.9.5. Спасибо за предоставленную возможность познакомиться подробнее с работой в среде BASIC-256 , ждём следующих материалов, так как в интернете по BASIC-256 мало информации. Мы нашли разработку уроков только на сайте Алгоритмы и исполнители, а нам, учителям, перегруженным разными нововведениями, нужна поддержка и методическая помощь.

  9. Сергею Ирюпину: Команды любые, иногда достаточно input. Мастер 5 тот, что в коробке, с KDE, конечно. BASIC тот, что встроен в этот дистр. Про загрузку Win-exe в WINE я написал ошибочно. Такой финт работает нормально, этим и пользуемся пока.

  10. Татьяне: посмотрите практику по алгоритмизации в нашем учебнике, она вся через BASIC-256, http://www.iiikt.narod.ru

  11. Выграненко: вариант с wine — неудачное решение. Виндовая версия не имеет встроенной русскоязычной справки, не может «проговаривать» русские слова. Скачайте по адресу http://ftp.altlinux.org/pub/distributions/ALTLinux/p5/branch/files/i586/RPMS/basic256-0.9.6-alt0.M50P.1.i586.rpm обновленный пакет BASIC-256 для Вашего дистрибутива и установите его командой (от рута): rpm -Uhv basic256-0.9.6-alt0.M50P.1.i586.rpm
    Татьяне: разумеется, я рекомендую Вам использовать BASIC-256 под ALT Linux. А уж если пытаетесь работать с его виндовым вариантом, скачайте самую последнюю версию с сайта basic256.org. Версия 0.9.5 уже не актуальна и не все примеры из книги будут в ней работать.

  12. Выграненко: установил у себя (на свой тестовый ноутбук) Мастер 5, скачал и установил обновленный пакет BASIC-256 — работает без всяких зависаний. Дерзайте!

  13. Татьяна говорит:
    Ноябрь 18, 2010, 6:50 пп

    Вот, вот об этом электронном учебнике и речь. Удобен,экономит время — это находка для учителя. Многие практические берём из этого учебника. Обязательно будем использовать эти уроки по алгоритмизации. У нас в школе установлен терминал. Операционная система Windows,linux программист не смог установить. BASIC-256 пока не устанавливали в школе, пробую дома,нравится, начиная от дизайна и т. д.. Будет ли он работать в терминальной версии компьютерного класса?

  14. Татьяне: linux не смог установить? плохой у вас программист, значит. Ну да ладно. В терминальной версии, конечно будет работать. Если, разумеется, ваш «программист» осилит его установку 😉 Самую свежую версию с сайта http://www.basic256.org/ скачали?

  15. Татьяна говорит:
    Ноябрь 19, 2010, 3:14 пп

    Свежую версию скачала, русский текст не проговаривается. А устанавливать linux пробовали трое программистов. Эпопея с установкой длилась с июля по середину сентября. Что только не пробовали. На сервер установка шла, а на остальные компьютеры нет. Теперь два компьютерных класса. В одном используется linux, а в другом — терминальном Windows. Но дети, наши золотые, дорогие, всё воспринимают легко. Им, по-моему, интересно всё новое.

  16. Русский текст в win-версии BASIC-256 не проговаривается и вряд ли будет проговариваться, поскольку, если не ошибаюсь, в Windows отсутствует «русский голос» для соответствующего синтезатора речи. А вот в Linux такой голос — есть. По поводу установки Linux — за этот год мы с нашей командой проставили ALT Linux более чем в 2х десятках школ Ростова-на-Дону. И каждый раз с неизменным успехом. Так что уж не знаю, что у вас там за «программисты»…

  17. Влад говорит:
    Декабрь 7, 2010, 2:16 пп

    Скажите, а как установить Basic 256 в Mandriva 2010?

  18. Владимир Черный говорит:
    Декабрь 7, 2010, 2:37 пп

    Влад, мандрива это rpm-based дистрибутив, так что самый последний совет в разделе «как установить» (см главы 4 и 5 http://freeschool.altlinux.ru/?p=3569) — для вас, но лучше поищите бэйсик в репозитории мандривы.

  19. Влад говорит:
    Январь 8, 2011, 2:41 пп

    Владимир, я пытался установить Basic 256 через rpm пакет, но пишет, что некоторые пакеты Basic не могут быть установлены из-за неудовлетворенности libQtCore.so.4(CXX3)). Данный пакет и Basic в репозиториях Мандривы отсутствует. Что еще посоветуете? Не менять же на всех компах мандриву на убунту.

  20. aen говорит:
    Январь 8, 2011, 8:43 пп

    Влад, выход один: попросить собрать пакет для Mandriva на форуме edumandriva.ru.

  21. Владимир Черный говорит:
    Январь 9, 2011, 1:29 дп

    Влад, возьмите бейсик из репозитория автора там есть скомпилированная версия… Но перевода у вас скорее всего не будет.

  22. жаль колонок нет на рабочих местах…
    попробовала вспомнить «хорошо забытое старое»
    сгорела на input & data
    хорошо класс разумный, пошли сразу в циклы
    с заполнением по формуле от индекса
    массивы и матрицы понятней всего на нём
    хорошо, что Вы есть, спасибо!

  23. татьяна говорит:
    Февраль 4, 2013, 4:18 дп

    русский текст не проговаривается. linux 12.04. basic256 версия 0.9.6.66-1

Оставьте комментарий