- Преподавателю
- Информатика
- Конспект по информатике «Основные операторы Бейсика»
Конспект по информатике «Основные операторы Бейсика»
Раздел | Информатика |
Класс | - |
Тип | Конспекты |
Автор | Баситова Т.Г. |
Дата | 14.06.2014 |
Формат | rar |
Изображения | Есть |
Описание.
Отправить этот материал в интернет, меня заставило незавидное положение предмета «информатика» в школе. Официально информатика изучается в 8 классе - 1 час в неделю, в 9 классе - 2 часа, в 10 и 11 классах - по 1 часу. Изучение предмета в 5-7 классах осуществляется за счет школьного компонента, при условии, что остаются свободные часы.
Я считаю, что 1 час в неделю отводится на второстепенные предметы. Поэтому показать важность этого предмета очень трудно. Даже встреча ученика и учителя один раз в неделю это очень мало! У многих информатика ассоциируется с умением работать на компьютере. Сейчас почти в каждом доме есть компьютер или планшет. Зачем учить этот предмет, когда мы все умеем?! Хотя «Музыка это не только пианино, а информатика это не только компьютер»
Но, тем не менее мы, учителя информатики, миримся с таким положением предмета в школе, даем азы предмета для продолжения обучения в ВУЗе и готовим учеников к олимпиадам по программированию. Большая часть работы проходит во внеурочное время, за счет личного времени учителя. При этом нагрузка на ученика увеличивается, что может отразиться на его здоровье.
Положение не спасет и увеличение учебной нагрузки - ее тоже не будет хватать. Объем материала большой и сложный. При изучении одного языка программирования нужно выучит не только синтаксис и семантику, но и научиться решать задачи! Поэтому тема «программирование» для меня стоит на особом месте. Первый вопрос - выбор языка программирования. Паскаль или Бейсик?
Бейсик подвергли критике за то, что его простота и бесструктурность поощряет порочные методики и привычки программирования, которые могут быть уместны при создании малых программ, но может привести к краху крупных проектов.
По-моему Бейсик намного проще в изучении. А при нехватке часов это очень важный аргумент. Изучив основные структуры алгоритмического языка и принцип написания программ, переход на Паскаль происходит легко.( С сильными учениками я изучаю Паскаль после уроков). В Бейсике не надо явным образом описывать переменную, в Паскале же, без объявления переменной, вы не сможете ее применить. В Бейсике благодаря нумерации строк, очень легко применить оператор GOTO, но при большом количестве этого оператора отладить программу будет проблематично.
Примеров «за» и «против» Бейсика много. Взвесив все это, я пришла к выводу, что буду изучать программирование на Бейсике. Не случайно и Гейтс с Алленом для «Альтаира» и Возняк для Apple I писали программы именно на Бейсике. Версий Бейсика сейчас много. Каждый учитель пользуется удобной для него. Суть языка при этом не меняется.
В своей работе я не делаю разбивку материала по урокам и тем более не даю поэтапного его проведения с изложением целей и задач. В этой работе только последовательность изложения материала, а каждый учитель сможет использовать его при написании плана урока.
ТЕМА. ОСНОВНЫЕ ОПЕРАТОРЫ БЕЙСИКА.
После знакомства с типами величин и правилами записи арифметических выражений переходим непосредственно к работе в Бейсике. Первые два урока мы знакомимся с оператором вывода PRINT, без которого невозможно вывести результат на экран. Здесь я не буду рассматривать этот материал.
Изучение операторов присваивания, ввода, повторения, ветвления рассматриваю на примере вычисления площади треугольника по формуле Герона
Тема 1. Оператор присваивания - LET
Переводим с английского LET -пусть.
Раздаю ученикам по прямоугольному треугольнику со сторонами 3, 4, 5 (см). Это треугольник Пифагора. Можно рассказать немного о таких фигурах и для чего они использовались. Предлагаю вычислить его площадь. S=или половине произведения катетов S=
А =3, (h)В=4 Вычисляем S= 6 см2
Зачем составлять программу, если можно вычислить или устно или на калькуляторе, или используя, оператор PRINT?
Если считать, что это треугольник разносторонний и за основание принять гипотенузу, провести высоту к основанию, измерить ее, то измерения могут быть не точными. Часто высоту проведут на середину гипотенузы. Для решения таких задач и используется формула Герона. С ней мы знакомились при изучении абсолютных и относительных адресов в формулах, когда решали задачи в EXCEL
S=
Эти выражения мы записывали на Бейсике на предыдущих уроках.
Вычисляем S= S= = 6
Раздаю каждому ученику по разностороннему треугольнику и предлагаю вычислить его площадь, но сначала составим план решения задачи.
План решения
-
Измерить А (10.3)
-
Измерить В (11.7)
-
Измерить С (12.4)
-
Вычислить полупериметр P=(A+B+C)/2
-
Вычислить S
-
Записать ответ
Производить уже такие вычисления сложно. Давайте все-таки составим программу для вычисления площади треугольника на Бейсике, введем ее и увидим результат на экране компьютера.
ПРОГРАММА (для а=3, в=4, с=5)
LET A=3
LET B=4
LET C=5
LET P=(A+B+C)/2
LET A=3
LET S=SQR(P*(P-A)*(P-B)*(P-C))
PRINT S
Запускаем эту программу F5 и получаем ответ 6
В ответе для 6 нет пояснений, как требуется в ответе. Для этого в операторе PRINT добавим описание переменной S
PRINT "S="; S
Запускаем программу и видим ответ: S=6
Можно добавить в пояснение и единицы измерения
PRINT "S="; S; "кв.ед"
F5
S= 6 кв.ед.
Напоминаю, что если используется Бейсик не русифицированный, то пояснения пишем на транслите, как СМС. Например «вычислить» - «vi4iclit»
Если в строке есть синтаксическая ошибка, то программа дальше работать не будет, пока мы ее не исправим. Так работает интерпретатор Бейсик.
Вы получили правильный ответ. Значит, программа работает правильно. Теперь давайте вернемся к данным вашего треугольника и вычислим его площадь.
- Как вы думаете, что изменится, а что останется без изменения?
- Меняются только числа, а формулы остаются без изменений.
- Давайте посмотрим на нашу программу.
LET A=3
LET B=4
LET C=5
LET P=(A+B+C)/2
LET A=3
LET S=SQR(P*(P-A)*(P-B)*(P-C))
PRINT "S="; S
В нашей версии Бейсика оператор LET можно не писать.
A=3
B=4
C=5
P=(A+B+C)/2
S=SQR(P*(P-A)*(P-B)*(P-C))
PRINT "S="; S
Первые 3 строки в программе очень короткие. В Бейсике можно записывать несколько операторов в одну строку, разделяя их «:». Поэтому «:» это не знак деления, а разделитель. Объединить 3 строки в одну можно так же как WORD
A=3:B=4:C=5
P=(A+B+C)/2
S=SQR(P*(P-A)*(P-B)*(P-C))
PRINT "S="; S
На дом предлагаю вычислить площади 5 треугольников и заполнить таблицу.
-
№1
№2
№3
№;4
№5
А
В
С
S
=
=
=
=
=
Стороны треугольников берете произвольные, но с одним десятичным знаком. Например 23.4 При выборе длинны стороны треугольника учесть, что не из любых трех отрезков можно построить треугольник. Необходимо обязательно проверить 3 условия: А> B+C: B>A+C; C>A+B. Если хотя бы одно из условий не выполняется, то такой треугольник построить нельзя, а тем более вычислить его площадь. В программе ошибка будет в строке S=SQR(P*(P-A)*(P-B)*(P-C)) т.к. под корнем будет получаться отрицательное число, а изменять нужно числа в первой строке.
На следующем уроке выполняем практическую работу и переходим к изучению оператора ввода INPUT
Каждый раз, вычисляя площадь нового треугольника, мы вносим изменения в программу, а чревато появлением новых ошибок и лишней трате времени. Зная только 2 оператора составить хорошую программу, мы и не могли. А, используя оператора INPUT , наша программа будет выглядеть так.
INPUT A,B,C
P=(A+B+C)/2
S=SQR(P*(P-A)*(P-B)*(P-C))
PRINT "S="; S
В этой программе нет ни одного числа. Как быть? Давайте запустим эту программу F5
На экране вы видите знак ?
- Когда задают вопрос?
- Когда хотят что-то спросить
-Как вы думаете, о чем спрашивает компьютер?
- О числах, которые являются длинами сторон треугольника.
- С помощью какого устройства мы сможем ввести эти числа?
-С помощью клавиатуры.
Мы должны ввести 3 числа с клавиатуры, обязательно разделяя их «,», а в конце строки нажать клавишу ввода.
Выполнив это, мы получаем результат. Дальше даю первые сведения об операторе INPUT. Учащиеся уже имеют представление, о чем идет речь и легче воспринимают теорию.
При вводе программы INPUT.резервирует ячейки по количеству переменных, а после запуска программы, дойдя до INPUT, печатается знак ? и дается возможность с клавиатуры ввести недостающие данные. После ввода чисел с клавиатура INPUT. Работает как LET. Поэтому мы и получаем тот же результат. При этом содержимое в зарезервированных ячейках обнуляется. После запуска программы снова имеется возможность для введения новых данных.
- Теперь посмотрите на доску. Я составила программу для решения другой задачи и запустила ее. (на самом деле это та же программа). Снова видим знак ?.
- Сможете вы ответить сколько чисел, и какие необходимо ввести? Текст программы посмотреть вы не можете. Конечно же, здесь появляется проблема, которую ученики решить не могут. Поясняю, что в операторе INPUT. Предусмотрена возможность для ввода и подсказки.
INPUT «введите 3 стороны»; A,B,C
F5
введите 3 стороны?
Перед знаком ? стоит подсказка по которой нетрудно понять что и сколько вводить.
Теперь можно снова вычислить площади всех треугольников, которые у вас есть в таблице. Вносить изменения в программу уже не нужно. Можно двум ученикам поручить сделать хронометраж затраченного времени при выполнении задания разными способами.
При выполнении предыдущей задачи программу запускали 5 раз. А если требуется решать большое количество их количество? Вводить данные, записывать ответ, вести счет решенных примеров это монотонная и рутинная работа, во время во время которой человек утомляется и допускает ошибки. Как же автоматизировать учет решенных задач? Как заставить повторить программу нужное число раз.? Для этого познакомимся еще с оператором повторения.
Рассмотрим тему: Циклы с параметрами.
FOR TO NEXT STEP
Для до следующ шаг
Учащиеся переводят эти слова.
Наша программа теперь будет выглядеть так
нцFOR I=1 TO 5 STEP 1 (шаг =1 можно не писать)
INPUT A,B,C
P=(A+B+C)/2
S=SQR(P*(P-A)*(P-B)*(P-C))
PRINT "S="; S
кцNEXT I
После перевода первой строки становит ясно, что программа будет выполняться 5 раз. С алгоритмической структурой «цикл» ученики уже знакомы. Обратить внимание на то, что если не будет оператора NEXT то программа выполниться 1 раз. FOR и NEXT парные операторы и отдельно в программе не могут существовать.
Предлагаю две задачи. На первый взгляд они однотипные, но в них есть несколько «изюминок» Важно перед запуском программы попытаться исполнить ее и увидеть результат, который получится.
Задача 1. Вывести все четные от 1 до 100 в порядке возрастания.
FOR X=2 TO 100 STEP 2
PRINT X;
NEXT X
Задача 2. Вывести все нечетные числа от 1 до 100 в порядке убывания.
FOR X=99 TO 1 STEP -2
PRINT X;
NEXT X
Вместо операторов цикла с параметрами эту же задачу можно решить и с использованием операторов передачи управления
Операторы переходов (ветвления)
IF THEN ELSE GOTO
Если то иначе перейти к…
Наша программа будет выглядеть так. Ученики вносят изменения в программу.
K=1
1 INPUT «ВВЕДИТЕ 3 СТОРОНЫ»A,B,C
P=(A+B+C)/2
S=SQR(P*(P-A)*(P-B)*(P-C))
PRINT "S="; S
К=K=1
IF K<=5 THEN GOTO 1 ELSE STOP
Запускаем программу и видим, что она работает как и с оператором цикла. Подробнее рассказываю об этих операторах.
Изучение операторов цикла и ветвления можно поменять местами. При этом результат примерно один и тот же.
После такого знакомства с основными операторами Бейсика ученики представляют о чем идет речь в программировании и для чего мы составляем программы.. А когда выстроена общая схема, то можно уточнять и изучать знакомые операторы более подробно и на других примерах.
Для изучения этого материала использую презентацию. Но при всех преимуществах интерактивной доски еще использую и бумажный вариант. Каждый шаг оформлен на отдельном плакате размером А3. Из этих плакатов сделала книжку-раскладушку. Она дает хороший эффект при изучении новой темы, а особенно при повторении.