Цель и задачи
урока:
Контроль навыков и знаний построения и
использования функций и процедур при решения задач на
языке Паскаль.
Задачи:
Тип урока: урок закрепления новых знаний.
Оборудование: компьютерный класс, карточки с
текстом обобщающей работы
План урока:
ХОД УРОКА
I.
Организационный момент Приветствие. Проверка отсутствующих.
II.
Актуализация знаний
a.
Как записать четность – нечетность числа
b.
Как объявляется массив?
c.
Как распечатать свою работу
III.
Выполнение заданий обобщающего урока
a.
Открыть файл »Контр
работа»
b.
Скопировать свой вариант (с шапкой) ;
вставить на новую страницу; сохранить свой вариант в своей папке с именем «ТО
подпрограммы фамилии»
c.
Пояснение учителя хода выполнения задания(
Содержание этого абзаца записать в тетрадь с компьютера( открыв файл «Пояснения
к работе»
·
Работу выполняют на компьютере, написав свои ответы после
каждого задания
·
Написав программу к 3 заданию, сохранить программу с именем
«Топодпр»; закрыть Паскаль; зайти в папку «BIN»; найти свой файл и открыть это свой
файл через «Блокнот»;скопировать текст программы и
вставить этот текст в сою основную работу после 3 задания.
·
По окончании – свою работу отправить на принтер по сети
d.
Примечание :На работу отводится 2
урока
IV.
Содержание работы
МИНИСТЕРСТВО ОБРАЗОВАНИЯ Украины
Средняя школа № 122 Московского района г. Харьков
«Подпрограммы
на языке Pascal»
для 11-A класса
Профиль “ Физико-математический ”
Выполнил(а) _________________________________________
Класс __________
Дата___________________
Составлено
преподавателем
информатики Баталовой Л.В..
1. Пояснительная записка
Контрольная работа составлена по предмету «Язык программирования Pascal»
для физико-математического класса. Работа включает 4 задания, охватывающих раздел
«Подпрограммы». Первые два задания проверяют теоретические знания по названному
разделу. Учащиеся должны дать определения указанным в заданиях понятиям.
Третье задание позволяет проверить умение учащихся разбираться в
исходном тексте программы, записанной на языке программирования высокого уровня
Pascal.
Четвёртое задание проверяет умение создавать программы с использованием
подпрограмм.
Обязательная контрольная работа содержит 6 вариантов одинаковой степени
сложности и рассчитана на два академических часа.
Вариант 1 I.
Дать понятие подпрограммы. Виды подпрограмм. II.
Как описывается в основной программе подпрограмма-
функция? III.
Составьте условие задачи, программа решения которой
представлена вам ниже: program r5; const n=5; var f:array[1..n] of real;
a,b,c,y:real;i:integer; procedure stat(x:real;var s,min,max:real); begin s:=0;min:=f[1];max:=f[1]; for i:=1 to n do begin if f[i]<min
then min:=f[i]
; if f[i]>max
then max:=f[i]
; s:=s+f[i]; end; s:=s/n; end; begin for i:=1 to n do begin writeln('soob chisla'); read(f[i]); end; stat(y,a,b,c); writeln('sr=',a:5:2,'min=',b:5:2,'max=',c:5:2); end. Ответ:
Программа находит миним,
мак и среднее арифметическое в одномерном массиве, состоящем из N действительных чисел IV.
Построить программу с подпрограммой функцией, которая
создает массив из N целых чисел и выводит на экран частное от деления каждого
числа на 10 Ответ: Program max_tabl; const n=3; var a:array[1..n] of integer; i:integer; s:integer; function
del10(x1:integer):integer; begin if
x1 mod 10=0 then del10:=x1; end; begin for
i:=1 to n do begin writeln ('soob choslo'); readln(a[i]); end; for
i:=1 to n do begin s:=
del10(a[i]); s:=s
div 10; writeln(s);
end; end. |
Вариант 2 I. Процедуры и функции.
Способы описания и обращения. Параметры: формальные и фактические, локальные
и глобальные. II.
Чем отличается процедура от функции? III.
Составьте условие задачи, программа решения которой
представлена вам ниже: program r5; const n=4; var r:array[1..n]
of real; var y:real; a,b,c,
s1,s2,s3,s4:real;i:integer; function stat(x, s,min,max:real):real; begin s:=0; for i:=1 to n do begin min:=r[1];max:=r[1]; if r[i]<min then
min:=r[i] ; if r[i]>max
then max:=r[i]
; s:=s+r[i]; end; s:=s/n; end; begin for i:=1 to n do begin writeln('soob chisla'); readln(r[i]); end; writeln('soob chisla'); readln(a,b,c); stat(r[i],a,b,c); writeln; writeln('sr=',a,'min=',b,'max=',c); end. Ответ: Программа находит среднее арифметическое, мак, мин в массиве IV. Построить программу
с процедурой, которая создает массив из N целых чисел и
находит произведение тех элементов, которых являются четными Program tabl; const n=3; var a:array[1..n]
of integer; i:integer; s:integer; procedure begin y:=1; for k:=1 to n do if x1 mod 2=0 then y:=y*x1;
end; begin for i:=1 to n do begin writeln ('soob
choslo'); readln(a[i]); end; |
Вариант 3 I.
Что такое подпрограммы? II.
Что такое локальные и глобальные переменные? III.
Составьте условие задачи, программа решения которой
представлена вам ниже: Program B; var x,y,max,min,p,s,v:real; Function D(m,n:real):real; begin if
n>m then D:=n else D:=m; end; begin writeln('soobwite 4isla x,y:');
readln(x,y); max:=D(x,y); s:=x+y;
S:=sqr(s); {sqr(max(5,x+y))} max:=sqr(max); {sqr(max(x,y))} min:=sqr(s); {min(5,x+y)} p:=2*max; {2*min(x,y)} V:=S+max-min+p; {V:=sqr(max(5,x+y))+sqr(max(x,y))-min(5,x+y)+(2*min(x,y))} writeln(v:3:2); writeln(s:3:2);
writeln(max:3:2); writeln(min:3:2); writeln(p:3:2); End. Ответ: Находит значение выражения: V:=sqr(max(5,x+y))+sqr(max(x,y))-min(5,x+y)+(2*min(x,y))} IV. Построить программу
с подпрограммой функцией, которая создает массив из N целых чисел и определяет,
подсчитывает количество элементов, больших 3. Program tabl; const n=3; var a:array[1..n]
of integer; i:integer; s,z:integer; function tri(k,x1,y:integer):integer; begin y:=0; for k:=1 to n do if x1>3 then tri:=y+1; end; begin s:=0; for i:=1 to n do begin writeln ('soob choslo'); readln(a[i]); end; z:=tri(i,a[i],s); writeln(z); end. |
Вариант 4 I.
Дать понятие подпрограммы II.
Как вызывается подпрограмма- функция из основной
программы? III.
Составьте условие задачи, программа решения которой
представлена вам ниже: program r5; const n=5; var f:array[1..n] of real;
a,b,c,y:real;i:integer; procedure stat(x:real;var s,min,max:real); begin s:=0;min:=f[1];max:=f[1]; for i:=1 to n do begin if f[i]<min
then min:=f[i]
; if f[i]>max
then max:=f[i]
; s:=s+f[i]; end; s:=s/n; end; begin for i:=1 to n do begin writeln('soob chisla'); read(f[i]); end; stat(y,a,b,c); writeln('sr=',a:5:2,'min=',b:5:2,'max=',c:5:2); end. Ответ:
Программа находит миним, мак и среднее
арифметическое в одномерном массиве, состоящем из N действительных чисел V.
Построить программу с процедурой, которая создает массив
из N целых чисел и определяет,
сколько в нем четных чисел. Program tabl; const n=3; var a:array[1..n]
of integer; i:integer; s:integer; procedure begin y:=0; for k:=1 to n do if x1 mod 2=0 then y:=y+1; end; begin for i:=1 to n do begin writeln ('soob
choslo'); readln(a[i]); end; |
Вариант 5 I.
Что такое фактические и формальные параметры? II.
Как вызывается подпрограмма- функция из основной программы? III.
Составьте условие задачи, программа решения которой
представлена вам ниже: program r5; const n=4; var r:array[1..n]
of real; var y:real; a,b,c,
s1,s2,s3,s4:real;i:integer; function stat(x, s,min,max:real):real; begin s:=0; for i:=1 to n do begin min:=r[1];max:=r[1]; if r[i]<min then
min:=r[i] ; if r[i]>max
then max:=r[i]
; s:=s+r[i]; end; s:=s/n; end; begin for i:=1 to n do begin writeln('soob chisla'); readln(r[i]); end; writeln('soob chisla'); readln(a,b,c); stat(r[i],a,b,c); writeln; writeln('sr=',a,'min=',b,'max=',c); end. Ответ: Программа находит среднее арифметическое, мак, мин в массиве IV. Построить программу
с процедурой, которая создает массив из N целых чисел и определяет,
находит сумму нечетных чисел Program tabl; const n=3; var a:array[1..n]
of integer; i:integer; s:integer; procedure begin y:=0; for k:=1 to n do if x1 mod 2<>0 then
y:=y+x1;
end; begin for i:=1 to n do begin writeln ('soob
choslo'); readln(a[i]); end; |
Вариант 6 1.
Дать понятие подпрограммы. Виды подпрограмм. 2.
Как описывается в основной программе подпрограмма- прцедура? 3.
Составьте условие задачи, программа решения которой
представлена вам ниже: Program B; var x,y,max,min,p,s,v:real; Function D(m,n:real):real; begin if
n>m then D:=n else D:=m; end; begin writeln('soobwite 4isla x,y:');
readln(x,y); max:=D(x,y); s:=x+y;
S:=sqr(s); {sqr(max(5,x+y))} max:=sqr(max); {sqr(max(x,y))} min:=sqr(s); {min(5,x+y)} p:=2*max; {2*min(x,y)} V:=S+max-min+p; {V:=sqr(max(5,x+y))+sqr(max(x,y))-min(5,x+y)+(2*min(x,y))} writeln(v:3:2); writeln(s:3:2);
writeln(max:3:2); writeln(min:3:2); writeln(p:3:2); End. Ответ: Находит значение выражения: V:=sqr(max(5,x+y))+sqr(max(x,y))-min(5,x+y)+(2*min(x,y))} 4.
Построить программу, которая создает массив из N целых чисел и для
каждого четного элемента выводит на
экран монитора его порядковый номер. Program tabl; const n=3; var a:array[1..n]
of integer; i:integer; s:integer; procedure begin for k:=1 to n do if x1 mod 2=0 then y:=k;
end; begin for i:=1 to n do begin writeln ('soob
choslo'); readln(a[i]); end; |