Лабораторная работа № 7

Функции и процедуры. Рекурсия.

Цель лабораторной работы: овладение навыками алгоритмизации и программирования задач с использованием подпрограмм пользователя различных видов.

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

Студент должен уметь: составлять программы с использованием подпрограмм-функций и подпрограмм-процедур.

Студент должен владеть: навыками составления подпрограмм и обращения к ним, выбора параметров подпрограмм.

Теоретические вопросы.

1.  Понятие подпрограммы.

2.  Сходство и различие подпрограмм-процедур и подпрограмм-функций.

3.  Фактические и формальные параметры. Их связь.

4.  Глобальные и локальные переменные. Их область действия.

5.  Отличия параметров-переменных от параметров-значений.

6.  Рекурсивные функции.

Вариант №1.

1.  Вычислить , где V1, V2, V3 – объемы шаров с радиусами R1, R2, R3 соответственно.

2.  Даны четыре отрезка. Для каждой тройки этих отрезков, из которых можно построить треугольник, напечатать площадь данного треугольника (использовать процедуру).

3.  Вычислить значения функции F(x) = sin(cos(2x-2-x))*tg(cos2(sos(2x-2-x)) на отрезке [0,1] с шагом 0,1.

4*. Составить программу, определяющую, как заданная сумма денег выражается минимальным числом банкнот ценностью по 100, 50, 25, 10, 5, 3 и 1 р.

НЕ нашли? Не то? Что вы ищете?

Вариант №2.

1.  Вычислить .

2.  Составить программу вычисления наименьшего общего кратного трёх цёлых чисел x, y, z.

3.  Известны координаты вершин треугольника ABC. Определить принадлежит ли вводимая точка данному треугольнику.

4*. Type масть=(пики, трефы, бубны, черви); достоинство=(6, 7, 8, 9, 10, валет, дама, король, туз); карта = Record

M: масть;

D: достоинство;

End;

Описать логическую функцию бьёт(k1,k2,km), проверяющую бьёт ли карта k1 карту k2 с учётом того, что масть km является козырной.

Вариант №3.

1.  Найти min из 5-ти чисел. В подпрограмме реализовать выбор min из двух чисел.

2.  Вычислить большие корни квадратных уравнений: x2-ax+b=0 и cy2-dx-f=0.

3.  Вычислить сумму 1!+2!+3!+…+n!.

4*. Составьте программу подсчета числа четных цифр, используемых в записи n-значного числа.

Вариант №4.

1.  Вычислить , используя подпрограмму вычисления .

2.  Напишите программу вычисления площади поверхности и длины экватора на основании известного радиуса планет Солнечной системы. Форму планет считать шаром. Вычисления оформить отдельными функциями.

3.  Используя алгоритм вычисления функции факториала в качестве вспомогательного, составьте программу вычисления суммы факториалов всех четных чисел от 2 до 100.

4*. Составьте программу нахождения всех трехзначных чисел, в записи которых нет четных цифр.

Вариант №5.

1.  Вычислить Z=(sign x+ sign y).sign (x+y), используя в подпрограмме вычисление

2.  Вычислить Z=(х1+у1)/(х2-у2), где х1 и x 2 – корни уравнения 2x2+x-4=0, у1 и у2 – корни уравнения ay2+2y-l=0.

3.  Составьте программу нахождения приближенного значения функции y=sin x при малых значениях x по формуле

.

4*. Составьте программу подсчета числа всех натуральных чисел, меньших М, квадрат суммы цифр которых равен X.

Вариант №6.

1.  Найти max из 5-ти чисел. В подпрограмме реализовать выбор max из двух чисел.

2.  Даны координаты вершин многоугольника (n вершин). Определить его периметр (нахождение расстояния между вершинами оформить в виде подпрограммы).

3.  Составьте программу нахождения всех “счастливых” автобусных билетов. Билет называется “счастливым”, если сумма первых трех цифр равна сумме последних трех цифр. Например, 243126 “счастливый” билет, т. к. 2+4+3=1+2+6.

4*.Составить программу нахождения квадратов простых чисел лежащих в некотором диапазоне (a, b).

Вариант №7.

1. Даны три стороны треугольника. Определить его углы. В подпрограмме реализовываете алгоритм нахождения одного угла треугольника.

2. Составьте программу решения биквадратного уравнения .

4.  Последовательность Фибоначчи Fn строится следующим образом: F1=F2=1, Fn+1=Fn+F n-1. Вычислить n-й член последовательности Фибоначчи.

4*. Заданы координаты вершин треугольника ABC. Определить принадлежит ли вводимая точка треугольнику.

Вариант № 8.

1.  Дана функция . Вычислить F(1,3)+F(2,6)-F(0,4).

2.  Используя подпрограмму нахождения наибольшего общего делителя двух целых чисел НОД (a, b) найдите наибольший общий делитель трех чисел НОД (x, y,z).

3.  Последовательность Фибоначчи Fn строится следующим образом: F1=F2=1, Fn+1=Fn+Fn-1. Вычислить сумму первых n членов последовательности Фибоначчи.

4*. Type strana=(Franc, USA, Angl, Peru, Ital);

Kontinent=(America, Africa, Europa);

Var x, y: strana; t: boolean;

Описать функцию kont (s), определяющую континент, на котором находится страна s, и использовать ее для изменения значения переменной t на противоположное, если страны x и y находятся на разных континентах.

Вариант № 9.

1.  Известны длины отрезков: a, b, c, d. Вычислить площади треугольников: Sabc, Sabd, Sbcd.

2.  Составить программу для вычисления функции , где x1, x2 – корни уравнения ax2+ux-1,5=0; y1,y2 – корни уравнения 2y2 .

3.  Даны координаты вершин двух треугольников. Определить какой из них имеет большую площадь.

4*. type natur = 1..maxint;

var a, b : real; k: natur;

Описать функцию st(x, n) от вещественного x и натурального n, вычисляющую через умножение величину, и использовать ее для вычисления

Вариант № 10.

1.  Известны длины сторон четырехугольника: AB, BC, CD, AD. Вычислить площадь четырехугольника ABCD (рис. 1).

 

Рис. 1

2.  Используя подпрограмму нахождения наибольшего общего делителя двух целых чисел НОД (a, b) найдите наименьшее общее кратное этих чисел НОК (a, b).

3.  Логической переменной t присвоить значение истины, если уравнения и имеют вещественные корни и при этом оба корня первого уравнения лежат между корнями второго, и присвоить значение лжи во всех остальных случаях.

4 *. Два натуральных числа называются “дружественными”, если каждое из них равно сумме всех делителей другого, за исключением его самого (например,220 и 284). Напечатать все пары “дружественных” чисел, не превосходящих заданного натурального числа.

Лабораторная работа № 8

Графика

Цель лабораторной работы: закрепление теоретических знаний об стандартных процедурах и функциях языка программирования Turbo Pascal; овладение практическими навыками разработки алгоритмов и программ создания графических изображений.

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

Студент должен уметь: записывать блок-схемы создаваемых программ; записывать вызов основных подпрограмм модуля GRAPH; создавать программы с использованием графических примитивов, представлять результаты математических расчетов в наглядной форме.

Студент должен владеть навыками: инициализации графического режима, использования процедур и функций модуля GRAPH, построения графиков функций.

Теоретические вопросы.

1.  Стандартные модули системы Турбо-Паскаль, их назначение.

2.  Структура модуля.

3.  Основные процедуры и функции модуля CRT.

4.  Основные подпрограммы модуля GRAPH для работы с линиями и прямоугольниками.

5.  Основные подпрограммы модуля GRAPH для работы с дугами, окружностями и эллипсами.

6.  Подпрограммы управления цветом и фоном графических изображений.

7.  Подпрограммы создания закрашенных изображений.

8.  Подпрограммы управления стилем линий и формирования узора заполнения закрашенной области.

9.  Подпрограммы построения ломанных и многоугольников.

10.  Подпрограммы создания движущихся изображений.

Вариант №1

1. Изобразить на экране ЭВМ рисунок № 1.

2. Построить график функции f(x)=x-sin x.

3. * Создать произвольный рисунок.

Вариант №2

1.  Изобразить на экране ЭВМ рисунок № 2.

2.  Построить график функции f(x)=2 cos x – 1.

3.  Создать произвольный рисунок.

Вариант №3

1.  Изобразить на экране ЭВМ рисунок № 3.

2.  Построить график функции f(x)=ctg x +1.

3.  * Создать произвольный рисунок.

Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 11 12 13 14