Методичка по QBasic для начинающих программировать
методическая разработка по информатике и икт по теме

Курилов Игорь Анатольевич

Методичка по Бейсику для начинающих программировать (6-8 класс). 2002 год.

Скачать:


Предварительный просмотр:

Учебное пособие

Алгоритмака и программирование

Подготовил учитель информатики Курилов И.А.

Ребята! Чтобы двигаться дальше, нужно рассмотреть ряд очень важных понятий, таких как: объект, модель, моделирование, логика, понятие, высказывание, умозаключение, алгоритм, исполнитель, программа, программирование и т. д.

Для этого лучше всего пользоваться не одним учебником и другой учебной литературой, поэтому основной теоретический материал собран в этой книжке.

1. Алгоритмы и исполнители.

1.Понятие алгоритма. Свойства алгоритмов. Возможность автоматизации деятельности человека.

Понятие алгоритма так же фундаментально для информатики, как и понятие информации.

Само слово «алгоритм» происходит от имени выдающегося математика средневекового Востока Мухаммеда аль-Хорезми. Им были предложены приемы выполнения арифметических вычислений с многозначными числами (они всем хорошо знакомы из школьной математики). Позже в Европе эти приемы назвали алгоритмами от «Algorithmi» — латинского написания имени аль-Хорезми. В наше время понятие алгоритма понимается шире, не ограничиваясь только арифметическими вычислениями.

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

Для использования понятия алгоритма в информатике требуется более точное определение, чем данное выше. Получим такое определение.

Ключевыми словами, раскрывающими смысл этого понятия, являются: исполнитель, команда, система команд исполнителя.

Алгоритм представляет из себя последовательность команд (еще говорят — инструкций, директив), определяющих действия исполнителя (субъекта или управляемого объекта). Всякий алгоритм составляется в расчете на конкретного исполнителя с учетом его возможностей. Для того чтобы алгоритм был выполним, нельзя включать в него команды, которые исполнитель не в состоянии выполнить. Нельзя повару поручать работу токаря, какая бы подробная инструкция ему не давалась. У каждого исполнителя имеется свой перечень команд, которые он может исполнить. (Такой перечень называется системой команд исполнителя алгоритмов (СКИ)).

Свойства алгоритма.

 Дискретность.

Процесс решения задачи должен быть разбит на последовательность отдельных шагов. Таким образом, формируется упорядоченная совокупность отделенных друг от друга команд (предписаний). Образующаяся структура алгоритма оказывается прерывной (дискретной): только выполнив одну команду, исполнитель сможет приступить к выполнению следующей.

Точность (определенность).

Каждая команда алгоритма должна определять однозначное действие исполнителя. Это требование называется точностью алгоритма.

Понятность.

Алгоритм, составленный для конкретного исполнителя, должен включать только те команды, которые входят в его систему команд. Это свойство алгоритма называется понятностью. Алгоритм не должен быть рассчитан на принятие каких-либо самостоятельных решений исполнителем, не предусмотренных составителем алгоритма.

Конечность (результативность).

Еще одно важное требование, предъявляемое к алгоритму, —это конечность (иногда говорят — результативность) алгоритма. Это значит, что исполнение алгоритма должно завершиться за конечное число шагов.

Массовость.

Разработка алгоритмов — процесс интересный, творческий, но непростой, требующий многих умственных усилий и затрат времени. Поэтому предпочтительно разрабатывать алгоритмы, обеспечивающие решение всего класса задач данного типа. Например, если составляется алгоритм решения квадратного уравнения AX2 + ВХ + С = О, то он должен быть вариативен, т. е. обеспечивать возможность решения для любых допустимых исходных значений коэффициентов А, В, С. Про такой алгоритм говорят, что он удовлетворяет требованию массовости.

Свойство массовости не является необходимым свойством алгоритма. Оно скорее определяет качество алгоритма; в то же время свойства точности, понятности и конечности являются необходимыми (иначе это не алгоритм).

Для успешного выполнения любой работы мало иметь ее алгоритм. Всегда требуются еще какие-то исходные данные, с которыми будет работать исполнитель (продукты для приготовления блюда, детали для сбора технического устройства и т. п.). Исполнителю, решающему математическую задачу, требуется исходная числовая информация. Задача всегда формулируется так: дана исходная информация, требуется получить какой-то результат. В математике вы привыкли в таком виде записывать условия задач.

Например:

Дано: катеты прямоугольного треугольника а=3 см; b=4 см.

Найти: гипотенузу с.

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

Еще пример: для поиска номера телефона нужного вам человека исходными данными являются: фамилия, инициалы человека и телефонная книга (точнее, информация, заключенная в телефонную книгу). Однако этого может оказаться недостаточно. Например, вы ищите телефон А. И. Смирнова и обнаруживаете, что в книге пять строк с фамилией «Смирнов А. И.» Ваши исходные данные оказались неполными для точного решения задачи (вместо одного телефона вы получили пять). Оказалось, что нужно знать еще домашний адрес. Набор: фамилия — инициалы — телефонный справочник — адрес — является полным набором данных в этой ситуации. Только имея полный набор данных, можно точно решить задачу. Обобщая все сказанное, сформулируем определение алгоритма.

Алгоритм — понятное и точное предписание исполнителю выполнить конечную последовательность команд, приводящую от исходных данных к искомому результату.

Если алгоритм обладает перечисленными выше свойствами, то работа по нему будет производиться исполнителем формально (т. е. без всяких элементов творчества с его стороны). На этом основана работа программно-управляемых исполнителей-автоматов, например промышленных роботов. Робот-манипулятор может выполнять работу токаря, если он умеет делать все операции токаря (включать станок, закреплять резец, перемещать резец, замерять изделие и т. д.). От исполнителя не требуется понимание сущности алгоритма, он должен лишь точно выполнять команды, не нарушая их последовательности.

 А что такое программа? Отличается ли чем-то программа от алгоритма? Программа — это алгоритм, записанный на языке исполнителя. Иначе можно сказать так: алгоритм и программа не отличаются по содержанию, но могут отличаться по форме.

Для алгоритма строго не определяется форма его представления. Алгоритм можно изобразить графически (блок-схемы), можно — словесно, можно — какими-нибудь специальными значками, понятными только его автору. Но программа должна быть записана на языке исполнителя (для ЭВМ это язык программирования).

2. Виды алгоритмов. Представление алгоритмов в виде блок-схемы.

Алгоритмы бывают разные. Самый простой линейный алгоритм.

Линейный (последовательный) алгоритм – описание действий, которые выполняются однократно в заданном порядке.

Пример: алгоритм решение задачи (от записи данных до ответа), алгоритм открывания двери (вставить ключ, повернуть ключ, открыть дверь) и т. д.

Разветвляющий алгоритм – алгоритм, в котором в зависимости от условия выполняется либо одна, либо другая последовательность действий.

Условие – выражение, находящееся между словом «если» и словом «то» и принимающее значение «истина» или «ложь».

Пример: алгоритм нахождения функции не определенной на всей числовой прямой (находим значение y по заданному значению x, если x определена в этой точке), алгоритм покупки билетов (спрашиваем в кассе, есть ли билеты, если билеты есть, то подаем деньги, получаем билеты) и т. д.

Циклический алгоритм – описание действий, которые должны повторяться указанное число раз или пока не выполнено заданное условие.

Перечень повторяющихся действий называется телом цикла.

Пример: алгоритм нахождения значений y при заданных или задающихся значениях x для построения графика функции (находятся значения на определенном интервале с заданным шагом), алгоритм покраски забора (макнуть кисть в краску, покрасить доску, шаг влево, …).

Вспомогательный алгоритм – алгоритм, который можно использовать в других алгоритмах, указав только его имя.

Вспомогательному алгоритму должно быть присвоено имя.

Пример: алгоритм определения корней квадратного уравнения (алгоритм нахождения дискриминанта, как вспомогательный алгоритм, находится внутри основного), алгоритм дежурного по отряду (алгоритм работы в столовой во время завтрака, обеда, ужина является вспомогательным в основном алгоритме).

Любой алгоритм удобно представлять в виде блок-схемы, так как это не только наглядный и простой способ представления алгоритма, но и лучший способ представления алгоритма для перевода его на любой язык программирования (см. далее).

        

Стандартные графические объекты блок-схемы

Вид стандартного графического объекта

Назначение



Начало алгоритма



Конец алгоритма



Выполняемое действие (расчет по формуле)



Ввод данных



Вывод данных



Условие выполнения действия (в ветвлении и цикле)



Организация цикла с параметрами



Вспомогательный алгоритм



Последовательность выполнения действий

Рассмотрим общий вид различных алгоритмов в виде блок схем.

Блок-схема линейного алгоритма:

        

Блок-схема алгоритмов с ветвлением:

                               if                                      if

           then                  then        else

                    +                               -                                      +                       -        

   

             

Блок-схемы циклических алгоритмов:

                                -

        +

        

(Этот цикл называется цикл Пока.)

        +

        -

(Этот цикл называется – цикл ДО.)

Ещё есть циклический алгоритм с параметрами (см. ниже).

8. Основные этапы моделирования. Этапы решения задач на компьютере.

Человек использует компьютер для решения самых разнообразных информационных задач. Работа с текстами, создание графических изображений, получение справки из базы данных, табличные расчеты, решение математической задачи, расчет технической конструкции и многое другое. Для их решения в распоряжении пользователя ЭВМ имеется обширное программное обеспечение: системное ПО (ядром которого является операционная система), прикладное ПО (программы, предназначенные для пользователя) и системы программирования (средства для создания программ на языках программирования).

Исходя из условия задачи, пользователь решает для себя вопрос о том, каким программным средством он воспользуется. Если в составе доступного прикладного ПО имеется программа, подходящая для решения данной задачи, то пользователь выбирает ее в качестве инструмента (СУБД, табличный процессор, математический пакет и др.). В случае же, если готовым прикладным ПО воспользоваться нельзя, приходится прибегать к программированию на универсальных языках, т. е. выступать в роли программиста.

Принято делить программистов на две категории: системные программисты и прикладные программисты. Системные программисты занимаются разработкой системного программного обеспечения (операционных систем и пр.), систем программирования (трансляторов и пр.), инструментальных средств прикладного ПО (редакторов, СУБД и пр.). Прикладные программисты составляют программы для решения практических (прикладных) задач: технических, экономических, физических и др.

Обсудим технологию решения прикладной задачи на ЭВМ. Часто задача, которую требуется решить, сформулирована не на математическом языке. Например, задача может быть сформулирована в терминах физики или экономики. Для решения на компьютере ее сначала нужно привести к форме математической задачи, а потом уже программировать.

Работа по решению прикладной задачи на компьютере проходит через следующие этапы:

постановка задачи;

математическая формализация;

построение алгоритма;

составление программы на языке программирования;

отладка и тестирование программы;

проведение расчетов и анализ полученных результатов.

Эту последовательность называют технологической цепочкой решения задачи на ЭВМ.

В чистом виде программированием, т. е. разработкой алгоритма и программы, здесь являются лишь 3-й, 4-й и 5-й этапы. Часто в эту цепочку включают еще один пункт: составление сценария интерфейса (т. е. взаимодействия между пользователем и компьютером во время исполнения программы).

Дадим описание каждого из перечисленных этапов.

Постановка задачи.

На этапе постановки задачи должно быть четко определено, что дано и что требуется найти. Так, если задача конкретная (например, решить уравнение 2Х2 + ЗХ + 5 = О, где коэффициенты уравнения — константы), то под постановкой задачи понимаем ответ на два вопроса: какие исходные данные известны и что требуется определить. Если задача обобщенная (например, решить квадратное уравнение AX + ВХ + С = 0), то при постановке задачи понадобится еще ответ на третий вопрос: какие данные допустимы. Итак, постановка задачи «решить квадратное уравнение AX2 + ВХ + С = О» выглядит следующим образом.

Дано: А, В, С — коэффициенты уравнения.

     Найти:X1, X2        — корни уравнения.

     Связь: при A  0 и D = B2 –4AC 0,

,  , иначе действительных корней нет.

Математическая формализация.

Компьютер решает задачу, выполняя команды нашего алгоритма, выраженные на языке программирования. Но мы знаем, какой вид приняли эти команды, попав в память компьютера. Они имеют вид электрических сигналов, соответствующих двоичному способу кодирования. Поэтому обработка этих сигналов, выполнение требуемых операций происходит в компьютере по законам арифметических действий в двоичной системе счисления и булевой алгебры. Это возможно, если все необходимые для решения задачи действия формализованы, т. е. представлены как математические операции и соотношения между входящими в них переменными. Задача переводится на язык математических формул, уравнений, отношений. Далеко не всегда эти формулы очевидны. Нередко их приходится выводить самому или отыскивать в специальной литературе. Если решение задачи требует математического описания какого-то реального объекта, явления или процесса, то формализация равносильна получению соответствующей математической модели. В случае большого числа параметров, ограничений, возможных вариантов исходных данных модель явления может иметь очень сложное математическое описание (правда, реальное явление еще более сложно), но если такого описания не будет, то переложить решение задачи на компьютер вряд ли удастся. Поэтому часто построение математической модели требует упрощения требований задачи. Например, для решения квадратного уравнения, когда необходимо получить значения его корней (если они есть), мы можем воспользоваться известными из курса алгебры формулами для X1 и Х2. На уроках математики доказывалась правильность метода решения квадратного уравнения путем вычисления по формулам:

, .

Нам уже известно, что этот метод решения дает искомые значения корней при любых допустимых значениях исходных данных — коэффициентов А, В, С. Поэтому мы строим алгоритм, основываясь на нем.

Построение алгоритма.

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

 Составление алгоритма на языке программирования.

 Первые три этапа — это работа без компьютера. Дальше следует собственно программирование на определенном языке в определенной системе программирования.

Отладка и тестирование программы.

 Под отладкой программы понимается процесс испытания работы программы и исправления обнаруженных при этом ошибок. Обнаружить ошибки, связанные с нарушением правил записи программы на ЯПВУ (синтаксические и семантические ошибки), помогает используемая система программирования. Пользователь получает сообщение об ошибке, исправляет ее и снова повторяет попытку исполнить программу.

Проверка на компьютере правильности алгоритма производится с помощью тестов. Тест — это конкретный вариант значений исходных данных, для которого известен ожидаемый результат. Прохождение теста — необходимое условие правильности программы. На тестах проверяется правильность реализации программой запланированного сценария. Например, если это программа решения квадратного уравнения, то нужно проверить ее работоспособность как для варианта значений коэффициентов A, В, С, при которых получается неотрицательный дискриминант D = В2 - 4АС  0, так и при таком варианте А, В, С, когда D<0. Анализируя получаемые результаты контрольного расчета, можно сделать вывод о правильности всех предшествующих программированию этапов.

Проведение расчетов и анализ получаемых результатов.

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

4*. Компьютер как формальный исполнитель алгоритмов (программ).

Компьютер (ЭВМ) — это универсальное (многофункциональное) программно-управляемое электронное устройство для хранения, обработки и передачи информации.

Компьютер является универсальным исполнителем по обработке информации. Следовательно, для него, как для любого исполнителя, свойственна определенная система команд исполнителя (СКИ). Эта система команд называется языком машинных команд (ЯМК). Состав команд ЯМК был предложен Джоном фон Нейманом еще в 1946 г. и во многом сохранился в современных компьютерах.

Программа управления компьютером — это последовательность команд ЯМК. Каждая команда является директивой для процессора на выполнение определенного действия. Эти действия выполняет либо сам процессор (арифметические и логические операции), либо внешние устройства (команды ввода, вывода) под управлением процессора.

Согласно принципам Дж. фон Неймана, программа во время ее исполнения и обрабатываемые ею данные находятся в оперативной памяти ЭВМ (принцип хранимой в памяти программы). И то и другое имеет вид двоичных кодов. Процессор исполняет программу, начиная с первой команды и заканчивая на последней (или на специальной команде «стоп»). Во время исполнения очередной команды процессор переписывает ее в свои регистры, исполняет и переходит к следующей команде.

Программисты, работавшие на ЭВМ первого поколения (ламповые машины 50—60-х гг.), писали программы на ЯМК. Это довольно сложная работа. Для облегчения программирования созданы языки программирования высокого уровня (ЯПВУ). Примерами таких языков являются Фортран, Паскаль, Бейсик, Си и др. Составление программ на таких языках много проще, чем на ЯМК. Программирование стало доступно большему числу людей.

Однако процессор ЭВМ понимает только ЯМК и не понимает ЯПВУ. Поэтому, для того чтобы на машине исполнилась программа, записанная, например, на Паскале, ее нужно перевести с языка Паскаль на ЯМК. Такой перевод называется трансляцией. Трансляцию выполняет этот же самый компьютер по специальной программе, которая называется транслятором (например, транслятор с Паскаля).

Программы-трансляторы составляются системными программистами и входят в программное обеспечение компьютера. Таким образом, цепочка событий от составления программы на ЯПВУ до получения результатов решения задачи выглядит так:

Программирование

На ЯПВУ

Трансляция с ЯПВУ на ЯМК

Исполнение

программы на ЯМК

Результаты

Для программиста, составляющего программы на универсальных языках программирования, в том числе перечисленных выше, компьютер является универсальным исполнителем. Иначе говоря, на таких языках можно составить программу решения любой задачи по обработке информации.

Программы составляются программистами по алгоритмам для решения определенных задач. Человек не должен объяснять исполнителю свои цели и смысл команд программы. Очевидно, что компьютер и не сможет понять смысла совершаемых им действий. Кроме того, компьютер не обладает способностью к анализу результатов, например, с точки зрения их соответствия постановке задачи. Компьютер не может обойтись без программы и исходных данных, подготовить которые под силу только человеку. С этой точки зрения решение задачи компьютером — это формальное исполнение алгоритма ее решения, закодированного и хранимого вместе с данными в оперативной памяти.

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

Пользователь (не программист) работает с каким-либо средством прикладного программного обеспечения (текстовым редактором, табличным процессором, бухгалтерским пакетом программ и т. п.). В этом случае компьютер для него является специализированным исполнителем, ориентированным на определенный тип работы (редактирование текста, табличные расчеты, вычисление заработной платы и пр.). Такой пользователь может и не знать, какие услуги компьютера реализуются аппаратными, а какие — программными средствами. Для него компьютер является «виртуальной машиной», обслуживающей его информационные потребности. Аппаратное обеспечение (hardware) и программное обеспечение (software) компьютера для пользователя представляются единым целым.

2.Программирование на Бейсике.

Линейные (вычислительные) алгоритмы и программы.

Другие основные операторы. Стандартные функции*

5.Оператор. Переменные. Действия. Основные операторы.

Оператор – ключевое слово в строке программы.

Операнд – остальная часть строки программы.

1.Переменные.

Переменной (или идентификатором) является любая буква лат.алфавита (26 всего); комбинации буквы с цифрой, но не более 2-х символов; или буквы с буквой.

Пример: А1, А2,CD, М,…

Переменные (как и постоянные) бывают:

а) действительные вещественные)

    В(В!) – 12,6

б) целые

    С1% - 7

В) символьные

     D$  - Ира

2.Действия.

+    сложение

-     вычитание

 *    умножение

/     деление

     степень

Примечание: а) K= K+1  такая запись означает увеличение ячейки K на единицу.

                       б) запись чисел с десятичным порядком: + МЕ + К (М – мантисса, К - порядок).

                       Пример: 1.6 Е-1  1,6  10-1

3.Оператор LET.

Оператор LET – это оператор присваивания (с англ. Пусть)

Основная функция - это присваивание переменной (ячейке) постоянных и выражений.

Примеры:

a = 7,2

10*  LET А= 7.2 (* - нумерацию строк можно не ставить)

а1= 2в+3с

40  LET А1= 2*В+3*С

к=к+1

70  LET К=К+1

у=а3 в2  с5

100 LET У = А3 - В2 *  С5  

z= 3-4x         (целые)

120  LET Z % = 3 – 4*Х%

х=3  10-3

140  LET Х= 3 Е-3

 

160  LET В =(А3 – А2) / (С*(D+D 2))

(  = )

Задания:

а) записать в виде строк программы: а = 4с;  в= 8d + 6с2 ;  с=;  d=7,2  10-4 ;  е= х+х2 (целые).

 б) строки программы записать в виде математического     выражения   20 LET Y= (8-X) /(4*X  2)

4.Оператор PRINT – это оператор печати (вывода), (с англ. печатать).

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

Примеры:

   20 PRINT «В лесу родилась елочка»

   40 PRINT 3.14.

       или

   40 LET P= 3.14

   50 PRINT P

   70 PRINT A, B, C

   90 LET S=A*B

   100 PRINT «Площадь прямоугольника=»; S

       или

    90 PRINT «Площадь прямоугольника=»; А*В

5.Оператор INPUT – это оператор ввода (с англ. ввод, вход).

Основная функция: ввод данных.

Примеры:

  30 INPUT K

    или

  20 PRINT «Ввести число К»

  30 INPUT K         или 30 INPUT «ввести число К»; К

 

  40 INPUT А, В, С

6. Некоторые операторы (с малыми функциями требуемые для состояния программ).

REM – пустой оператор пояснения (его данные не выводятся на экран)

END – оператор конца программы

GOTO – оператор перехода на другую строку

CLS - очистка экрана

Примеры:

10 REM для 10 класса

100 END

80 GOTO 20

Пример: Зацикливающая программа.

10 PRINT «Мяу-мяу»

20 GOTO 10

6.Понятие алгоритма. Линейный алгоритм. Блок-схема линейных программ. Линейные программы.

1.Алгоритм – это строгий план действий решения задачи.

Линейный алгоритм – это последовательный алгоритм.

       Примеры:

- достать ключ                                                «вычислить гипотенузы треугольника»

- вставить ключ в замок                                 - ввести катеты

- повернуть ключ                                            - вычислить гипотенузу

  2раза против часовой стрелки                     - (вывести на экран ответ) – записать ответ

-вынуть ключ

2. Структура или блок-схема. Линейный (вычислительный) алгоримтм.

3. Пример линейной программы.

«Расчет длины окружности (с=2ПR) (вначале составьте блок-схему)

10 REM по геометрии

20 PRINT «длина окружности»

30 PRINT «Ввести радиус окружности»

40 INPUT R

50 LET C= 2*PI*R

60 PRINT «C=»; С

70 END

Задания:

а) при известных а,в,с составить программу расчета функции у=z2+2х, где z= а222 и х+(а+в)с;

б) составить программу расчета величины, используя любую формулу физики или математики;

в) блок-схему к «вычислению гипотенузы».        

4.Стандартные  функции.

а) Тригонометрические функции.

SIN(X), COS(X),TAN(X)-синус, косинус, тангенс.

! В этих функциях аргумент  х, нужно вводить в радианах, если нужно пересчитать по формуле:

                                Х21                 (в инф.) х2=х1*PI/180

(x1- в градусах, х2- в радианах).

Пример: «Расчет sin (cos) угла»

10 CLS

20 PRINT «Ввести угол ( в градусах)»

30 INPUT X1

40 х2=х1*PI/180

50 REM  вычисление синуса угла

60 S=sin(x2)

70 PRINT «синус угла»:х1:»(град) равен»:S

б) Функция АВS(x) – абсолютная величина (модуль).

Пример:  10 Y =ABS (x)

в) Функция SQR (x) – квадратный корень.

Пример: 10 Y = SQR (x)

г) Функция SGN (x) – знаковая функция (SIGNUM – знак).

! Эта функция определяет знак в зависимости от значения выражения:

                 Y=1 при x>0

                 Y=1 при х=0

                 Y=1 при x<0

Пример:

10 Y= SGN (x)

д) Функция INT (x) – функция определения целой части числа (INTEGER – целый).

! Эта функция находит целую часть от числа х (округляет), есть еще функция FIX*.

Примеры:

а) 10 Y= INT (x)

( если х=4,31  у=4

 если х=-4,31  у=5 (с FIX наоборот с отрицательными числами)

б) «округление числа x до N значащей цифры после «,» и выделения N значащая цифра» в целом числе.

– до целой части:

10 INT(x+0.5)

- до N  значащей цифры:

10 x = INT (х*10^N + 0.5) / 10^N

- выделение N значащей цифры:

10 Z = INT (Y/10^(N-1))

20 Z =Z – INT (Z/10)*10

e) Функции Оператора PRINT: TAB, SPC.

TAB (x) – организует построение колонок, ничего не вычисляет, только управляет печатью, как и все функции оператора PRINT.

Пример: «ввод с любой позиции строки»

10 PRINT ТАВ (15); «Ура»

  или

10 FOR I=1 TO 8

20 PRINT  TAB (I); «Ура»

30 NEXT I

SPC (x) – выводит пробелы.

Пример:

10 RINT SPC (10); «Ура»; SPC (10); …

ж) Генератор случайных чисел RND.

RND ( от англ. словаRANDOMIZE – случайность) – генератор случайных чисел (называется еще функцией или оператором), который выбирает любое случайное число от I O; 1[ (загадывает Ц.П.)

Пример 1: Загадывает число Т в пределе от 0 до 1.

10 LET T= RND (1)

20 PRINT T

Пример 2: загадывается и выводится на экран сразу 10 чисел от 0 до 1.

10 FOR k=1 TO 10

20 PRINT RND(1)

30 NEXT k

Пример 3: получение 10-ти случайных целых чисел от 0 до 10.

10 FOR k=1 TO 10

20 T=INT (RND(1)*10)

30 PRINT k, T

40 NEXT k

Задание: Составить программу «Розыгрыш спортлото» и другую самостоятельную программу.

7. Ветвления. Алгоритмы и программы с ветвлением. Оператор IF THEN ELSE.

Алгоритм с ветвлением представляет собой форму организации действий, при которой в зависимости от выполнения или невыполнения условия совершается либо одна, либо другая последовательность действий.

Примеры:                                                      «квадратное уравнение»

- Подойти к кассе                                        - ввести А,В,С

- Если есть билеты на сеанс                       - расчет D (дискриминант)

имеются, то:                             иначе:            ЕСЛИ D > 0, то:                иначе:

- протянуть кассиру деньги                       - рассчитать

- назвать сеанс и количество билетов       - вычислить корни уравнения

- получить билеты                                       - ответ

- отойти                                                                              END

2. Блок-схема

- Ветвления бывает в полной и неполной форме

   

           Да                  Нет                                                    +                -

        

а)                                                                      б)

3. Оператор IF THEN ELSE* – это оператор условного перехода (с англ. IF- если,  THEN – то (тогда), ELSE – иначе)

Основная функция: определяет условия и указания в программе.

*Оператор IF THEN ELSE  может быть записан двумя способами:

Многострочная форма

If Условие Then

 Серия 1

 Else

 Серия 2

End If

Однострочная форма

If Условие

Then Серия 1а

Else Серия 2а

Кроме этого существует ещё алгоритмическая структура с ветвлением

«Выбор»! (изучаем позднее в 9 классе).

4. Программы с ветвлением.

а) «зацикливающая с остановкой».

    70  LET M=0

    80 LET M=M+1

    90 PRINT «Мяу-мяу»

    100 IF M<20 THEN 80

    110 END

б) «расчет корней квадратного уравнения».

Блок-схема соответственно выглядит:

 

    10 CLS – очистка экрана

    20 PRINT «Расчет корней квадратного уравнения»

    30 PRINT «Ввести коэффициент А,В,С»

    40 INPUT А,В,С

    50 LET D=В^2-4*А*С

    60 IF D<0 THEN 120

    70 LET X1=(-B-SQR(D)) / 2 *A

    80 LET X2=(-В+ SQR(D)) / 2 *A

   

    90 PRINT «Х1=» Х1

   100 PRINT «Х2=» Х2

   110 END (STOP)

   120 PRINT «Корней нет»

Задания:

а) определить функцию у =    х2+1, при х>0

                                                  x2-1, при х<0

б) составить программу: тест, анкету, программу контроля из 4-5 вопросов с ответами для выбора.

8. Циклы. Циклические алгоритмы и программы. Оператор  FOR TO STEP-NEXT.

1. Циклический алгоритм – это форма организации действий, при которой одна и та же последовательность действий совершается несколько раз.

Пример:  

-пока забор не кончится

-покрасить одну доску

-шагнуть влево на ширину доски

-конец цикла

2.Блок-схема цикла с параметрами

                         

3. Операторы FOR TO STEP-NEXT*- это операторы цикла (с англ. FOR – от , для,TO – до, STEP - шаг, NEXT – следующий)

Основная функция: задают работу цикла (повторяемость действий), где FOR TO STEP-начало цикла, NEXT- конец цикла, а то что находится между этими операторами называется телом цикла.

*Кроме алгоритмической структуры цикл с параметрами (или  

цикл-счетчик) существуют: 

Цикл с предусловием.

Do … Loop – оператор цикла с условием. Существуют 2 ключевых слова, которые

предают противоположный смысл:

While – пока выполняется условие

Until – пока не выполняется условие

*

Do While Условие

Тело Цикла

Loop

Do Until Условие

Тело цикла

Loop

Цикл с постусловием.

*

Do

Тело цикла

Loop While Условие

Do

Тело цикла

Loop Until Условие

(изучаем позднее в 9 классе).

4. Циклические программы.

а) N-е число раз записывает фразу.

10 FOR K=1 то 20

20 PRINT «Мяу-мяу»

30 NEXT K

б) Программа вывода всех четных чисел до 100

10 FOR j=1 то 50

20 LET x=2*j

30 PRINT x

40 NEXT j

в) Квадратные корни всех чисел от 100 до 1

10 FOR M=100 то 1 STEP -1

20 LET S=SQR (M)

30 PRINT «SQR»; М; «=»; S

40 NEXT M

Задания:

а)  Составить программу расчета изменения р от h через каждый метр до заданной глубины (p=gh) или другую физическую программу.

б) Рассчитать квадраты всех нечетных чисел до 20

в) Составить программу расчета цены товара через 12 месяцев (и каждый месяц) при заданном проценте инфляции (9 класс).

г) Рассчитать функцию y =  при х от -5 до 5 с шагом

3.Знакомство с графическими исполнителями.

9.Компьютерная графика. Операторы управлением экрана и построения. Координаты экрана.

1.Операторы управлением экрана.

а) CLS – очистка экрана

б) SCREEN (0,1,2,3, …12) – режимы экрана

      где 0,1 – текста

            2,3, …12 – графики

в) COLOR X,Y,Z – устанавливает цвет

X – номер цвета переднего плана

Y – номер цвета фона

Z – номер цвета знакоместа

Цветовая шкала.

Темные цвета

Светлые цвета

0 (Black) - черный

8 (DackGray) - темно-серый

1 (Blue) - синий

9 (LightBlue) - светло-синий

2 (Green) - зеленый

10 (LightGreen) – светло-зеленый

3 (Cyan) - голубой

11 (LightGyan) – светло-голубой

4 (Red) - красный

12 (LightRed) – светло-красный

5 (Magenta) - фиолетовый

13 (LightMagenta) – светло-фиолетовый

6 (Brown) - коричневый

14 (Yellow) – светло-коричневый

7 (LightGray) - светло-серый

15 (White) - белый

г) LOCATE X,Y,Z – передвигает и высвечивает курсор

X – столбец курсора

Y – строка курсора

Z – выражение: О – гасит курсор не О – не гасит курсор

д) WIDTH X,Y – определяет размеры текстового экрана

X – количество символов в строке

Y – позиция левого края текста

2.Координаты экрана.

а) В текстовом режиме экран представляет собой поле из 23 строк и 63 столбцов.

б) в графическом режиме экран представляет собой координаты плоскость:

                        0                     640 точек

                                 

                                        480

                                        точек                                

                                       

15.Построение точек. Оператор PSET.

Оператор PSET – это графический оператор вывода точки на экран с заданными координатами и цветом.

1.Общая запись.

PSET   (X,Y), Z

X,Y – координаты точки

Z –номер цвета точки

Пример:   20 PSET (320, 130)

2.Программы:

а) «Линия прямая горизонтальная (пунктирная)»

10 SCR 2

20 FOR k=1 TO 100 STEP 2

30 PSET (k,20)

40 NEXT k

50 GOTO 50

б) «Линия наклонная»

10 SCR 2

20 FOR k=1 TO 100

30 PSET (k,k), 7

40 NEXT k

50 FOR P=1 TO 100

60 NEXT P

     Примечание: «Задержка вывода на экран»

а) 50 GOTO 50 – это постоянная задержка вывода на экран (выход <стоп>).

б) 50 FOR P=1 TO 100 – это временная задержка на экран (называется «пустой цикл»).

Задания: составить программу с помощью оператора PSET (угол*, ступенька*, лесенка*, прямоугольник*, звездное небо и т.д.)

10.Построение линий и прямоугольников. Оператор LINE.

Оператор LINE – это графический оператор вычерчивания на экране линий и прямоугольников.

1.Общая запись

LINE   (X1,Y1) –   (X2,Y2), Z, B или BF

X1,Y1 – координаты начальные (.) отрезка (линии)

X2,Y2 – координаты  конечные (.) отрезка

Z – номер цвета линии (прямоугольника)

B – прямоугольник изображается ((.)-ки являются диаграммами)

BF – закрашенный прямоугольник изображается

Пример: 20 LINE(0,0)-(320,130)

Примечание: координаты X1 и Y1 могут не указываться, тогда линия чертится от текущей (.).

1.Программы.

а) «Буква К» (во весь экран)

10 SCR 2

20 LINE (200,200) – (200,50)

30 LINE (200,125) – (400,200)

40 LINE (200,125) – (400,50)

50 GOTO 50

б) «100 случайный прямоугольников»

10 SCR 2

20 FOR j=1 TO 100

30 X1=INT (RND(1)*639)

40 Y1=INT(RND(1)*263)

50 X2=INT (RND(1)*639)

60 Y2=INT (RND(1)*263)

70 Z=INT (RND(1)*9)

80 LINE (X1,Y1)-(X2,Y2), Z, B

90 NEXT j

100 CLS

110 GOTO 20

Задания: Составить программу с помощью оператора LINE (любой рисунок из линий).

 

11.Построение окружностей, эллипсов и дуг. Оператор CIRCLE.

Оператор CIRCLE – это графический оператор построения на экране окружностей, эллипсов, дуг.

1.Общая запись.

CIRCLE    (X,Y), R, Z, A, B, C

X,Y - координаты центра окружности

R - Радиус

Z - Номер цвета

A, B – начало и конец дуги (в радианах)

C – Коэффициент сжатия (эллипса).

Примечание: а) если А и В, С «-«, то они берутся по ABS величине, а центр окружности соединяется с концами дуги. б) коэффициент сжатия по умолчанию 1. в) отсчет дуги идет по часовой стрелке.

Пример: 20 CIRCLE (320,130),50,,,0.7

2. Программы.

а) «мишень».

10 SCR 2

20 FOR j=1 TO 10

40 CIRCLE (320,130), 15*j,7,,,0.8

50 NEXT j

60 GOTO 60

 б) «Фигурный забор».

10 SCR 2

20 FOR j=1 TO 670 STEP 20

30 CIRCLE (j, 130), 30,8,,,0.8

40 NEXT j

50 GOTO 50

Задания: Построить программу с помощью оператора CIRCLE (любой рисунок)

 

12. Закрашивание областей экрана. Оператор PAINT.

Оператор PAINT – это графический оператор окрашивания части экрана (области).

1. Общая запись.

PAINT   (X,Y),W,Z

X,Y – координаты (.) из области закраски

W – номер цвета закраски

Z – номер цвета границы области.

Примечание:

а) область должна быть замкнута,

б) если W опущен, то область окрашивается  в текущий цвет,

в) если Z опущен, то граница окрашивается в цвет области,

г) Z  должен совпадать с цветом границы области построенной  ранее,

д) Граница области должна быть одного цвета.

Пример:

              15 CIRCLE (320,130),50

              20 PAINT (320,130),5,8

2. Программы.

а) «мишень-2»

10 SCR 2

20 FOR j=1 TO 10                                                 понятнее:

30 CIRCLE (320,130), 15 * j, 7,,,0.8                     j=R

40 NEXT j                                                              i=x

50 FOR i=325 TO 475 STEP 30

60 PAINT  (i,130), 1,7

70 NEXT i

80 GOTO 80

б) «Гирлянда»

10 SCR 2

20 FOR x= 170 TO 470 STEP 100

30 CIRCLE (x,130),50,8,,,0.7                                  

40 NEXT x                                                                 или        

50 FOR k=1 TO 4                                                      FOR k=1 TO 7

60 PAINT (170,130),k,8                                            FOR x=170 TO 470 STEP 100                                          

70 PAINT (270,130), k+4, 8                                      PAINT (x,130), k , 8

80 PAINT (370,130),k,8                                            NEXT x

90 PAINT (470,130),k+4, 8                                       NEXT k

100NEXT k

110GOTO 50

Задания: Составить программу с помощью оператора PAINT( любой раскрашенный рисунок).

13.Черчение с помощью универсального оператора DRAW.

Оператор DRAW - универсальный графический оператор выполняет строки графических  команд.

1.Общая запись.

DRAW  <символьное выражение>

<символьное выражение>- строка содержащая графические команды.

а) графические команды состоят из буквы и числа (аргумента).

б) разделителем между командами используется пробел или лучше <;> (в конце строки <;> обязательна).

в) <символьное выражение> находится в кавычках.

2.«Круговые» команды оператора DRAW.

   H        U        E                          U – черчение вверх от текущей(.)

                                                     D - вниз

 L                       R                        L - влево

                                                     R - вправо                                                                                                                                                                            

   G                     F                        E – в верхний правый угол

                                                     F – в нижний правый угол

            D                                      G -  в нижний левый угол

                                                     H – в верхний левый угол

Пример:                                                    

20 PSET (320, 130)                                  40            (320;130)

30 DRAW “L 40; D 40;”

3.Команда черчения от (.) до (.).

М [+] x,y – строит линии от текущей (.) до (.) с коорд. x,y                                 (320;130)

Пример:

 20 PSET (320,130)

 30 DRAW “M 1, 1; M 100; 10”

      4.Команды управления точкой.

В- команда передвижения (.) без её черчения

N- команда, которая после выполнения другой команды возвращает координаты текущей (.)

       Пример:

20 PSET (320,130)                                                                   40     (320;130)

30 DRAW ” L 40; BD 40; NR 40; D40;”

5.Команды изменения режима оператора DRAW меняют режим у последующих команд (кроме М).

А <повтор> – изменяет направление черчения

0 – нормальная ориентация (по умолчанию)

1 – 900 по часовой стрелке

2 – 1800 по часовой стрелке

3 – 2700 по часовой стрелке

S <масштаб> - меняет масштаб черчения

4(0) – нормальный

Примечание: S1 – 4-х кратное уменьшение  

                      S12 – 3-х кратное увеличение                              

Пример:

20 PSET (320,130)                                            40         (320,130)

30 DRAW “L40; A1;R40;S2;U40;”

6. Команда изменения цвета черчения.

С <цвет> , <цвет> меняется в пределах [0,8]

Пример:         40   (320,130)

20 PSET (320,130)                                                      

30 DRAW “L40; С5;D40;”

7. Команда включения подстрок программы.

Х <имя символьной переменной> - интерпретируется как подстрока, содержащая графические команды.

Пример:

20 А S= “R 80; U40;”                                                 40     (320,130)

30 PSET (320,130)

40 DRAW “L40; A1;D40;S2;X A S;”

 Задания: составить программу с оператором DRAW (рисунок).

14.Творческий проект по программированию*.

Творческим проектом по программированию может быть любой программный продукт в рамках пройденного курса. Например, рисунок, рисунок с движущими объектами (см. ниже), расчетная интересная задачи, тест, анкета и т. д. Программа должна быть оформлена.

 Движение графических объектов (подробнее в 10кл).

Алгоритм (особенности).

Общее таких алгоритмов состоит в цикле, телом, которого является объект построенный оператором графически сначала в заданный цвет, а затем в цвет фона экрана. За счет этого создается  иллюзия движения.

2. Блок-схема.

Примечание:

       а) скорость движения подбирается величиной шага – STEP

б) цикл «движения» помещается в конце программы, которая строит рисунок, чертеж и т.д.

3. Программы.

     а) «Движение точки».

10 SCR 2

20 FOR X=1 TO 640

30 PSET (X,130)

40 PSET (X,130),2

50 NEXT X

60 GOTO 20

б) «движение прямоугольника по периметру экрана»*.

10 SCR 2

20 FOR X=1 TO 610 STEP 10

30 LINE (X,230)-(X+20,250), 8, BF

40 LINE (X,230)-(X+10,250),2 BF

50 NEXT X

60 FOR Y=230 TO 1 STEP -10

70 LINE (610,Y)-(630,Y+20),8, BF

80 LINE (610,Y+10)-(630,Y+20),2, BF

90 NEXT Y

100 FOR X=630 TO 1 STEP -10

110 LINE (X-20,1)-(X,30),8, BF

120 LINE (X-10,1)-(X,30),2, BF

130 NEXT X

140  FOR Y=1 TO 250 STEP 10

150 LINE (1,Y)-(20,Y+20),8, BF

160 LINE (1,Y)-(20,Y+10),2, BF

170 NEXT Y

180 GOTO 20

    Задания: Составить программу с движением графического объекта (ов).

начало

конец

дествие

ввод

вывод

?

Подпрограммаграмма

начало

ввод

Расчет

вывод

конец

?

?

оператор2

оператор1  1 11

оператор

      else

?

оператор

оператор

?

Пояснения

(REM, PRINT)

Ввод данных (INPUT, PRINT)

Расчет (вычисления) (LET)

Вывод результатов (PRINT)

END

?

?

Серия  1

Серия  2

Серия  1

d=b2-4ac

d=

 нет корней

a=2*a

начало

Ввод a,b,c aa?a

D<0

Вывод (-b+d)/a,(-b-d)/a

конец

i=k, n,m

Тело цикла

?

Тело цикла

?

Основная программа

?

Вычерчив

 объекта

Вычерчив объекта (в цвет фона)

END


Предварительный просмотр:


Подписи к слайдам:

Слайд 1

Язык программирования Бейсик Оператор. Переменные. Действия. Оператор LET. 02.10.2003 подготовил учитель информатики Курилов И. А.

Слайд 2

Основные понятия: Переменная Оператор – ключевое слово в строке программы. Операнд – часть строки программы после оператора. Переменные. Переменной (идентификатором) является любая буква латинского алфавита (всего 26), комбинации буквы с цифрой или буквы с буквой (причем первой обязательно должна быть буква). Пример: A1, A2, CD, M, … Переменные (как и постоянные) бывают: а) действительные (вещественные): B (B!)=12.6 б) целые: C1%=7 в) символьные: D$= «Ира»

Слайд 3

Действия с переменными + - сложение - вычитание * - умножение / - деление ^ - степень З апись в нормализованном виде десятичных чисел:  mE  K , где m - мантисса 0,1<=| m | <=1 , где k - порядок Пример : 1.6  10^ (- 1 )  +0.13 E -1

Слайд 4

Оператор LET Оператор LET - это оператор присваивания переменной (ячейки памяти) постоянных и выражений (с англ.яз. пусть ). Примеры: а= 7,2 10 LET A=7.2 a1=2b+3c 40 LET A1=2*B+3*C k=k+1 { ячейка памяти k увеличивается на 1 } 70 LET K=K+1 y=a^3-b^2  c^5 100 LET Y=A^3-B^2*C^5 z=3-4x ( целые) 120 LET Z%=3-4*X% x=3  10^(-3) 140 LET X=3E-3

Слайд 5

Оператор PRINT Оператор PRINT – это оператор печати (вывода) (с англ.яз. печатать ). Основной функцией оператора служит запись в программах постоянных, переменных, выражений, вывод результатов. Примеры: 20 PRINT “ В лесу родилась елочка ” 40 PRINT 3.14 или 40 LET P=3.14 50 PRINT P 70 PRINT A, B, C 90 LET S=A*B 100 PRINT “ Площадь прямоугольника = ” ; S или 90 PRINT “ Площадь прямоугольника = ” ; A*B

Слайд 6

Оператор INPUT Оператор INPUT – это оператор ввода (с англ.яз. Ввод или вход). Основная функция ввод данных. Примеры: 30 INPUT K или 20 PRINT “ Ввести число К ” 30 INPUT K или 30 INPUT “ Ввести число К ”; K 40 INPUT A, B, C

Слайд 7

Некоторые другие операторы REM – пустой оператор пояснения (его данные не выводятся на экран). END – оператор конца программы GOTO – оператор безусловного перехода на другую строку CLS – оператор очистки экрана Примеры: 10 REM Для 9-10 класса 100 END 80 GOTO 20 Зацикливающая программы: 10 PRINT “ МЯУ-МЯУ ” 20 GOTO 10

Слайд 8

Линейный алгоритм. Линейные программы Решение простых вычислительных задач на компьютере путем составления линейный программ

Слайд 9

Линейный алгоритм Линейный (последовательный) алгоритм – описание действий, которые выполняются однократно в заданном порядке. Пример: алгоритм решение задачи (от записи данных до ответа), алгоритм открывания двери : достать ключ, вставить ключ, повернуть ключ, вынуть ключ, открыть дверь ( и т. п . )

Слайд 10

Блок-схема Расчет начало вывод конец ввод

Слайд 11

Пример линейной программы Задача: расчет длины окружности по заданному радиусу ( C=2 πR). 10 REM ПО ГЕОМЕТРИИ 20 PRINT “ ДЛИНА ОКРУЖНОСТИ ” 30 PRINT “ ВВЕСТИ РАДИУС ОКРУЖНОСТИ ” 40 INPUT R 50 LET C=2*PI*R 60 PRINT “C=”; C 70 END ! Составьте блок-схему к данной программе. п


По теме: методические разработки, презентации и конспекты

QBASIC для начинающих

Учебник и задачник по программированию...

Элективный курс "Программируем на Паскале".

Основная функция курсов по выбору в системе предпрофильной подготовки по информатике – выявление средствами предмета информатики нравственности личности, ее профессиональных интересов. Для того, чтобы...

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

Эта  работа  адресована педагогам по фортепиано,а также родителям начинающих учеников.  В ней содержатся рекомендации  по обучению  нотной грамоте,  упражнения, представл...

Синтетические методы формирования художественного вкуса, аналитического мышления и общего музыкального развития начинающего исполнителя-музыканта

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

Программируем на Бейсике, 6 класс

Информатика, 6 класс  Учебное пособие, - Пермь, 2009    Составитель: Волкова Евгения Игоревна.    МАОУ СОШ № 9 с углубленным изучением предметов ф...

Программируем на Free Pascal

Предствалена презентация к урокам на Free Pascal....

Методичка по Pascal для начинающих программировать

Методичка по Паскалю для начинающих программировать на кружках и уроках (7-9 класс). 2004 год (переработано)....