Инфоурок Информатика Другие методич. материалыКурс лекций по дисциплине «ИНФОРМАТИКА» для студентов, обучающихся на базе основного общего образования

Курс лекций по дисциплине «ИНФОРМАТИКА» для студентов, обучающихся на базе основного общего образования

Скачать материал

Пензенский колледж управления и промышленных технологий
им. Е.Д. Басулина

 

 

 

 

 

Лекции по дисциплине

«информатика»

для студентов,

обучающихся на базе основного

общего образования

часть II

 

 

 

 

 

 

 

 

Составил преподаватель:

Л.С. Лачугина


Решение задач на ЭВМ

 

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

Решение задач на ЭВМ предполагает реализацию следующих этапов:

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

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

2. Построение математической модели и выбор метода решения.

На этом этапе решения задачи нужно «перевести» задачу на язык математики, т.е. создать математическую модель. Для этого нужно:

         а) выделить предположения, на которых основана математическая модель;

         б) определить, что считать исходными данными и результатами;

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

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

3. Разработка алгоритма.

Перед использованием ЭВМ необходимо составить алгоритм решения задачи каким-либо способом.

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

Алгоритм, написанный на языке программирования, называется программой. Данный этап предполагает ввод программы в ЭВМ.


5. Отладка.

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

6. Выполнение.

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

7. Анализ результатов.

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

 

Первые три этапа были рассмотрены в теме «Алгоритмизация».


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

 

 

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

Правила работы с программами.

 

 

Программа – это последовательность действий, понятных машине.

Для составления программ применяются специально созданные языки – языки программирования (Паскаль, Бейсик, СИ, Ассемблер и др.) Одним из них является язык Бейсик.

Бейсик – язык программирования, т.е. средство для записи алгоритма решения задачи в виде программы. Бейсик – один из наиболее простых языков и очень подходит для начального знакомства с ЭВМ.

Язык Бейсик был создан в 60-х годах XX в. как язык для начального обучения программированию в диалоге с ЭВМ. Этот язык создавался американскими программистами, и поэтому в основу его была положена лексика английского языка.

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

 

Алфавит языка

 

Каждый язык имеет свой синтаксис и алфавит. Алфавит языка Бейсик включает:

·          буквы латинского алфавита от A до Z;

·          буквы русского алфавита (только в текстовых константах);

·          арабские цифры 0, 1, 2, …, 9;

·          знаки арифметических операций: + сложение; вычитание; * умножение; / деление; ^ возведение в степень;

·          знаки операций отношения: = равно; > больше; < меньше; >= больше или равно; <= меньше или равно; <> не равно;

·          разделители и прочие символы: . точка; , запятая; ; точка с запятой; : двоеточие;  пробел; ! признак вещественной величины; # признак вещественной величины двойной точности; % признак целой величины; ( ) скобки круглые; кавычки; апостроф.

 

Данные

 

В Бейсике используются следующие виды данных: константы и переменные.

Каждая группа данных в свою очередь, имеет деление:

 

1. Константы (константа – это постоянная неизменяемая величина):

         а) числовые;

         б) строковые (текстовые).

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

Целая константа – это набор десятичных цифр (со знаком или без него). Лежит в диапазоне от –32768 до 32768.

Пример:    78,    –567

Вещественная константа – это последовательность десятичных цифр (со знаком или без него) и точки. Точка разделяет целую и дробную части константы.

Различают вещественные константы с фиксированной точкой

Пример:     –12.6,         78.234,       –.89

и с плавающей точкой (в экспоненциальном виде). В общем случае для представления числа в таком виде оно преобразуется в выражение:

,

после чего записывается в следующем виде:

, где  – мантисса,  – порядок числа,  – обозначение основания степени.

Пример:     6.83 Е7 (т. е. 6,83 × 107 = 68300000)

                   –2.1 Е –7 (т. е. –2,1 × 10–7 =  –0,00000021)

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

Длина текстовой константы не более 255 символов.

Пример: «Кошка, которая гуляет сама по себе»

 

2. Переменные (переменная – это величина, значение которой может изменяться в процессе выполнения программы):

         а) числовые;

         б) текстовые (строковые).

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

% – целый,

! – вещественный (6 знаков),

# – вещественный двойной точности (14 знаков),

$ – символьный.

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

Пример:     А,      АХ,   А8,    ВХ$

 

Встроенные (стандартные) математические функции

 

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

Встроенные математические функции – это те функции, которые компьютер умеет вычислить.

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

Рассмотрим форму записи и примеры использования этих функций:

Функция

Описание

Пример

Результат

ABS (Х)

Возвращает абсолютную величину (модуль) числа

ABS(–3)

3

SQR (X)

Возвращает квадратный корень из числа

SQR(2)

 

SIN (X)

Возвращает значение синуса аргумента (аргумент указывается в радианах)

SIN(0)

0

COS (X)

Возвращает значение косинуса аргумента (аргумент указывается в радианах)

COS(0)

0.99999

TAN (X)

Возвращает значение тангенса аргумента (аргумент указывается в радианах)

TAN(0)

0

ATN (X)

Возвращает значение арктангенса аргумента (результат в радианах)

ATN(1)*4

3.14159

EXP (X)

Находит значение показательной функции ex

EXP(1)

2.71828

LOG (X)

Находит значение натурального логарифма

LOG(2)

0.693147

INT (X)

Возвращает значение целой части числа

INT(2.5)

INT(–2.5)

2

–3

RND (X)

Датчик случайных чисел (каждое обращение к этой функции будет давать некоторое число от 0 до 1 – заранее неизвестно, какое именно. При этом каждое новое обращение будет давать новое значение)

RND(1)

0.456732

Пример:   

                  

 

 

 

Выражения

 

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

Различают два вида выражений – арифметические и текстовые.

Арифметическое выражение содержит в себе числа (числовые константы), числовые переменные, стандартные математические функции, соединенные знаками арифметических операций и скобки.

Результатом вычисления арифметических выражений является число.

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

Команда

Результат

Пояснения

? 1+2+3+4+5¿

15

сумма пяти чисел

? 365*24*60¿

525600

число минут в году

? 2 ^ 10¿

1024

2 в 10-й степени

? (367 – 24) / 7¿

49

число недель

?5 / 3¿

1.66666666666666

дробное число

Пример:

 

 

 

 

 

 

Арифметическое выражение задает правило вычисления числового значения.

Пример: (5 * Х + 3.3 * COS (X)) / LOG (Y)

Текстовое выражение может содержать символы, слова, строковые функции и операции конкатенации (склеивания).

Пример: В$ = «А» + «1»

В частном случае текстовым выражением является текстовая переменная или константа.

Пример:    С$,    «КОНЕЦ»

Результатом вычисления символьного выражения является символ или группа символов.

В Бейсике используются арифметические операции +,-,*, /, ^ (возведение в степень).

В состав языка Бейсик включаются еще две операции, выполняемые над целыми величинами:

А\В – целочисленное деление. Результат – частное от деления А на В.

А MOD В – деление по модулю В. Результат – остаток от деления А на В.

Пример: 9 \ 2 = 4,         9 MOD 2 = 1,       9 MOD 4 = 1

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

1) все формулы должны записываться в одну строчку (многоэтажные выражения, верхние и нижние символы запрещены);

2) два знака арифметических операций не должны располагаться рядом. Знак умножения опускать нельзя;

3) операции в арифметическом выражении выполняются в порядке старшинства, т. е.: а) операции внутри скобок;

                   б) вычисления встроенных функций;

                   в) возведение в степень;

                   г) операция умножения и деления;

                   д) операции целочисленного деления;

                   е) операции деления по модулю;

                   ж) операции сложения и вычитания.

4) операции равного старшинства выполняются по порядку слева направо (исключение: А ^ В ^ С = А ^ (В ^ С)).

Примеры:

 → (5 + 6) / 2

 → 1 / (3 * 4)  (но не 1 / 3 * 4)

 → (А * Х + В) / (15 * А)

 → SQR (5 * X ^ 3 + 3.6) / (Y – 5) / A + D

 → (3 * X – COS (X)) ^ (1 / 3) / (2.5+ABS (Y) ^ 5)

 → (P * SIN (X) + COS (X) ^ 2) / (EXP (2) + LOG (G))

 

Понятие оператора и программы. Правила работы с программами

 

Программа – это последовательность команд, которые должна выполнять машина.

Иными словами, программа – это алгоритм, записанный на языке, понятном для ЭВМ. Располагая алгоритмом, мы можем перевести его на любой язык программирования.

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

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

Теперь обсудим правила записи программ на языке Бейсик.

Программа на языке Бейсик – это последовательности строк, содержащие операторы (один или несколько операторов, разделяемых двоеточием) и комментарии.

Формат строки: [№пробел ] оператор…

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

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

После составления программ начинается ее ввод и испытание на ЭВМ. Эта работа состоит в следующем:

1) ввод программы;

2) выполнение программы;

3) исправление программы.

Ввод каждого оператора обязательно заканчивается нажатием клавиши <Enter>. Только после этого ЭВМ запоминает введенный оператор и вставляет его в соответствующее место программы.

Выполнение программ на Бейсике начинается по команде RUN (RUN – выполнять) или клавиша F5.

Редактирование программ – это исправление введенных строк или удаления ненужных.

Оператор CLS  стирает текст программы с экрана.

Удаление из памяти всего текста программы осуществляется командой FILE ® NEW (NEW – новый).

Нарушение правил языка программирования при записи команд и операторов в программах называются синтаксическими ошибками. Такие ошибки ЭВМ обнаруживает автоматически. При обнаружении их ЭВМ прерывает выполнение программы и выводит на экран сообщение с указанием ошибочного оператора.


Операторы языка Бейсик

 

Все операторы языка Бейсик можно разделить на основные группы:

1) присваивания;

2) ввода-вывода;

3) управления (условия, выбора, разветвления, цикла)

4) организации подпрограмм и функций;

5) обработки строковых величин;

6) организации массивов;

7) графические, музыкальные;

8) начала и окончания программы.

 

Рассмотрим каждую группу операторов.

 

Оператор присваивания. Он присваивает переменной значение некоторого выражения.

Общий вид оператора: LET X=A

Здесь LET – имя оператора (переводится «пусть») может быть опущено;

         Х – имя переменной;

         А – выражение, арифметическое или текстовое.

Работа оператора: вычисляет значение выражения А и присваивает его переменной Х.

LET R=3*X+2*SIN(Y)^2

вычисляет значение R по формуле

LET R=R+1

значение R увеличивается на 1

Y=LOG(X)^2+AВS(Z)

вычисляет значение Y по формуле

LET B$="Тетя Маша"

присваивает текстовой переменной В$ значение текстовой константы

Пример:

 

 

 

 

 

 

 

 

Оператор ввода INPUT. Данные могут вводиться с клавиатуры или заноситься непосредственно в память ЭВМ с помощью оператора присваивания.

В языке Бейсик в качестве оператора ввода информации с клавиатуры используется оператор INPUT.

Общий вид оператора: INPUT["строка-подсказка";] х1, х2, …, хi, ..., xn

                                                                                     (список вводимых переменных)

где    INPUT – имя оператора;

         строка-подсказка – выводимая на экран информация – обычно содержит комментарии к вводимой информации (может быть опущена);

         список переменных – одна или несколько переменных, разделенных запятыми.

Пример: оператор        INPUT "Введите А, В"; А, В$

выдает на экран сообщение

ВВЕДИТЕ А, В   ?

Работа оператора:

1) оператор прерывает выполнение программы, выдает на экран текст подсказки и знак «?» – приглашение к вводу данных;

2) пользователь должен набрать на клавиатуре для каждой переменной хi, ее значение сi, разделяя их запятыми;

3) по окончании набора данных пользователь должен нажать клавишу <Enter> – данные с экрана вводятся в ЭВМ и каждой величине хi присваивается ее значение сi, при этом проверяется соответствие типов этих величин и количество вводимых значений.

 

Операторы DATA, READ. Служат для организации и хранения данных внутри программы (необходимы, когда используются редко изменяющиеся данные, например справочные).

Общий вид операторов:        DATA c1,c2,...ci,...cn

                                                           (список констант)

                                               READ x1,x2,...,xi,...,xn

                                                          (список переменных)

где    DATA, READ – имена операторов;

         хi – имя переменной;

         сi – константа (числовая или текстовая).

Работа операторов: последовательно каждой величине хi оператора READ присваивается значение сi из оператора DATA, т. е. действие операторов равносильно выполнению операций: х1 = с1; х2 = с2; … xn = cn

Пример:     DATA 30, 40, "ТЕКСТ"

                   READ А, В, С$

В результате выполнения операторов переменной А присваивается значение 30, переменной В – 40, переменной С$ – "ТЕКСТ".

 

Оператор RESTORE. Это оператор без аргументов. Служит для повторного чтения одних и тех же данных операторами READ. После выполнения оператора RESTORE оператор READ начинает чтение данных с первого элемента оператора DATAс1).

Пример: после выполнения операторов

DATA 5, 17, 30, 50

READ А, В

RESTORE

READ С, Х

величины А, В, С, Х получают значения 5, 17, 5, 17.

 

Оператор вывода PRINT. Он служит для вывода информации на экран монитора.

Общий вид оператора:          PRINT [список вывода]

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

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

2) если разделитель запятая (,), то под каждое выводимое данное отводится определенное количество символов (зона) – экран разбивается на 5 колонок по 14 позиций в каждой. Такой формат называется «зонным». Каждый оператор PRINT выводит список данных с новой строки.

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

В одном операторе PRINT можно использовать различные разделители («,» и «;»).

Работа оператора: оператор просматривает последовательно элементы списка и для каждого элемента выводит на экран его значение.

Пример 1: в результате выполнения операторов

X=30

PRINT 100; –20; X; "ФАРА"; "ОН"; X–80

на экране получим текст:

100 –20 30 ФРА ОН –50

Пример 2: после выполнения операторов

                   В= –10

                   Н=В

                   Т=100

                   PRINT В, В+Н, –3, –4, 6, 7, Т, "КОНЕЦ"

на экране получим такие две строки:

–10             –20             –3               –4               6

7                 100             КОНЕЦ

Замечание. Операторы INPUT и PRINT позволяют организовать диалог пользователя с ЭВМ (программой).

Пример:     PRINT "Я – ПЭВМ! А как ваше имя?"

INPUT А$                              ‘вводится имя пользователя

PRINT "Здравствуйте,"; А$; "!"       ‘печатается слово «Здравствуйте» и имя

PRINT "Как погода?"

        PRINT "Да, погода"; В$; "!"     ‘печатается фраза, содержащая это слово

 

 
INPUT В$            ‘вводится слово, определяющее характер погоды

 

Функция TAB в операторе PRINT: Она служит для вывода (печати) значения величины в определенных позициях строки экрана (листа бумаги).

Общий вид функции: TAB (n)

где    n – целое число или арифметическое выражение.

Работа оператора PRINT с функцией TAB: оператор PRINT TAB (n); Х выводит значение Х с n-й позиции строки. Нумерация позиций в строке начинается с нуля (в QBASIC с 1. Длина строки программы 80 позиций).

Пример:     С=10

В= –20

PRINT TAB(5); С, TAB(10); В; TAB(20); "МАМА"

получим строки:          10

                                                        –20             МАМА

В этом примере TAB(10) выводит значение В = –20 на следующей строке, так как запятая после С переводит курсор в 14-ю позицию.

 

Вывод информации на печать. Для этого используется оператор LPRINT. Он записывается и работает аналогично оператору PRINT и также использует функцию TAB.

 

Оператор REM. Он служит для включения в текст программы пояснений, необходимых для ее понимания.

Общий вид оператора: REM [текст]

где    REM – признак оператора (замечание, примечание);

         текст – последовательность любых символов языка Бейсик.

Пример: REM Вычисление площади круга

Вместо слова REM можно использовать символ ¢ (апостроф) и записывать оператор в одной строке с любым другим оператором.

Пример: Y=4*X^3+6 ¢Расчет прочности


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


Контрольные вопросы

 

1.     Назовите этапы решения задач на ЭВМ. Охарактеризуйте каждый из них.

2.     Буквы какого алфавита используются в Бейсике?

3.     Какие типы данных в Бейсике вам известны?

4.     Как обозначаются константы и переменные в Бейсике?

5.     Какие типы констант и переменных существуют в Бейсике? Как обозначаются переменные различных типов?

6.     Как записываются числа на языке Бейсик?

7.     Что называется арифметическим выражением в Бейсике? Каков порядок выполнения операций в таком выражении?

8.     Какие математические функции есть в языке Бейсик?

9.     Что такое программа для ЭВМ?

10. Что такое оператор в языке Бейсик? Какие операторы вы знаете?

11. Назначение оператора REM. Выполняется ли он в программе?

12. Каким образом в программу вводятся исходные данные?

13. Как стереть программу а) с экрана; б) из памяти?

14. Каково назначение и работа оператора LET?

15.  Каково назначение операторов INPUT и PRINT в Бейсике? Как записываются эти операторы?

16. Можно ли в операторе INPUT записывать пояснения?

17.  Как обеспечить в программе выдачу результатов на печать?

18.  Как записать в программе пояснения к тексту программы?


Составление линейных программ

 

Программа – это алгоритм, записанный на языке, понятном для ЭВМ.

Программа на языке Бейсик – это последовательности строк (один или несколько операторов, разделяемых двоеточием), содержащие операторы и комментарии.

Линейной называется программа, являющейся записью линейного алгоритма. В ней все операторы выполняются строго последовательно, т. е. после выполнения каждого оператора ЭВМ автоматически переходит к выполнению следующего за ним оператора.

Составление программ производится по такому правилу: для каждого блока схемы записывается соответствующий ему оператор Бейсика, т. е.

 

для блока Начало – оператор REM с названием программы;

для блока Ввод – оператор ввода;

для блока Процесс – оператор присваивания;

для блока вывод – оператор вывода;

для блока конец – оператор END.

 

Задача 1. Вычислить периметр прямоугольного треугольника, если заданы длины его катетов.

В первой строке программы будем записывать оператор CLS.

                   CLS

→               REM ПЕРИМЕТР ТРЕУГОЛЬНИКА

→               INPUT «Ввести катеты А и В»; А, В

 

→               Y=(A^2+B^2)^0.5

 

→               P=Y+A+B

→               PRINT «Гипотенуза Y=»; Y; «Периметр Р=»; Р

 

→               END

Задача 2. Составить программу вычисления значения выражения по формуле . Число Х вводится с клавиатуры.

CLS

REM Вычисление Х

INPUT «Введите число»; Х

Y=(1–X)^2

PRINT «Значение выражения равно»; Y

END


Контрольные вопросы

 

1.     Какая программа называется линейной?

2.     Каким образом можно исправить ошибку в строке?

3.     Назначение клавиш INS и DELETE.

4.     Какие операторы соответствуют блокам алгоритма:

а)    начало;

б)   ввод;

в)   процесс;

г)    вывод;

д)   конец.

5.     Как записывается каждый из этих операторов и как работает?

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Разветвляющиеся программы

 

 

Операторы передачи управления

 

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

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

 

Оператор безусловного перехода

 

Он служит для перехода из одной строки программы к другой.

Общий вид оператора: GOTO n

где    GOTO – имя оператора (переводится – «перейти к…»);

n – номер строки программы.

Работа оператора: оператор обеспечивает переход к строке программы с номером n.

Пример 1.  10 Х=Х+1

                        Р=(Х+2)*3

                       GOTO 10

Здесь оператор перехода обеспечивает циклическое выполнение двух операторов.

Пример 2   Х=3*А

                   GOTO 70

                   У=2*Х

Здесь оператор GOTO 70 позволяет обойти 60-ю строку программы.

 

 
                   70 В=5*Х

Логические выражения в Бейсике

 

В языке Бейсик логические выражения имеют тот же смысл, но записываются по правилам этого языка.

Отношение в Бейсике – это конструкция вида A @ B, где А и В – либо арифметические выражения либо текстовые; под символом @ подразумевается один из знаков операции отношения.

Пример: (LOG(X)+2)<=(ABS(Y–3))

                   “ДА“ < > “НЕТ“

Логические операции в Бейсике изображаются служебными словами:

AND (и);    OR (или);   NOT (не).

Логическое выражение в Бейсике – это отношение или формула, составленная из отношений, круглых скобок и символов логических операций.

Логическое выражение принимает значение «истина» или «ложь» (1 или 0).

 

Условный оператор

 

Он обеспечивает в программе проверку условий и организацию ветвлений.

Общий вид записи оператора (полная форма):

Общий вид записи оператора (неполная форма):

где    IF (если), THEN (то), ELSE (иначе) – служебные слова языка Бейсик;

P1 (P2) – оператор или группа операторов;

<Условие> – логическое выражение, т. е. отношение или составное условие.

Работа оператора: Работа каждого варианта оператора определяется соответствующей схемой разветвляющегося алгоритма

вариант 1                                                            вариант 2

 

 

 

 

 

 

 

 

 

 

 

 

 

После выполнения оператора(ов) Р1 или Р2 во всех случаях обеспечивается переход к следующей строке.

Пример 1: IF X<Y THEN A=X: B=Y ELSE A=Y: B=X

                   PRINT “A=”;A, “B=”;B;

Пример 2:  Y=COS(X)

                   IF(2<=X) AND (10>=X) THEN Y=SIN(X): Z=Y*Y;

                   Y=2: Z=10

Во 2-м примере в случае истинности условия 2 £ Х £ 10 выполняются последовательно операторы Y=SIN(X) и Z=Y*Y, и в противном случае выполняются операторы Y=2: Z=10.


Примеры составления разветвляющихся программ

 

Задача 1. Вычислить значение Y по одной из формул:

       ìX +Z, если X<10 и Z>5,

Y = í

       îX * Z, в остальных случаях.

Решение.    CLS

REM Задача

                        INPUT «Введите числа X и Z»; X, Z

                        А=X*Z

                        IF X>=10 THEN Y=А: GOTO 70

IF Z<=5 THEN Y=А: GOTO 70

Y=X+Z

70 PRINT «Y=»; Y

END

Задача 2. Составить программу ввода величины t – времени в течение суток, и выдачи текста:

«Вы уже проснулись?», если t<10;

«Не пора ли обедать?», если t=12;

«Еще не вечер!», если t³18;

«Как работается?», в остальных случаях.

Решение.    CLS

REM Время

                        PRINT «Который час?»

                        INPUT Т

                        С$ = «Вы уже проснулись?»

Р$ = «Не пора ли обедать?»

IF Т<10 THEN PRINT С$: GOTO 100

IF Т=12 THEN PRINT Р$: GOTO 100

IF Т>=18 THEN PRINT «Еще не вечер!»: GOTO 100

PRINT «Как работается?»

100 END


Контрольные вопросы

 

1.     Какая программа называется разветвляющейся?

2.     Для чего служат операторы передачи управления?

3.     Каково назначение и общий вид записи оператора безусловного перехода?

4.     Что такое отношение и логическое выражение в языке Бейсик?

5.     Как записать оператор условного перехода в полной форме?

6.     Чем отличается от него условный оператор в неполной форме?

7.     Можно ли после оператора ELSE вновь записать команду ветвления?

8.     Можно ли в качестве условия указать: а) математическую функцию; б) арифметическое выражение?

9.     Можно ли в команде ветвления вычислить и вывести на экран более одного арифметического выражения?


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

 

Циклической называется программа, которая является записью циклического алгоритма.

 

Циклические программы с использованием операторов

передачи управления

 

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

В этом случае блок проверки окончания цикла и блок изменения аргумента цикла будут изображаться оператором-строкой вида:

IFусловиеTHEN P1: GOTO n

Работа операторов определяется соответствующей схемой алгоритма.

Задача. Составить алгоритм и программу, вычисляющую значения функции
Y = X3 + BXC при Х = 2, 4, 6, 8, 12 (используя цикл «пока» – с предусловием и цикл «до» – с постусловием).

Решение. Составим программу, соответствующую схеме алгоритма.

а)      CLS

REM Цикл «пока»

INPUT “Ввести переменные”; B, C

X = 2

10 IF X < 12 THEN Y = X^3 + B*X – C

PRINT X, Y

X: = X + 2

END

 
GOTO 10

б)                                   CLS

                                      REM Цикл «до»

                                INPUT B, C

 

                                        X = 2

да

 
 


         10 Y: = X3 + B*X – C

 

 

                PRINT X, Y

 

               X = X + 2

 

 

               IF X < 12 THEN GOTO 10

    END

 

 

 

Циклические программы с операторами цикла

 

В языке Бейсик есть специальные операторы цикла, позволяющие создавать более компактные программы – операторы FOR и NEXT (пригодны для описания алгоритмов с заданным числом повторений).

Общий вид записи операторов:

FOR I = n TO k STEP шаг                                 (заголовок цикла)

NEXT I                                                    


где    FOR – имя оператора (переводится «для»);

I – управляющая переменная цикла (целого типа)

n – начальное значение управляющей переменной;

k – конечное значение управляющей переменной;

TO, STEP – символы языка Бейсик (переводятся «до», «шаг»);

P – оператор или группа операторов языка;

NEXT – имя оператора (переводится «следующий»)

Исключение. Если шаг равен единице, то конструкцию STEP 1 можно опустить.

Работа операторов FOR и NEXT определяется соответствующей схемой алгоритма.

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

Решение.    CLS

                   INPUT “Ввести переменные”; B, C

FOR Х = 2 TO 12 STEP 2

                   Y = X^3 + B*X – C

                   PRINT “X=”; X; “Y=”; Y

                   NEXT Х

                   END

 

Задача 2. Составить алгоритм и программу, которая выводит на экран все числа от 4 до 10.

Решение.    CLS

                   FOR I = 4 TO 10

                   PRINT I

                   NEXT I

                   END


Как выводится результат в этом случае (в столбик).

Поставьте точку с запятой в операторе PRINT и запустите программу ещё раз. Что изменилось? (результат выводится в строчку).

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


Контрольные вопросы

 

1.     Что такое циклическая программа?

2.     Как на языке Бейсик кодируется цикл-пока и цикл-до?

3.     Как на языке Бейсик кодируется цикл со счетчиком?

4.     Как изменяется значение счетчика цикла?

5.     Можно ли после операторов FOR и NEXT указывать разные переменные?

6.     Каким образом можно выйти из цикла?

7.     В каком случае начальное значение переменной в цикле может быть больше его конечного значения?

8.     Где располагается оператор PRINT, если надо получить: а) все промежуточные результаты вычислений; б) конечный результат?

9.     Что называется зацикливанием процесса?

10. Как организовать вывод результатов расчета в виде таблицы?

 


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

 

Понятие «подпрограммы» – одно из важнейших в программировании. Использование подпрограмм – наиболее мощное средство повышения эффективности применения ЭВМ и снижения затрат на разработку программ.

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

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

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

При этом п/п может решать каждый раз одну и туже задачу с разными значениями исходных данных.

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

Целесообразно использовать п/п тогда, когда в процессе решения задачи многократно встречается некоторая подзадача.

Использование подпрограмм позволяет существенно уменьшить объем рабочей программы.

!

Вспоминаем блок-схему основного и вспомогательного алгоритма и правила выполнения этих алгоритмов

С термином «подпрограмма» тесно связано понятие – оператор вызова подпрограммы.

 

Оператор вызова п/п.

 

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

Общий вид оператора:

GOSUB n

где    GOSUB – имя оператора (означает «перейти в п/п);

n – номер строки-заголовка п/п.

Работа оператора:

Оператор запоминает номер строки программы, следующей за ним по тексту, и переходит к выполнению п/п, начиная с n-й строки.

 

Оператор RETURN

 

Оператор RETURN обеспечивает возврат из п/п в рабочую программу непосредственно к строке, следующей за оператором GOSUB.

 

Структура рабочей п/п и правила выполнения п/п

 

REM название программы

. . . .

<операторы>

                   . . . .

                   вычисление исходных величин для п/п

 

GOSUB 200   ‘оператор вызова п/п

 

запоминание результатов п/п

. . . .

<операторы>

. . . .

END

 


200 REM название подпрограммы

                   . . . .

                   <операторы>

                   . . . .

                   RETURN

 



Контрольные вопросы

 

1.     Что такое подпрограмма?

2.     Для чего служат подпрограммы?

3.     В каком случае рекомендуется применять подпрограммы?

4.     Как записывается оператор вызова подпрограммы? Каково его назначение?

5.     Каким образом обеспечивается возвращение в рабочую программу из подпрограммы?

6.     Как передаются значения исходных данных в подпрограмму?

7.     Как в бейсике оформляются подпрограммы?

8.     Каков механизм выполнения подпрограмм в Бейсике?

9.     Можно ли создать подпрограмму в подпрограмме? Сколько операторов RETURN надо включить в программу?

10.  Возможно ли использовать один оператор RETURN для работы с несколькими операторами GOSUB?

11.  Почему после оператора RETURN не указывается номер строки?


Массивы в языке Бейсик

 

 

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

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

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

Таблица данных, состоящая из K строк и L столбцов, называется двумерным массивом. Каждому элементу массива соответствует свой номер строки и столбца, причем на первом месте принято указывать номер строки

Каждый массив должен иметь свое имя – латинские буквы (отвечает тем же правилам, что и имя переменной).

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

Если в программе используется массив, то предварительно его нужно описать с помощью специального оператора DIM.

 

Оператор описания размерности массива DIM.

 

Размерность массива – это максимальное число элементов массива (ячеек).

Общий вид оператора:

1)    DIM <имя> (k)

2)    DIM <имя> (m, n)

где    DIM – имя оператора (от слова dimension – размерность);

         <имя> – имя массива;

k, m, n– размеры массива, т. е. k – максимальное число элементов одномерного массива; m (n) – максимальное число строк (столбцов) двумерного массива.

Работа оператора:

Оператор выделяет в памяти ЭВМ нужное количество пустых ячеек, которые требуются для хранения данных.

Особенности записи оператора:

1)    в одном операторе DIM можно описывать любое число массивов;

2)    оператор DIM помещается в начале программы;

3)    не следует использовать в программе простую переменную и массив с одним и тем же именем.

 

Ввод данных в массив и вывод их из массива

 

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

Заполнение массивов осуществляется либо вводом данных с клавиатуры, либо путем их заблаговременной записи в память ЭВМ.

 

Ввод данных в одномерный массив

 

1) с помощью операторов цикла:

 

FOR i = 1 TO n

INPUT A (i)

NEXT i


2) с помощью операторов DATA, READ (если заданы конкретные значения):

 

DATA 30, 40, 50, –10

FOR i = 1 TO n

READ A (i)

NEXT i

 

В результате выполнения операторов первому элементу массива А присваивается значение 30, второму – 40, третьему – 50 и т. д.

 

 

3) с помощью датчика случайных чисел:

 

FOR i = 1 TO n

A (i) = RND(1)*100

NEXT i

 

Вывод (или печать) одномерного массива

 

FOR i = 1 TO n

PRINT A (i);

NEXT i

 

Задание 1. Вывести одномерный массив, состоящий из 8-ми элементов.

DIM A (8)

FOR i = 1 TO 8

INPUT “введите”, i; “-й элемент”; A (i)

NEXT i

FOR i = 1 TO 8

PRINT A (i);

NEXT i

 

Задание 2. Вывести одномерный массив произвольной размерности.

!

Переменные-размеры массивов должны быть определены до обращения к оператору DIM.

 

INPUT “введите размерность”; n

DIM A (n)

FOR i = 1 TO n

INPUT “введите”, i; “-й элемент”; A (i)

NEXT i

FOR i = 1 TO n

PRINT A (i);

NEXT i

 

Задание 3. Вывести массив, заданный датчиком случайных чисел произвольной размерности.

 

INPUT “введите размерность”; n

DIM A (n)

FOR i = 1 TO n

A (i) = RND(1)*100

NEXT i

FOR i = 1 TO n

PRINT A (i);

NEXT i

 

Ввод данных в двумерный массив

 

1) по строкам:

 

FOR i = 1 TO m

PRINT “введите”, i; “-ю строку”

FOR j = 1 TO n

INPUT A (i, j)

NEXT j

NEXT I

2) по столбцам:

 

FOR j = 1 TO n

PRINT “введите”, j; “-ый столбец

FOR i = 1 TO m

INPUT A (i, j)

NEXT i

NEXT j

 

3) с помощью датчика случайных чисел.

 

FOR i = 1 TO m

FOR j = 1 TO n

A (i, j) = RND(1)*100

NEXT j

NEXT i

 

4) с помощью операторов DATA, READ

 

DATA (список значений через запятую, количеством M*N)

FOR i = 1 TO m

FOR j = 1 TO n

READ A (i, j)

NEXT j

NEXT i

 

Вывод (или печать) двумерного массива

 

FOR i = 1 TO m

FOR j = 1 TO n

PRINT A (i, j);

NEXT j

PRINT

NEXT i

Задание 1. Заполнить массив А (2, 2) данными, введенными с клавиатуры и вывести его на экран монитора.

DIM A (2, 2)

FOR i = 1 TO 2

FOR j = 1 TO 2

INPUT A (i, j)

NEXT j

NEXT I

FOR i = 1 TO 2

FOR j = 1 TO 2

PRINT A (i, j);

NEXT j

PRINT

NEXT I

 

Задание 2. Вывести на экран массив В (3, 4). Массив заполнить с помощью датчика случайных чисел.


Контрольные вопросы

1.     Что такое массив? Какие виды и типы массивов вы знаете?

2.     Для чего служит оператор DIM?

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

4.     Что значит заполнить массив?

5.     Как происходит заполнение одномерного массива? двумерного массива?


Символьные переменные и выражения

в языке Бейсик

 

Символьной называется переменная, которая имеет то же имя, что и числовая, но в конце ее имени стоит специальный символ $, а значение символьной переменной заключено в кавычки. Значениями символьных переменных могут быть комбинации любых символов, имеющихся на клавиатуре (от одной буквы, слова до любого набора).

Пример:    A$ = “M”

                   B$ = “Информатика”

                   X$ = “Лаб. работа”

                   Y$ = “256”

                   AM$ = “А! R? G

Основными операциями над символьными данными являются:

1) операция конкатенации (склеивания)

Пример: В$ = «МА» + «МА» + «!»

2) выделение подслов (позволяет образовывать новые слова)

В Бейсике есть специальные операторы для работы с символьными переменными.

 

Функция

Описание

Пример

Результат

LEN (A$)

Определяет длину символьной переменной (т.е. количество символов в ней)

A$ = “Информатика

PRINT LEN (A$)

11

LEFT$ (A$, n)

Выделяет из слова слева n букв

A$ = “Информатика

PRINT LEFT$ (A$, 4)

Инфо

RIGHT$ (A$, n)

Выделяет из слова справа n букв

A$ = “Информатика

PRINT RIGHT$ (A$, 9)

форматика

MID$ (A$, n, k)

Выделяет из слова, начиная с n-й буквы к букв

 

A$ = “Информатика

PRINT MID$ (A$, 3, 6)

формат


 


Функция

Описание

Пример

Результат

STR$ (n)

Переводит число из обычной формы в символьную

 

 

VAL (n$)

Переводит символьную форму в числовую

 

 

ASC (A$)

Определяет код символа

A$ = “Z”

PRINT ASC (A$)

90

CHR$ (n)

Определяет символ по его коду

n = 65

PRINT CHR$ (n)

A

 

Пример 1: Составить из слова «КРУГОВОРОТ» слова «ВОРОТ», «КРУГ», «ГОВОР»

Решение:    a$ = “Круговорот”

                   PRINT RIGHT$ (a$, 5)

                   PRINT LEFT$ (a$, 4)

                   PRINT MID$ (a$, 4, 5)

 

Пример 2: Дано произвольное число N. Приписать по единице в начало и в конец записи числа.

Решение:    INPUT “введите число”; n

                   a$ = STR$ (n)

                   b$ = “1”

                   c$ = b$ + a$ + b$

                   n1 = VAL (c$)

                   PRINT “новое число =”; n1

 

 

 


Контрольные вопросы

 

1.     В чем отличие символьной переменной от числовой?

2.     Назовите основные операции с символьными переменными.

3.     С помощью каких строковых функций можно образовывать новые слова?

4.     Назначение функций ASC и CHR.

 


Графические возможности на языке Бейсик

 

ЭВМ может представлять информацию в наглядной графической форме. Для начала работы с графикой нужно знать некоторые параметры монитора.

Поверхность экрана состоит из отдельных точек (пиксель), расположенных рядами с равным числом точек в строке.

Перед началом работы нужно перейти в графический режим с помощью оператора SCREEN 12.

При этом на плоскость экрана накладывается определенная система координат, и каждая точка определяется своими координатами:

 

 

 

 

 


Графические операторы

 

1)      PSET (x, y), c

x, y

 
высвечивает точку с указанными координатами и закрашивает ее в цвет (это число 0 ≤ с ≤ 15)                                                                              ·

 

2)      PRESET (x, y)

         закрашивает точку в цвет экрана                               

 

3)      LINE (x1, y1) – (x2, y2), c

         выводит на экран изображение линии с указанными координатами концов

x1, y1

 
                                                                                     ·

 

x2, y2

 
                                                                                                                           ·


4)      LINE (x1, y1) – (x2, y2), c, B

x1, y1

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

                                                                 

x2, y2

 
 

 

 


5)      LINE (x1, y1) – (x2, y2), c, BF

         выводит на экран изображение прямоугольника и закрашивает его в указанный цвет

 

 

 

 

Задание: определить какому числу какой цвет соответствует.

 

Овал:            ·
6)      CIRCLE (x, y), r, c

         выводит на экран изображение окружности с указанным

         цветом границы

                                                                                             

 

7)      PAINT (x, y), c заливки, с границы

         закрашивает фигуру выбранным цветом заливки до указанного цвета границы (точка с координатами x, y должна лежать внутри фигуры)

 

7)      CIRCLE (x, y), r, c, a1, a2

         выводит на экран дугу окружности.

         a1, a2 – углы дуги окружности, задаваемые в радианах


8)      CIRCLE (x, y), r, c, , , m

         выводит на экран эллипс

 

если m > 1

        

если 0 < m < 1

 


Контрольные вопросы

 

1.     Как перейти в графический режим?

2.     Как установить начало координат в центр экрана?

3.     Назначение оператора LINE.

4.     Назначение оператора CIRCLE.

5.     Правила применения оператора PAINT.

6.     Как задать сжатие окружности, чтобы получить горизонтальный эллипс, вертикальный эллипс?

7.     Каким образом можно получить верхнюю полуокружность, нижнюю полуокружность?

8.     Где должна находиться точка, с которой начинается закрашивание?

9.     Что произойдет с рисунком, если закрасить незамкнутый контур?

Просмотрено: 0%
Просмотрено: 0%
Скачать материал
Скачать материал "Курс лекций по дисциплине «ИНФОРМАТИКА» для студентов, обучающихся на базе основного общего образования"

Методические разработки к Вашему уроку:

Получите новую специальность за 2 месяца

Директор дома творчества

Получите профессию

Технолог-калькулятор общественного питания

за 6 месяцев

Пройти курс

Рабочие листы
к вашим урокам

Скачать

Скачать материал

Найдите материал к любому уроку, указав свой предмет (категорию), класс, учебник и тему:

6 671 143 материала в базе

Скачать материал

Другие материалы

Вам будут интересны эти курсы:

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

Авторизуйтесь, чтобы задавать вопросы.

  • Скачать материал
    • 20.04.2017 1608
    • DOCX 229 кбайт
    • Оцените материал:
  • Настоящий материал опубликован пользователем Лачугина Любовь Сергеевна. Инфоурок является информационным посредником и предоставляет пользователям возможность размещать на сайте методические материалы. Всю ответственность за опубликованные материалы, содержащиеся в них сведения, а также за соблюдение авторских прав несут пользователи, загрузившие материал на сайт

    Если Вы считаете, что материал нарушает авторские права либо по каким-то другим причинам должен быть удален с сайта, Вы можете оставить жалобу на материал.

    Удалить материал
  • Автор материала

    Лачугина Любовь Сергеевна
    Лачугина Любовь Сергеевна
    • На сайте: 8 лет и 3 месяца
    • Подписчики: 0
    • Всего просмотров: 26976
    • Всего материалов: 20

Ваша скидка на курсы

40%
Скидка для нового слушателя. Войдите на сайт, чтобы применить скидку к любому курсу
Курсы со скидкой

Курс профессиональной переподготовки

Экскурсовод

Экскурсовод (гид)

500/1000 ч.

Подать заявку О курсе

Курс профессиональной переподготовки

Создание и обеспечение электронного архива с использованием информационно-коммуникационных технологий

Специалист по формированию электронного архива

600 ч.

9840 руб. 5600 руб.
Подать заявку О курсе
  • Сейчас обучается 30 человек из 22 регионов
  • Этот курс уже прошли 36 человек

Курс повышения квалификации

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

36 ч. — 180 ч.

от 1580 руб. от 940 руб.
Подать заявку О курсе
  • Этот курс уже прошли 23 человека

Курс повышения квалификации

Методика преподавания информатики в начальных классах

72 ч. — 180 ч.

от 2200 руб. от 1100 руб.
Подать заявку О курсе
  • Этот курс уже прошли 67 человек

Мини-курс

Тревожные расстройства: диагностика и причины

4 ч.

780 руб. 390 руб.
Подать заявку О курсе
  • Сейчас обучается 39 человек из 21 региона
  • Этот курс уже прошли 16 человек

Мини-курс

Основы управления проектами

6 ч.

780 руб. 390 руб.
Подать заявку О курсе

Мини-курс

Успешая команда: опросы, сторис

3 ч.

780 руб. 390 руб.
Подать заявку О курсе