- •Язык Паскаль
- •Тема: Типы данных. Операторы ввода-вывода данных.
- •Теория.
- •Выполните следующие задания:
- •4. Контрольные вопросы.
- •Тема: Линейные программы.
- •Теория.
- •Измените программу так, чтобы на экран выводилось:
- •Контрольные вопросы:
- •Тема: Оператор условия.
- •Повторить теорию.
- •Ответить на контрольные вопросы.
- •1.Теория.
- •3. Внесите в программу предложенные изменения:
- •4. Задание для самостоятельного выполнения.
- •5. Контрольные вопросы:
- •Тема: Оператор выбора.
- •Повторить теорию.
- •Ответить на контрольные вопросы.
- •1. Теория.
- •Блок – схема
- •3. Внесите в программу предложенные изменения.
- •4. Задание для самостоятельного выполнения.
- •5. Контрольные вопросы.
- •Тема: Арифметический цикл.
- •Повторить теорию.
- •Ответить на контрольные вопросы.
- •1. Теория.
- •3. Внесите в программу предложенные изменения:
- •4. Выполните задание.
- •5. Контрольные вопросы.
- •Тема: Цикл с предусловием.
- •Повторить теорию.
- •Ответить на контрольные вопросы.
- •Теория.
- •Блок схема цикла с предусловием.
- •3. Подумайте над вопросами и внесите предложенные изменения:
- •4. Задание для самостоятельного выполнения.
- •5. Контрольные вопросы.
- •Тема: Цикл с постусловием.
- •Повторить теорию.
- •Ответить на контрольные вопросы.
- •Теория.
- •Блок схема цикла с постусловием.
- •3. Подумайте над вопросами и внесите предложенные изменения:
- •4. Задание для самостоятельного выполнения.
- •5. Контрольные вопросы.
- •Тема: Вложенные циклы.
- •Повторить теорию.
- •Ответить на контрольные вопросы.
- •1. Теория.
- •3. Внесите в программу следующие изменения:
- •4. Задание для самостоятельного выполнения.
- •5. Контрольные вопросы.
- •Тема: Одномерные массивы.
- •Повторить теорию.
- •Ответить на контрольные вопросы.
- •1. Теория.
- •3. Внесите в программу предложенные изменения:
- •4. Задание для самостоятельного выполнения.
- •5. Контрольные вопросы.
- •Тема: Двумерные массивы.
- •Повторить теорию.
- •Ответить на контрольные вопросы.
- •1. Теория.
- •Внесите в программу предложенные изменения:
- •4. Задание для самостоятельного выполнения.
- •5. Контрольные вопросы.
- •Тема: Строки. Операции над строками. Функции для работы со строковыми величинами.
- •Повторить теорию.
- •Ответить на контрольные вопросы.
- •1. Теория.
- •Практическая часть.
- •Контрольные вопросы.
- •Тема: Строки. Функции для работы со строковыми величинами.
- •Повторить теорию.
- •Ответить на контрольные вопросы.
- •1. Теория.
- •2. Практическая часть.
- •3. Контрольные вопросы.
- •Тема: “Использование массивов при решении задач на преобразование нечисловой информации. Разделение текста на слова”.
- •3. Ответить на контрольные вопросы.
- •2. Практическая часть.
- •3. Контрольные вопросы.
- •Тема: “Подпрограммы-процедуры”
- •1. Повторить теорию.
- •3. Ответить на контрольные вопросы. Ход работы.
- •1. Теория.
- •2. Практическая часть.
- •3. Контрольные вопросы.
- •Тема: “Подпрограммы-функции”
- •1. Повторить теорию.
- •3. Ответить на контрольные вопросы. Ход работы.
- •Теория.
- •3. Контрольные вопросы.
- •Тема: “Множества”.
- •1. Повторить теорию.
- •3. Ответить на контрольные вопросы.
- •Теория.
- •Практическая часть.
- •Контрольные вопросы.
- •Тема: “Записи”.
- •1. Повторить теорию.
- •3. Ответить на контрольные вопросы.
- •Теория.
- •Обращение к полям записи.
- •Практическая часть.
- •Контрольные вопросы.
- •Тема: “Файлы, типизированные и нетипизированные файлы”.
- •1. Повторить теорию.
- •3. Ответить на контрольные вопросы.
- •Теория.
- •Стандартные процедуры для работы с файлами различного типа.
- •Процедуры для работы с типизированными файлами.
- •2. Практическая часть.
- •3.Контрольные вопросы.
- •Тема: “Файлы, текстовые файлы”.
- •1. Повторить теорию.
- •3. Ответить на контрольные вопросы Ход работы. Теория.
- •Практическая часть.
- •3.Контрольные вопросы.
2. Практическая часть.
Задание 1. Наберите заданную программу, находящую значение выражения без использования стандартной функции модуля числа:
P rogram znachenie1;
Var
a,b,c,d,x,y:real;
procedure modul (z:real; var m:real);
var
begin
if z>=0 then m:=z else m:=-z;
end;
begin
read (x);
modul(sqr(x)+4*x-3,a);
modul(x-1,b);
modul(sqr(x)*x-7,c);
modul(sqr(x)*x-5*x+1,d);
if (x=1) or (x*x*-5*x+1=0) then
writeln (’'деление на 0’)
else begin
y:=a/b+c/d;
writeln(y:8:2);
end;
end.
Измените программу таким образом, чтобы она находила значение выражения:
З адание 2. Наберите заданную программу, выводящую наименьшее число из 5 произвольных.
Program bip;
Var
a,b,c,d,e,g,p,r,q:real;
procedure bid (x,y: real; var z: real);
var
begin
if x>y then z:=x else z:=y;
end;
begin
read(a,b,c,d,e);
bid(a,b,g);
bid(g,c,p);
bid(p,d,q);
bid(q,e,r);
writeln (r:6:2);
end.
Измените программу таким образом, чтобы она выводила наименьшее из шести чисел, введенных с клавиатуры.
Задание 3. Наберите заданную программу, которая просматривает каждое из 3 произвольных введенных с клавиатуры чисел и выводит на экран количество цифр того числа, у которого оно максимально.
Program cifri;
Var
a,b,c,d,e,g,: integer;
procedure bid (i,j,x,y: integer; var z: integer);
var
begin
if x>y then z:=x else z:=y;
end;
procedure kol (t: integer; var k: integer);
begin
k:=0;
while t>0 do
begin
k:=k+1;
t:=t div 10;
end;
end;
begin
read(a,b,c);
kol(a,d);
kol(b,e);
kol(c,g);
bid(d,e,m);
bid(m,g,l);
writeln (l);
end.
Измените программу таким образом, чтобы на экран выводилось само число с наибольшим количеством цифр.
3. Контрольные вопросы.
-
Что такое подпрограмма?
-
Для чего предназначены подпрограммы-процедуры?
-
В чем различия между глобальными и локальными переменными?
-
В чем различия между формальными и фактическими параметрами?
-
Как осуществляется вызов процедуры?
Тема: “Подпрограммы-функции”
Цель: выработать навыки работы с подпрограммами-функциями, а также умения использовать их при решении задач.
План работы.
1. Повторить теорию.
2. Выполнить практическую часть на компьютере, записав ответы в тетрадь.
3. Ответить на контрольные вопросы. Ход работы.
-
Теория.
Подпрограмма-функция предназначена для вычисления какого-либо параметра. У этой подпрограммы два отличия от процедуры.
Первое отличие функции в её заголовке.
Формат описания функции:
Function <имя функции>(<список формальных параметров>):<тип функции>;
Раздел
описаний
Begin
Раздел
операторов
End;
Раздел описаний функции может содержать подразделы: метки, константы, типы, переменные, процедуры и функции. Раздел описаний в процедуре может отсутствовать.
Второе отличие заключается в том, что в теле функции хотя бы один раз имени функции должно быть присвоено значение.
Для вызова функции из основной программы или другой подпрограммы следует выражение, где необходимо использовать значение функции, указать её имя со списком фактических параметров, которые должны совпадать по количеству и типам с формальными параметрами функции.
Задание 1. Наберите заданную программу, находящую значение выражения:
Program znachenie2;
Var
a,b,c,g,d,p,r,q:real;
function max (x,y: real);
var
begin
if x>y then max:=x else max:=y;
end;
function min (x,y: real);
var
begin
if x<y then min:=x else min:=y;
end;
begin
read(a,b,c);
if (max(a,c)<>0) and (min(a,b)<>0) then
d := min(min(a,b),c)/ max(a,c) + max(max(a,b),c)/ min(a,b)
else writeln (‘деление на ноль’);
writeln (d:8:2);
end.
И змените программу таким образом, чтобы она находила значение выражения:
Задание 2. Наберите заданную программу, находящую значение выражения (для трех натуральных чисел a,b,c, введенных с клавиатуры):
Program znachenie2;
Var
a,b,c:integer; d:real;
function nod (x,y: integer;) : integer;
begin
while x<>y do
if x>y then x:=x-y else y:=y-x;
nod:=x;
end;
begin
read(a,b,c);
d:=(nod(nod(a,b),c)/((a*c)div nod(a,c))+((b*c)div nod(b,c))/ ((a*b) div nod(a,b));
writeln (d:8:2);
end.
И змените программу таким образом, чтобы она находила значение выражения:
Задание 3. Наберите заданную программу, находящую значение выражения:
Program znachenie3;
Var
a,b,c:integer; d:real;
function fact (x: integer):integer;
var
I,p:integer;
begin
p:=1;
for I:=1 to x do
p:=p*I;
fact:=p;
end;
begin
read(a,b,c);
if (fact(c)<>0)and fact(b+c) then begin
d:= (fact(a)+fact(b))/fact(c) + fact(a)/fact(b+c)
writeln (d:8:2); end
else writeln(‘деление на ноль’);
end.
Измените программу таким образом, чтобы она находила значение выражения: