Урок 1. Моя первая программа

реклама
Урок 1
Урок 2
Урок 3
Урок 4
Урок 5
Урок 6
Урок 7
Урок 8
Урок 9
Урок 10
Урок 11
Урок 12
Урок 13
Урок 14
Составила: Малахова Т.М.
учитель информатики МОУ «СОШ №2 г.Медногорска»
Урок 1.
Моя первая программа
Нашей первой программой будет программа-приветствие. Она просто выведет текст на
экран компьютера и завершит свою работу.
Мы также рассмотрим основные правила оформления программы.
Первая строка-заголовок программы.
Program-служебное слово;
First – имя нашей программы, его придумываете сами. В конце строки стоит
«;» При перечислении инструкций Паскаля между ними нужно ставить «;» .
program First;
begin
Дальше идет тело программы.
Оно всегда начинается со слова begin. Здесь в конце строки нет «;»
write('Привет,');
Следующая команда или оператор выводит слово ПРИВЕТ на экран;
текст для вывода всегда заключается в апострофы. (' ' ).
writeln('друзья!');
writeln('Это вторая строка')
end.
Этот оператор выводит на экран слово ДРУЗЬЯ! и переводит курсор на
следующую строку. Т.к. символы «ln» в операторе writeln означают
«line» - строка.
Здесь в конце строки «;» не обязательна, т.к. это последний
оператор (перед end «;» можно не ставить).
End – заканчивает тело программы и в
конце обязательно стоит точка.
В результате выполнения программы получаем
Как заложить программу в компьютер?
Для начала рассмотрим этапы, которые должен пройти пользователь(программист) для того,
чтобы увидеть на экране правильные результаты работы программы.
• Редактирование текста программы (команда Edit).
1 этап
2 этап
• Компиляция программы (команда Compile).
• Программа пользователя переводится из символов языка программирования в двоичный
код компьютера.
• При обнаружении ошибок - возврат к этапу 1.
3 этап
• Построение программы (команда Build).
• Подгружаются библиотечные модули.
• Готовая программа в двоичном коде сохраняется на диске.
• При обнаружении ошибок - возврат к этапу 1.
4 этап
• Запуск программы на выполнение (команда Run).
• При обнаружении ошибок - возврат к этапу 1.
Схема прохождения этапов создания программы на компьютере.
начало
Edit (редактирование)
Да
Ошибка?
Нет
Compile (компиляция)
Да
Ошибка?
Нет
Build (построение)
Да
Ошибка?
Нет
Run (выполнение)
Да
Ошибка?
Нет
Конец
Запустите программу Паскаль АВС со значка на рабочем столе
Главное меню
Переход - F10
Окно редактирование
Переход из главного меню - Alt
Окно вывода
Запуск на выполнение
программы – F9
Наберите в окне редактирования свою первую программу, запустите на выполнение
кнопкой F9 .
program First;
begin
write('Привет, ');
writeln('друзья!');
writeln('Это вторая строка')
end.
Процессы компиляции и запуска программы на выполнение можно
объединить, вызвав команду Run (F9) сразу после набора текста
программы.
Выход из программы осуществляется с помощью
команды Exit в меню File.
Задание 1.
Напишите программу, которая выводит на экран текст:
Важно
Не путать Write
и Writeln !
Проверяем.
Задание 2.
Напишите программу, которая выводит на экран фразу «Всем привет!»
20 раз – в таблице из 5 строк по 4 столбца.
Подсказка.
Для задания расстояния между колонками используйте несколько
пробелов. Напишите сначала только один оператор write, который выведет
одну фразу (не забудьте про пробелы). Затем скопируйте его еще 4 раза,
чтобы получить целую строку. В конце не забудьте поставить переход на
следующую строку (writeln).
Копировать begin и end не нужно!
Проверяем.
Урок 2. Оформление текста на экране.
Модуль CRT .
Особый дополнительный модуль Паскаля подчеркивает, что он умеет
управлять способами вывода на экран. Содержит набор программ (процедур),
позволяющих задавать цвет символов, очищать экран, устанавливать курсор в любую
позицию экрана и выполнять множество других полезных действий.
Экран можно представить
себе как таблицу из 25 строк
1
80
1
(1,1)
и 80 столбцов.
(80,1)
X
Каждая ячейка этой
таблицы имеет координаты
–X и Y,
где X – номер столбца,
Y- номер строки. Строки
нумеруются сверху вниз от 1
до 25, столбцы – слева право
от 1 до 80.
25
(1,25)
YСхема нумерации позиций экрана для модуля CRT.
Пример использования модуля CRT
CRT – имя подключаемого модуля.
program second;
Блок заканчивается «;»
uses Crt;
Начало основной программы
begin
Вызов процедуры для выбора фонового цвета.
3-номер цвета - светло-голубой.
textbackground (3);
Процедура очистки экрана
ClrScr;
Процедура выбора цвета выдаваемы
символов. В скобках номер выбранного
цвета. (желтый)
textcolor (14);
Процедура установки курсора в точку
экрана с координатами X=40, Y = 10.
GoToXY(40,10);
writeln(‘Все отлично !!!');
Вывод текста в 10 строку, начиная с позиции 40.
delay(1000)
Процедура временной задержки на 1000 мкс.
end.
Конец программы
Смотрим?
Таблица ASCII кодов (цвета.)
0
black
Черный
1
blue
Синий
2
green
Зеленый
3
cyan
Голубой
4
red
Красный
5
magenta
Фиолетовый
6
brown
Коричневый
7
lightgray
Светло-серый
8
darkgray
Темно-синий
9
lightblue
Ярко-синий
10
lightgreen
Ярко-зеленый
11
lightcyan
Ярко-голубой
12
lightred
Ярко-красный
13
lightmagenta
Ярко-фиолетовый
14
yellow
Желтый
15
white
белый
Задание 3.
Написать программу, выводящую два любых сообщения
в левом верхнем и правом нижнем углах экрана.
Каждое сообщение выводить свои цветом.
Проверим?
Алгоритм вывода цветных сообщений в левом верхнем и правом нижнем углах экрана.
Начало
Задать цвет экрана
Очистить экран
Задать цвет символов 1-го сообщения
Позицировать курсор в левый верхний угол
Вывод 1-го сообщения
Временная задержка
Задать цвет символов 2-го сообщения
Позицировать курсор в правый нижний угол
Вывод 2-го сообщения
Временная задержка
Конец
Задание 4.
Написать программу, которая очищает экран и выводит
слова: red, green, blue, yellow каждое своим цветом в центр
четвертей экрана (если экран условно разбить на 4 части, как
показано на рисунке).
green
blue
yellov
red
Проверим?
Задание 5
Поставить в соответствие действия оператора (левый столбец)
действиям оператора языка Паскаль (правый столбец).
Очистка экрана
Позицирование курсора в левый нижний угол экрана
Crt;
TextBackGround(red); ClrScr;
Заказ красного цвета фона экрана
Write (‘Happy New Year’ );
Заливка экрана красным цветом
GoToXY(78,1);
Вывод в текущую позицию экрана ‘Happy New Year’ с
переходом курсора на новую строку
Textcolor(red);
Позицирование курсора в правый верхний угол экрана
Установка красного цвета текста
Вывод в текущую позицию экрана ‘Yappy New Year’ без
перехода курсора на новую строку
Библиотека среды Паскаль для работы в текстовом
режиме
Начало и конец тела программы
Вывод в центр экрана ‘Hello’
Вывод текста ‘Hello’ цветом №12
Textcolor(12); write(‘Hello’);
gotoXY(1,23);
Writeln(‘Happy New Year’ );
Begin end
TextBackGround(red);
clrscr;
GoToXY(35,12); write(‘Hello’);
Задание 5-1
Вывести по центру экрана в 3 строки на зеленом фоне
желтым цветом выражение: «Hello! Я изучаю Паскаль»
« Hello!
Я изучаю
Паскаль»
Урок 3. Как включить в работу числовые данные
Память
А
00153
15
B
00154
8
Sum
00155
-7
Значения
переменных
00156
00158
Имена
переменных
Адреса
ячеек
Ячейки
памяти
рис. Хранение переменных в
памяти компьютера
Данные программы принято называть величинами.
Величины, которые меняются, называют переменными.
Величины, которые не меняются, называют постоянными.

Идентификатор(имя) всегда должен начинаться с латинской буквы, после
которой может следовать некоторое число латинских букв, цифр или символов
подчеркивания . В имени не должно быть пробелов, запятых или других
непредусмотренных знаков.
Тип Integer. Оператор присваивания. Вывод на экран
Для хранения целых числе в Паскале используется специальный тип данных – Integer.
Пример работы с целочисленными переменными.
program product;
var
A,B,C: integer;
begin
A:=5;
writeln(A);
Раздел описания переменных.
Всегда начинается со слова var (переменная)
Имена в списке через « , »; в конце списка через
двоеточие указывается тип данных: Integer – целый.
Оператор присваивания.: в
переменную(ячейку) А записали число 5.
Вывод на экран содержимое переменной А.
Вывод на экран символа А.
writeln('A');
A:=A+1;
Запишем в переменную А число, которое до
этого в ней не было, но увеличенное на 1.
B:=7;
C:=A*B;
Вывод содержимого ячейки С с
пояснительным текстом.
writeln('product=' ,C)
end.
Смотрим !
Рассмотрим операции, которые можно выполнять с целыми
числами и целочисленными переменными.
program action;
var
A,B,C: integer;
begin
Набрать программу и
a:=17;
пройти все этапы запуска.
b:=3;
c:=a*b;
writeln('17*3=‘,c);
c:=a div b; writeln('17 div 3=' ,c);
c:=a mod b; writeln('17 mod 3=',c);
c:=a+b; writeln('17+3=',c);
c:=a-b; writeln('17-3=',c)
end.
Проверим?
Несколько примеров операций div и mod
Вспомним деление столбиком
23 5
20 4
3
23 div 5 = 4
23 mod 5 = 3
Запомните:
- остаток от делимого и есть результат операции mod;
- целое число, которое получилось в результате деления , называется
целочисленным. Это результат операции div.
Проверим себя, вспомнив 2 класс:
5 div 2 = 2
5 mod 2 = 1
6 div 2 = 3
6 mod 2 = 0
40 div 6 = 6
40 mod 6 = 4
Задание 6.
Даны 3 целых числа – A, B, C. Вычислить их сумму и произведение.
Составит блок-схему алгоритма решения задачи.
Сверим ?
Задание 6-1.
Дана длина ребра куба (целое число).
Найти объем куба и площадь его боковой поверхности.
Подумайте, как вставить комментарий в программу.
Сверим?
Урок 4. Стандартные функции Integer
Многие стандартные действия с числовыми данными выполняются путем
вызова функций из библиотеки Паскаля. Такие функции называются
стандартными функциями.
Функция abs(x),вычисляет
абсолютное значение аргумента X,
т.е. модуль X.
program Infuct;
var
a,b,c: integer;
begin
a:=-2;
b:=abs(a); writeln('abs(-2)=',b);
c:= sqr(b); writeln('sqr(2)=',c);
c:=sqr(b+b); writeln('sqr(2+2)=',c)
end.
Смотрим?
Функция sqr(x), возводит в квадрат
аргумент X
Стандартные процедуры и функции
Арифметические процедуры и функции.
Abs(x)
Функция определения модуля числа х, где х переменная целого или вещественного типа,
значение совпадают с типом аргумента
ArcTan(x)
Вычисление угла, тангенс которого равен Х радиан
Cos(x)
Вычисление косинуса Х, параметр задает значение угла в радианах
Exp(x)
Экспонента в степени Х, аргумент и значение всегда вещественного типа
Frac(x)
Вычисление дробной части Х Frac (5.67) = 0.67
Int (x)
Вычисление целой части Х
Ln (x)
Натуральный логарифм Х, аргумент и значение вещественного типа
Pi
Возвращает значение числа ПИ
Sin(x)
Вычисление синуса Х. Параметр задает значение угла в радианах
Sqr(x)
Возведение в квадрат, где Х - переменная целого или вещественного типа, значение функции
совпадает с типом аргумента
Sqrt(x)
Извлечение квадратного корна, где Х – переменная целого или вещественного типа, значение
функции всегда вещественного типа
Random
Генерирует значение случайного числа из данного диапазона
Randomize
Изменение базы случайного числа
Mod
Вычисляет остаток, полученный при делении
Div
Вычисляет целую часть от частного, дробная откидывается
Операции отношения
A=b
Числа равны
A<>b
Числа не равны
A>b
Первое число больше второго
A>=b
Первое число больше либо равно второго
A<b
Первое число меньше второго
A<=b
Первое число меньше либо равно второму
Логические выражения
Or
логическое сложение ("ИЛИ")
And
логическое умножение ("И")
Not
логическое отрицание ("НЕ")
Xor
логическое "Исключающее ИЛИ"
Результаты выполнения этих операций над переменными А и В
логического типа приведены в таблице истинности.
A
B
not A
A and B
A or B
A xor B
true
true
false
true
true
false
true
false
false
true
true
false
true
false
true
true
false
false
false
false
false
true
Задание 7. Написать программу вычисления значения следующего выражения:
|39 * 54 - 84²|
Задание 7-1.
Сверим ?
Вычислить по действиям значение выражения:
1) 2-13 mod 7/3 + sqr(4)
2) sqr(9) – 14 div 3* 2 + sqrt(4)
3) 14 – 17 mod 6*2 + abs(0.5 – 2.5)
Задание 7-2.
1) Записать на языке Паскаль следующие формулы:(формулы.doc)
2) Напишите программу для вычисления дискриминанта квадратного
уравнения. Коэффициенты задайте в программе через оператор
присваивания. Составить блок-схему алгоритма решения данной задачи.
Задание 8.
B
В переменные A и B записаны целые
числа (оператором присваивания,
13
например, A:=20; B:=13).
Поменяйте числа в этих переменных
2
местами.
3
Будьте внимательны!
Если записать A:=B, то потеряется
число 20 и получите в двух переменных
20
1
число 13!Воспользуйтесь третьей
переменной – С.
A
c
Схема обмена значений двух переменных через третью ячейку.
В кружках номерами указан порядок операторов присваивания.
Сверим ?
Задание 9.
Выполнить задание 8 без использования третьей переменной.
Используйте действия сложения и вычитания.
Сверим ?
А
20
13
В
Урок 5. Включаем в работу вещественные числа.
Переменные для хранения не целых чисел имеют тип real – вещественный тип.
Пример работы с типом real
program Optel;
var
a,b,c: real;
Формы записи вещественных
переменных
Числа с десятичной точкой могут записываться
в двух формах:
1. Обычная форма:
begin
- 0,7 может быть записано как 0.7 или .7;
a:=3.5;
- 2,1 может быть записана как -2.1
b:=7.6;
2. Запись с экспонентой: число представляется в
c:=a+b;
виде мантиссы, т.е. дробной части числа,
writeln(‘Сумма=',c)
умноженной на 10 в некоторой степени.
end.
- 2700 = 2,7*10³ (число 10 записывается в виде
буквы E, а за ней идет величина степени: 2.7E3;
- 0,002 = 2*10³ соответствует запись 2E-3.
Вещественные операции
program Operatin;
var
a,b,c: real;
begin
a:=17.3;
b:=3.4;
c:=a*b; writeln('a*b=',c);
c:=a/b; writeln('a/b=',c);
Набрать программу и
запустить на выполнение.
c:=a+b; writeln('a+b=',c);
Сверим?
c:=a-b; writeln('a-b=',c)
end.
Задание 10.
Вычислите выражение:
7.47893798.2456*76.2833
883.5995618.332
Сверим?
Урок 6. Как представляются переменные вещественного типа в
памяти компьютера
В экспоненциальной форме представления числа можно выделить 2 части:
мантиссу, т.е. значащие цифры числа, и порядок – степень десятки ( в общем
случае это степень основания системы счисления, в которой записано это
число).
Ячейка памяти, выделенная для переменно вещественного типа, должна
содержать следующие элементы: знак числа, знак порядка и значение
мантиссы – естественно, все в двоичном представлении.
8 бит
Знаковый
бит
Порядок
23 бит
Мантисса
Главное – понять принцип хранения чисел с плавающей точкой.
Формат (длина)
в байтах
Примерный
диапазон
абсолютных
значений
Количество
значащих
десятичных цифр
Одинарный (single)
4
10-45…1038
7 или 8
Вещественный (real)
8
10-39…1038
11 или 12
Двойной (double)
8
10-324…10308
15 или 16
Расширенный (extended)
10
10-4932…104932
19 или 20
Тип переменной
В программе могут одновременно встречаться переменные разных типов.
Как их совместить?
Уточним правила преобразования типов:
-для хранения данных типа integer используется 2 байта, а для real
необходимо 6 байт.
Это значит, что число типа integer можно поместить в ячейку типа real
(целая часть будет равна этому числу, а дробная будет равна нулю).
А вот число типа real в ячейку типа integer никак не поместиться.
Чтобы поместить его туда, нужно явно указать, что делать с дробной
частью числа.
Для этого предусмотрены функции trunc и round. Обе они возвращают
результат типа integer.
Правила приоритета в выполняемых действиях.
1. Действия над переменными, стоящими в скобках, выполняются в первую
очередь.
2. После вычисления значений всех скобок вычисляются все функции.
3. После функций выполняются умножение и деление. Они меют одинаковый
приоритет.
4. Следующие по приоритету – сложение и вычитание.
5. Операции одинакового приоритета выполняются слева направо.
Действия над данными разных типов
Сведем воедино операции и функции по работе с вещественными и целыми величинами.
Разделим все функции/операции на 6 категорий:
1. Результат операций +, - и * зависит от типа аргументов. Если хоть один из них имеет
Real, то и результат будет иметь тип Real. Т.к. У данных типа Real дробная часть, а у
Integer – нет. Даже если в вещественной переменной хранится целое число, оно все
равно имеет дробную часть, только она равна 0. Т.Е. если хотя бы у одно из аргументов
есть дробная часть, то в в результате выполнения операции она никуда не исчезает.
Поэтом у результат тоже имеет дробную часть (Real).
2. Результат операции вещественного деления по определению всегда имеет дробную
часть.
3. Операции целочисленного деления определены только для целых чисел. Поэтому
результат тоже всегда целое число.
4. Функции Abs и Sqr
Скачать