Методические рекомендации для проведения практических работ по информатике.

Методические рекомендации для проведения практических работ по информатике.
Автор: Климова Ольга Сергеевна, преподаватель математики и информатики ГБПОУ "Кулебакский металлургический колледж", г. Кулебаки, Нижегородской области. 2013г.

Практическая работа №1.
Тема: вычисление в командном режиме.
Цель работы: научиться выводить на экран результаты арифметических выражений. Приобрести навыки использования командного режима.
Оборудование: Компьютер с установленной операционной системой Windows, Free Pascal.
Литература:
1. Бабушкин И.А. и др. Практикум по Турбо Паскалю. Учебное пособие.: М,1998
2. Информатика. 7–9 класс. Базовый курс. Практикум-задачник по моделированию./ Под ред.Н. В. Макаровой. –СПб.: Питер, 2001
3. Лапчик М. П. Вычисления. Алгоритмизация. Программирование: Пособие для учителя. - М.: Просвещение, 1988
4. Основы информатики и вычислительной техники: Проб. учеб. Для 10-11 кл. сред. шк./ А. Г. Гейн, В. Г. Житомирский, Е.В. Линецкий и др. - М. Просвещение, 1992
5. Основы информатики и вычислительной техники: Проб. учеб. пособие для сред. учеб. заведений. В 2 ч./ под ред А.П. Ершова, В.М. Монахова. - М.: Просвещение, 1986

Задания: Вычислите:
1 вариант.
1. 18*32,1*22-75
2. |121,3-18,5|-HYPER13 EMBED Equation.3 HYPER14HYPER15
3. cos1
4. 3sinHYPER13 EMBED Equation.3 HYPER14HYPER15
5. 2соs245°
6. lg3
7. 7*0,732-4*1,2342+3HYPER13 EMBED Equation.3 HYPER14HYPER15
(2,4-7,5)2+2
8. 7*53,82-4HYPER13 EMBED Equation.3 HYPER14HYPER15 -77*0,35
(5*11,2+4,3)2+1

9. 2HYPER13 EMBED Equation.3 HYPER14HYPER15+5
3HYPER13 EMBED Equation.3 HYPER14HYPER15+5
10. 4tg1 - 8 cos2 22 + 5
(2*2,73-2)2+1


2 вариант.
1. 24*18,3*41-83
2. |10,3-16,48|-HYPER13 EMBED Equation.3 HYPER14HYPER15
3. cos2
4. 2sin2HYPER13 EMBED Equation.3 HYPER14HYPER15
5. соs230°-2
6. lg4
7. 2*0,218-3*1,422-3HYPER13 EMBED Equation.3 HYPER14HYPER15
(8,4-11,5)2+1
8. 2*41,23-5HYPER13 EMBED Equation.3 HYPER14HYPER15 -24*0,62
(2*10,6+1,3)2-1

9. HYPER13 EMBED Equation.3 HYPER14HYPER15-1
2HYPER13 EMBED Equation.3 HYPER14HYPER15+4
10. 2tg2 - 4 sin2 23 - 1
(2*4,21+1)2-3
Теоретические сведения к практической работе:
Арифметические выражения
Арифметические выражения строятся из арифметических констант, переменных, функций и операций над ними.
Все данные, входящие в арифметические выражения, должны быть одного типа, хотя иногда допускается использовать в одном выражении данные целого и вещественного типов.
При построении арифметических выражений следует учитывать следующие правила:
Выражение записывается в строчку. Например, выражение:
HYPER13 EMBED Equation.3 HYPER14HYPER15
на Паскале будет записываться следующим образом:
(2*a*x+3*b*y-4*x)/(2.5*(a+b+c))
Скобки в арифметических выражениях только круглые. Число открывающихся
скобок должно равняться числу закрывающихся скобок.
Нельзя записывать два знака операций подряд, без скобок, например в
выражении:
HYPER13 EMBED Equation.3 HYPER14HYPER15 следует записать: (3*a+b)/(-x).
Порядок выполнения арифметических операций слева направо в соответствии со
старшинством операций:
1) значения функций; 2) *, /, div, mod; 3) +, -.
Пример:
Рассмотрим порядок вычисления на примере:
HYPER13 EMBED Equation.3 HYPER14HYPER15
Представленное выражение будет вычисляться в следующем порядке:
Вычисление функции Sin(x);
a*Sin(x); 3) Cos(y); 4) b*cos(y); 5) aSin(x)+b*Cos(y);
6) SQR(aSin(x)+b*Cos(y)) - получено значение в числителе;
Вычисление x/y; 8) Sin(x/y); 8) a*a; 9) b*b; 10) SQR(a*a+b*b);
11) SQR(a*a+b*b)*Sin(x/y) - получено значение в знаменателе;
12) числитель/знаменатель - получен результат.
Пример:
Program Р;
const
a := 1.5;
b := 0.5;
var
x,Y,F: real;
begin
readln (Введите значение x: ’,x);
Y := ln (abs(x-b))*(a*x*arctan(a+x)-sqrt(abs(sqr(x)*x-1))+ln(abs(b+x)+1));
F := 1+sqrt(a*x*sqr(x)+b)-a*exp(-a*x);
Writeln (Значение Y: ’,Y);
Writeln (Значение F: ’,F)
End.

Сделайте вывод по работе.


Практическая работа №2.
Тема: программирование алгоритмов линейной структуры.
Цель работы: овладеть практическими навыками разработки и программирования вычислительного процесса линейной структуры, навыками по отладке и тестированию программы.
Оборудование: Компьютер с установленной операционной системой Windows, Free Pascal.
Литература:
1. Бабушкин И.А. и др. Практикум по Турбо Паскалю. Учебное пособие.: М,1998
2. Информатика. 7–9 класс. Базовый курс. Практикум-задачник по моделированию./ Под ред.Н. В. Макаровой. –СПб.: Питер, 2001
3. Лапчик М. П. Вычисления. Алгоритмизация. Программирование: Пособие для учителя. - М.: Просвещение, 1988
4. Основы информатики и вычислительной техники: Проб. учеб. Для 10-11 кл. сред. шк./ А. Г. Гейн, В. Г. Житомирский, Е.В. Линецкий и др. - М. Просвещение, 1992
5. Основы информатики и вычислительной техники: Проб. учеб. пособие для сред. учеб. заведений. В 2 ч./ под ред А.П. Ершова, В.М. Монахова. - М.: Просвещение, 1986
Задания:
Разработать алгоритм, составить программу решения задачи, подготовить тестовый пример и вычислить его на ПК.
1 вариант.
1. Вычислите, используя расчетную формулу:
а) у= 3HYPER13 EMBED Equation.3 HYPER14HYPER15- 7HYPER13 EMBED Equation.3 HYPER14HYPER15
HYPER13 EMBED Equation.3 HYPER14HYPER15+2

в) у= 3sin2x- 7HYPER13 EMBED Equation.3 HYPER14HYPER15
5tg3x+3cos3c
2. Найдите удвоенную сумму трех чисел.

2 вариант.
1. Вычислите, используя расчетную формулу:
а) у= 2HYPER13 EMBED Equation.3 HYPER14HYPER15+4HYPER13 EMBED Equation.3 HYPER14HYPER15
4HYPER13 EMBED Equation.3 HYPER14HYPER15+1

в) у= 6соs2x- 2HYPER13 EMBED Equation.3 HYPER14HYPER15
6tg2x-3cos2c
2. Найдите частное от деления числа 2a на разность чисел b и с.

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

Тип
Наименование
Диапазон допустимых значений

INTEGER
Целое
-3276832767

LONGINT
Длинное целое
-2 *109 2*109

REAL
Вещественный
10-38 1038

CHAR
Символьный
Множество символов ASCII


Переменные описываются в разделе VAR с указанием типа, например: var a: integer; b,c: Real; R:char;.
Оператор ввода с клавиатуры READ() или READLN(), например:
а)READ(a, b) –программа ожидает ввода значений переменных a и b. Курсор остается на этой же строке;
б) READLN (a, b) –программа ожидает ввода данных и затем переводит курсор на новую строку.
Линейным называется алгоритм, в котором результат получается путем однократного выполнения заданной последовательности действий при любых значениях исходных данных.
Схема линейного алгоритма вычислений
Пример: Составьте программу нахождения суммы двух чисел:
VAR a,b,S: Integer;
Begin
a:=5;
b:=7;
S:=a+b;
WRITELN(сумма=’,S)
end.
Пример: Определить расстояние на плоскости между двумя точками с заданными координатами M1(x1,y1) и M2(x2,y2) Решение: Математическая модель: расстояние на плоскости между двумя точками M1(x1,y1) и M2(x2,y2) высчитывается по формуле [ Cкачайте файл, чтобы посмотреть картинку ]
Составим схему алгоритма: [ Cкачайте файл, чтобы посмотреть картинку ]:
Переводим блок-схему на язык Паскаль:
program example1;
var x1, x2, y1, y2: integer;
d:real;
begin
[ Cкачайте файл, чтобы посмотреть ссылку ]('x1= '); [ Cкачайте файл, чтобы посмотреть ссылку ]('Введите a> '); [ Cкачайте файл, чтобы посмотреть ссылку ].
3. Вычислить значения функции у=хHYPER13 EMBED Equation.3 HYPER14HYPER15на [0;10] с шагом 1.

2 вариант.
1. Найдите сумму трехзначных натуральных чисел, оканчивающихся на 18.
2. Найдите сумму п первых чисел ряда, если ап=HYPER13 EMBED Equation.3 HYPER14HYPER15.
3. Вычислить значения функции у=HYPER13 EMBED Equation.3 HYPER14HYPER15на [1;10] с шагом 1.

Теоретические сведения к практической работе:
Оператор FOR используется, когда известно число повторений в цикле.
Этот оператор обеспечивает повторение цикла, управляемое переменной:
FOR переменная:=начальное значение TO конечное значение DO оператор;
где переменная -переменная порядкового типа, причем она последовательно принимает значения от начального до конечного с шагом 1, либо:
FOR переменная:=начальное значение DOWNTO конечное значение DO оператор,
где переменная принимает последовательно убывающие значения с шагом -1.
Если необходимо последовательно выполнять несколько операторов в теле цикла, их следует объединить в составной оператор с помощью операторных скобок BEGIN...END.
Схема универсального оператора цикла такова:
WHILE логическое выражение DO оператор; (оператор будет повторяться, пока истинно логическое выражение). Цикл необходимо составить так, чтобы перед каждым повторением оператора значение логического выражения вычислялось заново. Если необходимо повторять несколько операторов, их следует объединить составным оператором BEGIN...END.
Оператор FOR обеспечивает повторение цикла, управляемое переменной:
FOR переменная:=начальное значение TO конечное значение DO оператор;
где переменная – переменная порядкового типа, причем она последовательно принимает значения от начального до конечного с шагом 1.
FOR переменная:=начальное значение DOWNTO конечное значение DO оператор;, где переменная принимает последовательно убывающие значения с шагом -1.

Пример: Составить программу вычисления суммы 24 членов ряда: 1+2+3+...+24
var k,s: integer;
begin
s:=0;
for k:= 1 to 24 do
s:=s+k;
writeln('сумма=',s)
end.

Пример: Дана программа вычисления суммы S первых 100 членов ряда: 1+2+3+...+100:
var k,s: integer;
begin
s:=0;
k:=1;
while k<=100 do begin
s:=s+k;
k:=k+1;
end;
writeln('сумма=',s)
end.
Сделайте вывод по работе.
Практическая работа №5.
Тема: одномерные массивы.
Цель работы: овладеть практическими навыками работы с массивами, организация их ввода и вывода, приобретение дальнейших навыков по организации программ циклической структуры. Обработка одномерных массивов.
Оборудование: Компьютер с установленной операционной системой Windows, Free Pascal.
Литература:
1. Бабушкин И.А. и др. Практикум по Турбо Паскалю. Учебное пособие.: М,1998
2. Информатика. 7–9 класс. Базовый курс. Практикум-задачник по моделированию./ Под ред.Н. В. Макаровой. –СПб.: Питер, 2001
3. Лапчик М. П. Вычисления. Алгоритмизация. Программирование: Пособие для учителя. - М.: Просвещение, 1988
4. Основы информатики и вычислительной техники: Проб. учеб. Для 10-11 кл. сред. шк./ А. Г. Гейн, В. Г. Житомирский, Е.В. Линецкий и др. - М. Просвещение, 1992
5. Основы информатики и вычислительной техники: Проб. учеб. пособие для сред. учеб. заведений. В 2 ч./ под ред А.П. Ершова, В.М. Монахова. - М.: Просвещение, 1986

Задания:
Разработать алгоритм, составить программу решения задачи, подготовить тестовый пример и вычислить его на ПК.

1 вариант.
1. Нахождения суммы элементов одномерного массива, состоящего из N элементов, меньших 10.
2. Нахождения числа элементов одномерного массива, состоящего из N элементов, больших 0,5.
3. Замены элементов одномерного массива, состоящего из N элементов, их квадратами.
4. Нахождения наименьшего элемента одномерного массива, состоящего из N элементов.

2 вариант.
1. Нахождения суммы элементов одномерного массива, состоящего из N элементов, больших 4.
2. Нахождения числа элементов одномерного массива, состоящего из N элементов, не превосходящих 4.
3. Замены элементов одномерного массива, состоящего из N элементов, их кубами.
4. Нахождения количества элементов одномерного массива, состоящего из N элементов, равных первому.

Теоретические сведения к практической работе:
Под массивом понимается упорядоченная последовательность конечного числа данных одного типа, объединенных под общим именем. Имена массивов образуются так же, как и имена простых переменных. Одномерные массивы, т.е. наборы однотипных данных, можно описать следующим образом:
var имя массива : array [размер] of тип ;
Например: a:array [1..6] of integer;
А) Вводить данные в массив можно следующим образом, например: CONST f:array[1..10] of integer=(1,2,3,4,0,6,8,10,-5,6); {в массив из 10 элементов вводятся числа, указываемые в скобках}
Б) Вводить, выводить данные в массив и из массива, обрабатывать данные удобно с помощью циклов, например: for i:=1 to n do read(f[i]); {один из способов ввода данных в одномерный массив).};
В) for i:=1 to n do write(f[i],’ ); {вывод данных из одномерного массива).}
Пример: Найдите сумму положительных и отрицательных элементов одномерного массива.
Program Р;
uses crt;
var
M:array[1..200] of real;
s1,s2:real;
i,k:integer;
begin
clrscr;
s1:=0;
s2:=0;
write('Введите число элементов массива: ');
readln(k);
for i:=1 to k do begin
WRITE('M[',i,']=');
readln(M[i]);
end;
for i:=1 to k do begin
if M[i]<0 then s1:=s1+M[i];
if M[i]>0 then s2:=s2+M[i];
end;
writeln('Сумма отрицательных элементов: ',s1);
writeln('Сумма положительных элементов: ',s2);
readln;
end.
Пример: Найти сумму 6 элементов массива:
const a = array [1..6] of
integer = (5,-1,7,13,-8,21)
var i ,s: integer;
begin
s:=0;
for i:= 1 do 6 do
s:= s+a[i];
writeln ( s )
end.


·Сделайте вывод по работе.


Практическая работа № 6-7.
Тема: двумерные массивы.
Цель работы: овладеть практическими навыками работы с массивами, организация их ввода и вывода, приобретение дальнейших навыков по организации программ циклической структуры. Обработка двумерных массивов.
Оборудование: Компьютер с установленной операционной системой Windows, Free Pascal.
Литература:
1. Бабушкин И.А. и др. Практикум по Турбо Паскалю. Учебное пособие.: М,1998
2. Информатика. 7–9 класс. Базовый курс. Практикум-задачник по моделированию./ Под ред.Н. В. Макаровой. –СПб.: Питер, 2001
3. Лапчик М. П. Вычисления. Алгоритмизация. Программирование: Пособие для учителя. - М.: Просвещение, 1988
4. Основы информатики и вычислительной техники: Проб. учеб. Для 10-11 кл. сред. шк./ А. Г. Гейн, В. Г. Житомирский, Е.В. Линецкий и др. - М. Просвещение, 1992
5. Основы информатики и вычислительной техники: Проб. учеб. пособие для сред. учеб. заведений. В 2 ч./ под ред А.П. Ершова, В.М. Монахова. - М.: Просвещение, 1986

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

1 вариант.
1. Нахождения суммы элементов двумерного массива, меньших 10.
2. Нахождения числа элементов двумерного массива, больших 0,5.
3. Замены элементов двумерного массива их квадратами.
4. Нахождения произведения и количества элементов второй строки двумерного массива больших 8 и замены остальных элементов 1.
5. Нахождения суммы элементов двумерного массива HYPER13 EMBED Equation.3 HYPER14HYPER152,5 и замены остальных элементов их квадратами. Элементы массива – случайные натуральные числа HYPER13 EMBED Equation.3 HYPER14HYPER15100.

2 вариант.
1. Нахождения суммы элементов двумерного массива, больших 4.
2. Нахождения числа элементов двумерного массива, не превосходящих 4.
3. Замены элементов двумерного массива их кубами.
4. Нахождения произведения и количества элементов первого столбца двумерного массива меньших 3 и замены остальных элементов 3.
5. Нахождения суммы элементов двумерного массива HYPER13 EMBED Equation.3 HYPER14HYPER158,3 и замены остальных элементов нулями. Элементы массива – случайные натуральные числа HYPER13 EMBED Equation.3 HYPER14HYPER15100.

Теоретические сведения к практической работе:
Под массивом понимается упорядоченная совокупность (последовательность, набор) конечного числа данных одного типа, объединенных под общим именем. Имена массивов образуются так же, как и имена простых переменных. Двумерные массивы можно описать следующим образом:
var имя массива ; array [размер] of тип, где в "размере" указывается на первом месте количество строк, а на втором месте – количество столбцов;
Например: var f: array[1..n,1..m] of real; {- массив, состоящий из n строк и m столбцов и в нем -n*m элементов вещественного типа}.
a:array [1..10,1..5] of integer {-массив, состоящий из 10 строк и 5 столбцов и в нем -10*5 элементов целого типа}.
а[i,j] - значение элемента массива a, первым указывается i - порядковый номер строки, вторым j - порядковый номер столбца, на пересечении которых находится данный элемент.
Вводить, выводить данные в массив и из массива, обрабатывать данные удобно с помощью циклов, например: for i:=1 to n do begin
for j:=1 to m do
write(а[i,j],’ );
writeln;
end;
end;
Пример: Выведите на экран элементы двумерного массива.
Program Р;
Uses crt;
Var MA:array[1..20,1..20]of integer;
Sum:array[1..20] of longint;
k,i,j,imin:integer;
min:longint;
BEGIN
clrscr;
write('Введите число строк и столбцов: ');
readln(k);
Randomize;
Writeln('Введите элементы: ');
for i:=1 to k do
for j:=1 to k do
begin
write('MA[',i,',',j,']=');
Readln(MA[i,j]);
writeln;
end;
Пример: Составьте программу нахождения суммы элементов массива:
а)const a: array[1..2,1..10] of integer= ((5,7,0,3,-5,4,-5,7,0,1), (2,3,6,0,1,1,1,2,9,7));
var i, j, S, : integer;
begin
S:= 0;
for i:= 1 to 2 do
for j:= 1 to 10 do
S:= S + a [i,j] ;
Writeln ( S )
End.
б) var i, j, S, : integer;
a: array[1..2,1..10] of integer;
begin
for i:= 1 to 2 do
for j:= 1 to 10 do
read(a[i,j]);
S:= 0;
for i:= 1 to 2 do
for j:= 1 to 10 do
S:= S + a [i,j] ;

Writeln ( S )
End.

Сделайте вывод по работе.


Практическая работа №8.
Тема: подпрограммы.
Цель работы: овладеть практическими навыками по составлению программ, используя подпрограммы. Приобретение дальнейших навыков по отладке и тестированию программ.
Оборудование: Компьютер с установленной операционной системой Windows, Free Pascal.
Литература:
1. Бабушкин И.А. и др. Практикум по Турбо Паскалю. Учебное пособие.: М,1998
2. Информатика. 7–9 класс. Базовый курс. Практикум-задачник по моделированию./ Под ред.Н. В. Макаровой. –СПб.: Питер, 2001
3. Лапчик М. П. Вычисления. Алгоритмизация. Программирование: Пособие для учителя. - М.: Просвещение, 1988
4. Основы информатики и вычислительной техники: Проб. учеб. Для 10-11 кл. сред. шк./ А. Г. Гейн, В. Г. Житомирский, Е.В. Линецкий и др. - М. Просвещение, 1992
5. Основы информатики и вычислительной техники: Проб. учеб. пособие для сред. учеб. заведений. В 2 ч./ под ред А.П. Ершова, В.М. Монахова. - М.: Просвещение, 1986

Задания:
Разработать алгоритм, составить блок-схему и тестовый пример для решения следующих задач.
1 вариант.
1. Вычислить значение функции у=HYPER13 EMBED Equation.3 HYPER14HYPER15, если A=20,B=60,C=45,D=30.
(Числовые значения углов даны в градусах).

2. Вычислить по формуле С=n!m!.

3. Вычислить значение выражения HYPER13 EMBED Equation.3 HYPER14HYPER15.
2 вариант.
1. Вычислить значение функции у= HYPER13 EMBED Equation.3 HYPER14HYPER15, если A=20,B=60,C=45,D=30.
(Числовые значения углов даны в градусах).

2. Вычислить по формуле С=HYPER13 EMBED Equation.3 HYPER14HYPER15.

3. Вычислить значение выражения HYPER13 EMBED Equation.3 HYPER14HYPER15.

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

Procedure имя(список формальных параметров);
(* раздел описаний *)
begin
(* раздел операторов *)
end;
Первая строка описания называется заголовком процедуры, а раздел операторов называется телом процедуры.
Функции
Заголовок функции состоит из слова Function, за которым указывается имя функции, затем в круглых скобках записывается список формальных параметров, далее ставится двоеточие и указывается тип результата функции.
В теле функции обязательно должен быть хотя бы один оператор присваивания, в левой части которого стоит имя функции, а в правой - ее значение. Иначе значение функции не будет определено.
Общий вид описания функции:
Function Имя[(список формальных параметров)]:Тип результата;
описательная часть
Begin
тело функции, в которой обязательно должно быть
присваивание Имя_функции:=значение;
End;
Формальные параметры - параметры, определенные в заголовке процедуры.
Фактические параметры - выражения, задающие конкретные значения при обращении к процедуре.
При обращении к процедуре ее формальные параметры замещаются фактическими, переданными из основной программы.
Фактические параметры - это параметры, которые передаются процедуре при ее вызове.
Количество и тип формальных и фактических параметров должны в точности совпадать.
HYPER13 EMBED PowerPoint.Slide.8 HYPER14HYPER15










program primer1;
var
a,b,c,d,z,z1,z2,x,y:real;
procedure w(x,y:real; var w:real);
begin
w:=cos(x)+sin(y)+3;
end;
begin
writeln(задайте a,b,c,d’);
readln(a,b,c,d);
x:=a*3.14/180;
y:=b*3.14/180;
w(x,y,z1);
x:=c*3.14/180;
y:=d*3.14/180;
w(x,y,z2);
z2:=sqrt(z2);
z:=z1/z2;
write(z=,z:4:2);
readln;
end.

Тестовый пример
A=20
B=60
C=45
D=30
Z=2.19

Пример 2:
Вычислить С=

N!=1*2*3**N
1!=1
2!=1*2=2
3!=1*2*3=6
4!=1*2*3*4=24
HYPER13 EMBED PowerPoint.Slide.8 HYPER14HYPER15

program primer2;
var
z,z1,z2,c:real;
k,m,n:integer;
function factorial(k:integer):integer;
var i,p:integer;
begin
p:=1;
for i:=1 to k do
p:=p*i;
factorial:=p;
end;
begin
writeln(задайте m’);
readln(m);
writeln(задайте n’);
readln(n);
z:=factorial(n);
z1:=factorial(m);
z2:=factorial(n-m);
c:=z/(z1*z2);
write(c=,c:4:2);
readln;
end.

Тестовый пример
m=2
n=5
c=10
Пример3: Вычислить значение выражения:

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


program primer3;
var x,у:real;
function lg(x:real) :real; {Функция вычисления десятичного логарифма}
begin
lg:=ln(x)/ln(10);
end;
function tg (x: real) : real; {Функция вычисления тангенса}
begin
tg:=sin(x)/cos(x);
end;
BEGIN
writeln('Введите х');
readln(x);
y:=lg(sqr(tg(x))+sqr(cos(x)))/sqr(tg(x+sqr(lg(x)))+sqr(sin(x)));
writeln('y=',y:10:4);
END.
Тестовый пример:
Введите х
3.4 у=0.0045


Сделайте вывод по работе.
Практическая работа №9.
Тема: создание простейших графических изображений с помощью графических средств языка.
Цель работы: научиться из символьного режима работы экрана переходить в графический. Овладеть навыками составления программ, используя операторы машинной графики.
Оборудование: Компьютер с установленной операционной системой Windows, Free Pascal.
Литература:
1. Бабушкин И.А. и др. Практикум по Турбо Паскалю. Учебное пособие.: М,1998
2. Информатика. 7–9 класс. Базовый курс. Практикум-задачник по моделированию./ Под ред.Н. В. Макаровой. –СПб.: Питер, 2001
3. Лапчик М. П. Вычисления. Алгоритмизация. Программирование: Пособие для учителя. - М.: Просвещение, 1988
4. Основы информатики и вычислительной техники: Проб. учеб. Для 10-11 кл. сред. шк./ А. Г. Гейн, В. Г. Житомирский, Е.В. Линецкий и др. - М. Просвещение, 1992
5. Основы информатики и вычислительной техники: Проб. учеб. пособие для сред. учеб. заведений. В 2 ч./ под ред А.П. Ершова, В.М. Монахова. - М.: Просвещение, 1986

Задания:
1 вариант.
1. Составить программу вывода на графический экран своего имени.
2. Составьте программу вывода на графический экран снеговика.

2 вариант.
1. Составить программу вывода на графический экран своего имени.
2. Составьте программу вывода на графический экран корабля.

Теоретические сведения к практической работе:
Графика
В графическом режиме экран рассматривается как последовательность точек (пикселей), из которых строится изображение.
Количество пикселей в строке и количество строк на экране характеризуют его разрешающую способность.
640х480 - в строке 640 пикселей , а строк всего 480.
Пиксель определяют: координаты X, Y и цвет. Х
(0,0) (640,0)



(0,480) (640,480)
Для работы в графическом режиме разработана библиотека GRAPH, содержащая множество графических процедур и набор драйверов.
Драйвер находится в файле с расширением .TPU
Для того, чтобы в программе можно было использовать процедуры модуля GRAPH, его надо подключить к программе, использовав раздел описаний модулей:
USES GRAPH;
С момента подключения модуля GRAPH программисту доступны все находящиеся в ней подпрограммы.
В первую очередь вызывается процедура InitGraph, которая устанавливает один из возможных графических режимов.
Формат процедуры :
InitGraph( gd,gm,’’);
В программе нужно описать переменные gd,gm:
var
gd,gm : integer;
В разделе операторов, перед тем как написать первый графический оператор, следует выполнить:
gd:=vga;
gm:=vgahi ;
InitGraph( gd,gm,’’);
if Graphresult=grok then

Установка цвета и стиля заполнения
SetColor(N); - установка цвета графического изображения.
SetLineStyle(Ln,P,T); - установка способа закраски.
Ln- стиль линий
0
сплошная

1
пунктирная

2
штрихпунктирная

3
штриховая

Р- шаблон (0-для всех линий), Т- толщина линий
1
нормальная

3
толстая

Таблица цветов
Константа
Цвет

Имя
Значение


Black
0
Черный

Blue
1
Синий

Green
2
Зеленый

Cyan
3
Бирюзовый

Red
4
красный

Magenta
5
малиновый

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

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

DarkGray
8
темно-серый

LightBlue
9
ярко-голубой

LightGreen
10
ярко-зеленый

LightCyan
11
ярко-бирюзовый

LightRed
12
ярко-красный

LightMagenta
13
ярко-малиновый

Yellow
14
желтый

White
15
белый


Рисование геометрических фигур:
1. Вывод отрезка
Line(x1,y1,x2,y2);
(x1,y1) - координаты начала отрезка
(x2,y2) - координаты конца отрезка
!!! Обратите внимание на то, что в процедуре не задается цвет. В этом и аналогичных случаях цвет определяется процедурой SetColor(N).
2. Построение прямоугольника
Rectangle(x1,y1,x2,y2);
Точки с координатами (x1,y1) (x2,y2) должны быть противоположными вершинами прямоугольника.
3. Построение дуг, окружностей, эллипсов.
Circle(x,y,<радиус> ); - окружность указанного радиуса
Ellipse(x,y, <нач_угол>,<кон_угол>,xR,yR) - построение эллиптических дуг.
X,Y - координаты центра,
xR, yR - длина горизонтальной и вертикальной полуосей в пикселях.
Угол отсчитывается против часовой стрелки и указывается в градусах. Дуга эллипса вычерчивается от заданного начального угла до конечного угла. Если значение начального угла 0°, а конечного 360° - будет построен полный эллипс.
Arc(x,y, <нач_угол>,<кон_угол>,r);




HYPER13 SHAPE \* MERGEFORMAT HYPER14HYPER15

Program primer;
USES GRAPH;
var
gd,gm : integer;
begin
gd:=vga; графический адаптер
gm:=vgahi ; графический режим 640х480
InitGraph( gd,gm,’’); включение графического режима
if Graphresult=grok then если режим включен успешно
begin
setcolor(5);
SetLineStyle(2,0,3);
Line(10,50,10,10);
Line(10,10,20,20);
Line(20,20,30,10);
Line(30,10,30,50);
Line(40,10,40,50);
Line(40,50,60,10);
Line(60,10,60,50);
Rectangle(70,10,90,40);
Line(70,40,70,50);
End;
Readln;
End.
Сделайте вывод по работе.
Практическая работа №10.
Тема: разработка и программирование задач с обработкой текстовой информации.
Цель работы: овладеть практическими навыками работы с символьными переменными, практическими навыками обработки текста, приобретение дальнейших навыков по отладке и тестированию программ.
Оборудование: Компьютер с установленной операционной системой Windows, Free Pascal.
Литература:
1. Бабушкин И.А. и др. Практикум по Турбо Паскалю. Учебное пособие.: М,1998
2. Информатика. 7–9 класс. Базовый курс. Практикум-задачник по моделированию./ Под ред.Н. В. Макаровой. –СПб.: Питер, 2001
3. Лапчик М. П. Вычисления. Алгоритмизация. Программирование: Пособие для учителя. - М.: Просвещение, 1988
4. Основы информатики и вычислительной техники: Проб. учеб. Для 10-11 кл. сред. шк./ А. Г. Гейн, В. Г. Житомирский, Е.В. Линецкий и др. - М. Просвещение, 1992
5. Основы информатики и вычислительной техники: Проб. учеб. пособие для сред. учеб. заведений. В 2 ч./ под ред А.П. Ершова, В.М. Монахова. - М.: Просвещение, 1986

Задания:
Составьте программу и тестовый пример для решения следующих задач:
1 вариант.
1. Из слова «путеводитель» составьте слова «дело», «пудель», «водитель».
2. Дан текст. Сосчитайте количество запятых в нем.
3.Дан массив символьных переменных разной длины. Выведите на экран те из них, которые оканчиваются на букву «я».

2 вариант.
1. Из слова «водозаборный» составьте слова «забор», «вода», «завод».
2. Дан текст. Сосчитайте количество букв «и» в нем.
3.Дан массив символьных переменных разной длины. Выведите на экран те из них, которые начинаются с буквы «к».
Теоретические сведения к практической работе:
Работа с символьными величинами.
Символьная величина- это цепочка символов, заключенная в апострофах, длина которой не более 255 символов. Объявление символьных переменных осуществляется в разделе объявления переменных с помощью служебного слова char или string.
Операции над строковыми переменными:
1. Сравнения: <, >, <>, >=, <=,=.
2. Cложения: +.
3. Функции обработки:
а) delete(a, poz, n)- удаление из строки а, начиная с позиции poz n символов.
а:=’оператор’, delete(a,2,2), рез.: оратор
б) insert(str1, str2, poz) – вставка строки str1 в строку str2, начиная с позиции poz.
str1=’ка’, str2=’тропинка’, insert(str1, str2, 6), рез: тропиканка
в) length(str)- длина строки ( количество символов).
str1=’оператор’, length(str), рез: 8
г) copу(str, poz, n)-из строки str, начиная с позиции poz, берутся n символов.
str=’стройка’, copi(str, 2, 6), рез: тройка’
д) str(v,s) – заданное число v преобразует в строку s
е) val(s,v,c) – если строка s состоит из цифр, они преобразуются в некоторое числовое значение и передаются переменной v
1)
program s1;
const a=’классшкола’;
b=’абвгд№0123456789’;
var
c,d: string;
begin
c:=copу(a,6,5)+’ +copу(b,6,1)+copу(b,14,1);
d:=copу(a,1,5)+’ +copу(b,length(b),1)+copу(b,2,1);
write(c,d);
readln;
end.

2) Подсчитайте количество букв «а» в некотором слове.
program s2;
var
c,d: string;
i,n: integer;
begin
writeln(c);
readln(c);
n:=0;
for i:=1 to length(c) do
begin
d:= copу(c,i,1);
if d=’a’ then n:=n+1;
end;
writeln(n);
readln;
end.

3) Дан символьный массив переменной разной длины. Вывести на экран те из них, которые начинаются с буквы «а».
program s3;
var
a: array[1..5] of string;
i:integer;
begin
for i:=1 to 5 do
begin
writeln(задайте слово’);
readln(a[i]);
end;
for i:=1 to 5 do
begin
if copу(a[i],1,1)=’a’ then writeln(a[i]);
end;
readln;
end.

Сделайте вывод по работе.
x

10 20 30 40 50 60 70 80 90


10



20


30


40



50


HYPER13 EMBED Equation.3 HYPER14HYPER15



































Root EntryEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation Native

Приложенные файлы

  • doc file17
    Размер файла: 421 kB Загрузок: 1