- Преподавателю
- Информатика
- Рабочая тетрадь по программированию в Pascal 8 класс
Рабочая тетрадь по программированию в Pascal 8 класс
Раздел | Информатика |
Класс | 8 класс |
Тип | Другие методич. материалы |
Автор | Сергунина О.В. |
Дата | 16.11.2015 |
Формат | docx |
Изображения | Есть |
МОУ «Тумская СОШ №3»
Составитель: Сергунина Ольга Викторовна, учитель информатики и английского языка
Электронная тетрадь по программированию
8 класс
Оглавление
Урок 1. Знакомство с языком Pascal
Цель урока:
-
познакомиться с видами языков программирования;
-
познакомиться с меню программы Pascal.
1. Охарактеризуйте языки программирования
Машинные языки
Языки низкого уровня
Языки высокого уровня
2. Соотнесите языки с названиями видов, к которым они относятся.
-
Машинные языки
-
Языки высокого уровня
-
Языки низкого уровня
-
Автокод
-
Алгол
-
Паскаль
-
Ассемблер
-
Пролог
-
Алгол-68
-
APL
3. Дополните предложения.
1. Алгоритмический язык Паскаль разработан _________________.
2. Язык Паскаль в __________________ годах.
3. Язык получил свое название в честь ___________________, который прославился изобретением _______________________.
4. Паскаль - язык ___________________ уровня программирования.
4. Соотнесите названия разделов меню TurboPascal на английском и их эквивалентами на русском.
-
File
-
Debug
-
Edit
-
Window
-
Run
-
Редактировать
-
Файл
-
Окна
-
Выполнение программы
-
Отладка
5. Подпишите основные разделы окна программы Turbo Pascal и основные пункты меню.
Урок 2. Структура программы.
Цель урока:
-
Познакомиться со структурой программы;
-
Познакомиться с характеристиками разделов программы.
-
Охарактеризуйте следующие разделы программы
-
Program
Uses
Const
Var
begin
Раздел операторов;
end
2. Напишите правило идентификатора
Идентификаторы - имена _________ и конструкций программы. Имя должно быть меньше ________ символов, но различимы только _____ символа.
Имя состоит из латинской _____, за которой могут следовать буквы, цифры или символ подчеркивания. Нельзя в качестве имен использовать _______________, и стандартные имена, которые служат для обозначения некоторых констант, типов, процедур, функций, файлов.
3. Какие идентификаторы не могут быть использованы в Pascal?
-
ф2;
-
бь;
-
m1;
-
_h;
-
_7;
-
n.
4. Подпишите разделы программы.
Program privetstvie;
begin
writeln('Good morning');
end.
5. Дополните определения.
-
Транслятор - программа-переводчик, которая преобразует программу, написанную на языке программирования в программу, записанную в машинном коде.
-
Компилятор - перевод исходной программы с языка _______ на язык ____________.
-
_____________ - истолкователь, переводит и выполняет программу строка за строкой.
-
Исправьте ошибки в программах.
-
program slova;
начало
Writeln(Programmirovanie)
End;
-
Programma еее
Begin;
Writln('zadacha 1;
end
-
Определите, что будет выведено в результате выполнения данной программы.
program text;
begin
writeln('Машина отлично задачу решила.');
writeln('Мигала, гудела, старалась, спешила!');
{Меня за пятёрку похвалит отец!}
writeln('А как бы машине сказать: «Молодец!»');
{Я завтра пораньше приду поутру и тряпочкой мягкой экраны протру};
end.
-
Написать программу, выводящую на экран вашу фамилию, имя, отчество.
________________________
________________________
_______________________
_______________________
9.Написать программу, выводящую на экран следующий отрывок.
Чтоб ввести в компьютер новость
Я использовать готов:
Мышь, дискету, клавиатуру, джойстик,
Сканер, датчик, микрофон.
program stixotvorenie;
__________________________________
__________________________________
__________________________________
__________________________________
__________________________________
end.
10. Написать программу, выводящую на экран следующий рисунок
a)######
#############
# #
@
#############
b) %
%%%%
%%%%%
program risunok1;
begin
_______________
_______________
_______________
_______________
_______________
_______________
end.
program risunok2;
begin
_______________
_______________
_______________
end.
Урок 3. Типы данных.
Цель работы:
-
познакомиться с разнообразием типов данных;
-
научиться объявлять переменные в разделе описания переменных.
-
Заполните следующую таблицу
Тип данных
Транскрипция
Перевод
Диапазон значений
Integer
Byte
Longint
Real
Double
Extended
2. К какому типу данных относятся следующие числа?
-
188;
-
-20;
-
2.81;
-
-80385;
-
0;
-
10000000000.
3.Какой тип данных нужно написать в программе, если известно, что:
a) x=10; y=8;
var x,y: _________;
b) a= 10.1; b=5.2;
var a,b: _________;
c)m=2; k=1.01;
var
m: ________;
n: _________;
d) c=0; f=0;
var c, f: ________;
Урок 4. Оператор присваивания.
Цель урока:
-
Познакомиться с оператором присваивания;
-
Узнать, как присваивать переменным значениям и научиться практически это выполнять.
1.Ответьте на следующие вопросы:
-
Как записывается оператор присваивания? - _____
-
Как выполняется оператор присваивания? - __________________________________________________________________________________________________________.
-
Допустимо ли присваивание переменной вещественного типа значения выражения целого типа? - _________.
-
Допустимо ли присваивание переменной целого типа значения выражения вещественного типа? - ______.
2.Выполнить следующие действия:
-
Присвоить переменной z 10 - _______________
-
Присвоить переменной m сумму n и k - _________________
-
Присвоить переменной a разность b и c - __________________
-
Присвоить переменной f значение a2 -_____________________
-
Присвоить переменной n разность квадратов aи b - _______________
-
Присвоить переменной p полусумму a и d - _____________.
3.Допишите программу нахождения суммы чисел a и b.
program Summa;
var a b c
begin
a =5;
b =7;
c = ;
end.
4. Исправьте ошибки в приведенном фрагменте программы нахождения полуразности чисел b и c.
program poluraznost;
var
b,c,f: integer;
begin
b =2.3
c =2.1.
f =1/2*(b-c);
end.
5. Напишите программу нахождения частного чисел x и y. Известно, что х=10.2; y=2.
program chastnoe;
_______________________
_______________________
_______________________
_______________________
_______________________
end.
6. Дан фрагмент программы. Чему равны значения переменных r, a, d?
Var
a, b, c: integer;
r, d: real;
a:=5; b:=20; c:=-7;
d:=2.5;
r := a+(4*b+c)*d;
a:= a+4;
d:=a*7;
Ответ: a= ____; r=_____; d=_____.
Можно ли выполнить оператор a:=d? ________
Почему? _______________________________________________
Урок 5. Операторы ввода. Операторы вывода.
Цель урока:
-
познакомиться с синтаксисом операторов ввода и вывода;
-
узнать, чем отличается writeln(x) от write(x);
-
узнать, чем отличается readln(x) от read(x);
-
научиться записывать фрагменты программ, выводящих информацию и вводящие данные с клавиатуры.
1. Запишите операторы ввода
-
______________________
-
______________________
Их отличие: ___________________________________.
2. Запишите операторы вывода
-
_______________________
-
_______________________
Их отличие: ____________________________________.
3. Вывести на экран сообщение «Занятие по программированию».
program soobchenie;
begin
_______________
end.
4. Найти сумму и произведение 3 введенных с клавиатуры целых чисел. Исправьте ошибки в данной программе.
program summa;
var a,b,c,s,p integer;
begin
write(введите 3 целых чисел);
readln(a,b,c);
s:=a+b+c;
p:=a*b*c;
writeln(сумма введенных чисел равна,s);
writeln( произведение введенных чисел равно,p);
end.
5.Одна сторона прямоугольника на 5 см. длиннее другой, а сумма их длин равна 17 см. Найти стороны этого прямоугольника. Допишите недостающие строки программы.
Ширина прямоугольника - storona1, длина - storona2, разность сторон - raz, сумму длин сторон - summa.
program primer1;
var summa,raz,st:real;
____________________:real;
begin
writeln('Введите сумму длин сторон прямоугольника');
____________________;
writeln('Введите на сколько одна сторона больше другой');
____________________________;
st:= (summa - raz) / 2;
storona1:= st;
storona2:= st + raz;
write _______________________;
write _______________________;
end.
6. Составьте программу, вычисляющую периметр P и площадь S прямоугольника, если известны две его стороны a, b. Вывод на экран оформить следующим образом:
введите две стороны прямоугольника в см:яяЕ
13.5
47.25
периметр прямоугольника равен 121.5 см
площадь прямоугольника равна 637.875 кв. см.
_____________________________
_____________________________
_____________________________
_____________________________
_____________________________
_____________________________
_____________________________
_____________________________
_____________________________
_____________________________
_____________________________
_____________________________
Урок 6. Линейные алгоритмы.
Цель работы:
-
Научиться составлять линейные алгоритмы;
-
Научиться писать текст программ для линейных алгоритмов
1. Дана сторона квадрата а. Найти его периметр P=4*a. Допишите строки программы
program kvadrat;
var _____________________;
begin
writeln(___________________);
readln(a);
p: =______________________;
writeln(_____________________);
end.
2.Найти периметр равностороннего треугольника. Написать текст программы.
__________________________________
_______________________
_______________________
_______________________
_______________________
_______________________
_______________________
_______________________
3. Составьте блок-схему и программу, решающую следующую задачу.
Известна длина окружности L. Найти площадь круга S, ограниченного этой окружностью. Формулы для вычисления длины окружности и площади круга: L=2πR, S=πR2 (где π=3,14)
Программа
_________________________
_________________________
_________________________
_________________________
_________________________
_________________________
_________________________
_________________________
_________________________
4. Напишите программу и заполните таблицу значений для следующей задачи.
Вычислите среднее арифметическое чисел x,y,z.
x
y
z
Результат
5
2.5
3
0
7
12
32.54
12
86
17
26.5
38.02
5. Составить программу, решающую следующую задачу.
Найти сумму членов S арифметической прогрессии, если известны ее первый член a1, знаменатель d и число членов прогрессии n. Формулы:
Программа:
_____________________________
___________________________________
___________________________________
___________________________________
___________________________________
___________________________________
___________________________________
___________________________________
___________________________________
____________________________________
____________________________________
Ответ: s=____.
6. По блок-схеме напишите программу, решающую следующую задачу. Дано число а. Не пользуясь никакими другими операциями, кроме умножения, получить: а4 и а12 за 4 операции.
_______________________________
_____________________________________
_____________________________________
_____________________________________
_____________________________________
_____________________________________
_________________________________________
_________________________________________
_________________________________________
_________________________________________
7. Составить программу, решающую следующую задачу. Дано число а. Не пользуясь никакими другими операциями, кроме умножения, получить: а4 и а20 за 5 операции.
8. Дана сторона квадрата а. Найти его площадь S=a2. Написать программу.
________________________
________________________
________________________
________________________
___________________________________
___________________________________
___________________________________
___________________________________
9. Дана длина ребра куба а. Найти объем куба V=a3 и площадь его поверхносьти S=6a2. Вставьте скриншот программы.
Урок 7. Функции в языке Pascal.
Цель урока:
-
познакомиться с основными видами функций языка Pascal.
-
Заполните таблицу.
Функция в Pascal
Значение
abs|x|
sqr(x)
sqrt(x)
sin(x)
cos(x)
int(x)
frac(x)
trunc(x)
round(x)
A div B
A mod B
2.Вычислить значение выражений.
-
int(-7,8)=
-
frac(6,12)=
-
round(-2,38)=
-
round(99,98)=
-
int(5,025)=
-
round(7,3)=
-
frac(3,65)=
-
round( -10,8)=
-
int(21,0)=
-
int(32,89)=
3.Вычислить значение выражений.
-
7 div 2 =
-
4 div 3 =
-
12 div 3 =
-
25 mod 7 =
-
17 mod 3 =
-
8 mod 2 =
-
128 div 7 =
-
2220 mod 1110 =
-
2344 div 34 =
-
75 mod 2 =
-
756 div 6 =
-
124 mod 4 =
-
17 div 6 =
-
743 mod 11 =
4. Вычислить следующие выражения.
-
int(-5,89)=
-
int(0,53)=
-
round(-5,8)=
-
round(5,2)=
-
frac(-17,4)=
-
frac(0,32)=
-
trunc(-17,4)=
-
trunc(15,2)=
-
45 div 4=
-
15 mod 8=
-
(489 div 10) mod 10=
Урок 8. Арифметические выражения в языке Pascal.
Цель урока:
-
научиться преобразовывать математические выражения в выражения на языке Pascal;
-
совершенствовать навыки и умения написания текста программ линейных алгоритмов.
1. Запишите следующие выражения на языке Pascal.
-
-
-
x2-7x+6
-
-
-
-
2. Составьте программу, вычисляющую площадь треугольника по формуле Герона.
a, b, c - стороны (исходные данные)
P - полупериметр (вспомогательная переменная)
S - площадь (результат)
Формулы:
P=1/2*(a+b+c)
_______________________________
_______________________________
__________________________
__________________________
__________________________
__________________________
__________________________
__________________________
__________________________
3. Допишите строчки программы.
Составьте программу, вычисляющую расстояние между двумя точками с данными координатами.
x1, y1; x2, y2 - координаты точек (исходные данные)
d - расстояние (результат)
program zadacha;
var __________________________;
begin
writeln _______________________;
readln(x,y,z);
d:=_________________________;
writeln('d=',d);
end.
4.Исправьте ошибки в программе. Составьте блок-схему.
Составить программу, вычисляющую сумму цифр трехзначного числа n.
n - трехзначное число
a, b, c - цифры этого числа (вспомогательные переменные)
S - сумма цифр этого числа (результат)
Program chislo;
var n, a, b, c, s : ;
begin
writeln ('введите трехзначное число');
readln ( );
c:=n div 10;
a:=n div 100
b:=(n div 10) mod 10;
s:=a+bc;
writeln ('суммацифрчисларавна ', s);
end.
5. Дано два числа, найти остаток от деления первого на второе и вывести результат. Заполните таблицу значений.
А
Результат
12
5
36
3
127
25
46
4
687
35
235
28
6. Написать программу к задаче. Дано четырехзначное число n. Выписать число в обратном порядке.
n - четырехзначное число исходные данные;
a, b, c, d - цифры этого числа (вспомогательные переменные);
m - обратное число (результат).
program obratnoe;
var a,b,c,d: integer;
________________________;
________________________;
_____________________________;
_____________________________;
________________________;
________________________;
________________________;
end.
7. Дана длина ребра куба. Найти объем куба и площадь его боковой поверхности. Напишите текст программы.
___________________________________________;
___________________________________________;
___________________________________________;
___________________________________________;
___________________________________________;
___________________________________________;
___________________________________________;
___________________________________________;
end.
8. Даны два неотрицательных числа a и b. Найти их среднее геометрическое, то есть квадратный корень из их произведения . Вставьте скриншот программы.
9.Дано двузначное число. Вывести сначала его левую цифру(десятки), затем правую(единицы). Для нахождения десятков использовать операцию деление нацело, для нахождения единиц использовать операцию взятия остатка от деления. Вставьте скриншот программы.
10. Дано двузначное число. Найти сумму и произведение его цифр. Вставьте скриншот программы.
11. Дано двузначное число. Вывести число, полученное при перестановке цифр исходного числа. Вставьте скриншот программы. Вставьте скриншот программы.
Урок 9. Условный оператор.
Цель урока:
-
познакомиться с синтаксисом условного оператора;
-
сформировать навыки написания фрагментов программ для полного и неполного ветвления.
-
Запишите общий вид логического оператора для полного ветвления.
________________________________________-
________________________________________
-
Запишите общий вид логического оператора для неполного ветвления.
______________________________________________
______________________________________________
3. С помощью логического ветвления запишите следующие фразы:
-
Если а больше 0, то прибавьте к х 1, в противном случае, нужно вычесть из x 2;
_________________________________________________
-
Если сумма а и b положительная, то присвойте a значение b, в противном случае, присвойте а значение 0;
___________________________________________________
-
Если разность а и b меньше 0, то присвоить с значение а, в противном случае, умножьте а на 2;
___________________________________________________
-
Если а больше 0 или равно 0, то вывести фразу «а - положительное»;
___________________________________________________
-
Если а меньше 0, то вывести фразу «а - отрицательное».
___________________________________________________
4.Запишите логический оператор по фрагменту блок-схемы:
m>0
m:=m2
m:=m3
t>37
Температура повышенная
Температура нормальная
a
____________________________ ____________________________
____________________________ ____________________________
f=25
(b>0) и (b<3)
k:= 30-f
c:=
c:=b2- 4
___________________________ ____________________________
___________________________ ____________________________
5. Определите новое значение переменной с.
a:=20;
b:=7;
a:=a - b*2;
if a>b then c:=a + b
else c:=b-a;
Ответ: с=___.
6.Определите новое значение переменной c:
c:=1;
if (a>0) and (b
else c:=b;
if (a<0) and (b>=a) then c:=3*c
else c:=2*c;
-
при а= 5; b=7 Ответ: c=
-
при a= -5; b=7 Ответ: c=
Урок 10. Алгоритмы с ветвлением.
Цель урока:
-
научиться составлять блок-схемы для алгоритмов с ветвлением;
-
научиться составлять программы для алгоритмов с ветвлением.
1. Дано целое число а. Проверить истинность высказывания: «Число а является положительным». Составить блок-схему для программы.
program polozhitelnoe;
var a: integer;
begin
writeln('Ввестиa');
readln(a);
if (a>0) or (a=0) then writeln('Число а является положительным')
else writeln ('Число а не является положительным');
end.
2. Дано целое число а. Проверить высказывание «Число является четным». Дописать фрагмент программы.
begin
var a: integer;
begin
if ____________________ then writeln( __________________)
else writeln(______________);
end.
3.Дано целое число а. Проверить высказывание «Число является нечетным». Дописать фрагмент программы.
begin
var a: integer;
begin
if ____________________ then writeln( __________________)
else writeln(______________);
end.
4. Даны два целых числа a и b. Проверить истинность высказывания «Справедливы неравенства a>2 и b≤3». Написать программу.
5. Даны два целых числа a и b. Проверить истинность высказывания «Справедливы неравенства a≥0 и b<-2». Написать программу.
6. Даны три целых числа a,b,c. Проверить истинность высказывания «Справедливо двойное неравенство a<b<c». Вставить скриншот программы.
7. Даны три целых числа a,b,c. Проверить истинность высказывания «Число b находится между a и b». Вставить скриншот программы.
8. Даны два целых числа a и b. Проверить истинность высказывания «Хотя бы одно из чисел a и b нечетное». Вставить скриншот программы.
9. Даны два целых числа a и b. Проверить истинность высказывания «Ровно одно из чисел a и b нечетное». Вставить скриншот программы.
10.Ввести число. Если оно четное, разделить его на 4, если нечетное - умножить на 5. Вставить скриншот программы.
Урок 11. Вложенное и последовательное ветвление.
Цель урока:
-
познакомиться с вложенным ветвлением;
-
познакомиться с последовательным ветвлением;
-
выявить отличия между вложенным и последовательным ветвлением;
-
научиться составлять программы с вложенным и последовательным ветвлением.
1. Рассмотрите примеры вложенного и последовательного ветвления. В чем между ними разница?
2. Запишите программу по следующей блок-схеме.
3. Запишите программу по блок-схеме.
Дана блок-схема алгоритма решения следующей задачи: Даны два угла треугольника (в градусах). Определить, существует ли такой треугольник. Если да, то будет ли он прямоугольным.
4. Запишите 2 варианта программы:
а) с вложенным ветвлением;
б) с последовательным ветвлением.
5. Составьте программу для вычисления значений функции y в зависимости от заданного с клавиатуры значения аргумента x:
6. Составьте блок-схему и программу для вычисления значений функции y в зависимости от заданного с клавиатуры значения аргумента x:
7. Составьте программу для решения следующей задачи. Введите с клавиатуры три числа. Если все числа отрицательны и не равны между собой, то замените числа их квадратами и выведите результаты на экран. Если все числа равны нулю, то сделайте их соответственно равными 5, 20, 15 и выведите результаты. Иначе, найдите и выведите сумму этих чисел.
8. Составьте программу для решения следующей задачи. Введите с клавиатуры три числа: А, В, С. Если A = С, то все числа замените их квадратами и выведите результаты на экран. Если А >В > С, то каждое число замените наибольшим и выведите результаты. Иначе, А сделайте равным сумме В и С, С обнулите, В оставьте без изменения и выведите результаты.
Урок 13. Оператор выбора.
Цель урока:
-
познакомиться с оператором выбора;
-
выявить условия использования оператора выбора;
-
сформировать навыки написания программ с оператором выбора.
1. Запишите синтаксис оператора выбора case of.
______________________
______________________
______________________
______________________
______________________
______________________
______________________
______________________
2.Запишите оператор выбора для представленной блок-схемы.
3.Составьте блок-схему для следующего текста программы.
Определите, чем является символ, введенный с клавиатуры: цифрой, буквой русского алфавита или буквой английского алфавита. сh - символьная переменна, char - символьный тип данных.
var
ch: char;
begin
write ('Введитесимвол: ');
readln (ch);
case ch of
'0'..'9': write ('Эточисло');
'a'..'z','A'..'Z': write ('Это английская буква');
'а'..'я','А'..'Я': write ('Это русская буква')
end;
readln
end.
4.Составьте блок-схему для следующей программы.
5. Какое значение примет переменная a после выполнения оператора выбора:
case a of
3: a:=a+b;
4..8: a:=a-b;
9,11,15: a:=a*b;
end;
для чисел:
a=1, b=2; а=
a=3, b=3; а=
a=6, b=2; a=
a=11, b=5; а=
6. Допишите программу.
Вводится оценка цифрами, необходимо напечатать соответствующую оценку словами.
program osenka;
var x:integer;
begin
writeln('введите оценку числом');
readln(x);
case x of
5: _______________;
4: _______________;
3: ______________________;
2: _______________________;
1:________________________;
elsewriteln('оценка введена неправильно');
end;
end.
7. Написать программу, которая по введенному номеру месяца, выдавала бы время года.
Список литературы
-
Паскаль для школьников. Ушаков Д.М., Юркова Т.А.,2-е изд. - СПб.: 2011. - 320с.
-
Практикум по Турбо Паскалю. И.А. Бабушкина, Н.А. Бушмелева, С.М. Окулов, С.Ю. Черных.
Электронные ресурсы
-
pas1.ru/programming;
-
pas1.ru/pascaltextbook;
-
М. Э. Абрамян Programming Taskbook Электронный задачник по программированию Версия 4. 5 Ростов-на-Дону 2005.;