Задачи для самостоятельного решения. 1. Написать программу подсчета суммы М введенных с клавиатуры чисел

1. Написать программу подсчета суммы М введенных с клавиатуры чисел.

2. Составить программу поиска большего из трёх чисел, с использованием процедуры поиска большего из двух чисел.

3. Напишите программу (процедуру), которая будет возвращать значение среднего арифметического двух своих параметров а и b.

4. Написать процедуру, меняющую значения двух переменных а и b местами.

5. Используя процедуру обмена значений двух переменных, упорядочьте по возрастанию переменные a, b, c.

6. Определить длину окружности L и площадь круга S. Радиус окружности задается с клавиатуры. Вычисление S и L оформить в виде процедуры.

7. Постройте диалоговой алгоритм, позволяющий выводить несколько графиков по выбору в одной системе координат. Для построения графиков используйте подпрограммы.

8. Напишите подпрограмму, которая будет вычислять сумму правильных делителей заданного числа n. Правильными делителями числа n, являются все делители этого числа, за исключением его самого.

Занятие 4. Процедуры в графическом режиме.

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

Примечание. Если у Вас появилась идея применения процедуры в графическом режиме для решения задачи другого типа, то - дерзайте!

Занятие 5. Функции.

Другой вид подпрограммы–функция–оформляется аналогично процедуре. Отличительные особенности функции: она имеет только один результат выполнения (но может иметь несколько входных параметров); результат обозначается именем функции и передаётся в основную программу.

Функция оформляется в следующем виде:

Function <имя функции>(формальные параметры: тип): тип значения функции;

Var

...

Begin

...

End;

Вызывается функция по её имени с указанием фактических параметров.

Вызов функции можно делать непосредственно внутри выражения. При вызове функции тип не указывается.

Пример. Пусть требуется найти (x!-y!)*d!.

Напомним, что х! представляет собой произведение n чисел натурального ряда: х! = 1*2*3*......*х

Function fac(n:integer): integer;

Var

p,i: integer;

Begin

p:=1;

for i:=2 to n do

p:=p*i;

fac:=p;

End;

Вызвать можно так: f:=(fac(x)-fac(y))*fac(d).

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


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: