
- •1. Подпрограммы
- •1.1. Описание подпрограмм
- •1.2. Обращение к подпрограммам
- •1.3. Виды параметров подпрограмм
- •1.3.1. Параметры-значения и параметры-переменные
- •1.3.2. Параметры процедурного типа
- •1.3.3. Параметры-константы
- •1.3.4. Нетипизированные параметры подпрограмм
- •1.3.5. Массивы и строки открытого типа
- •1.4. Рекурсивные подпрограммы
- •2. Файлы данных
- •2.1. Текстовые файлы
- •2.2. Типизированные файлы
- •2.3. Нетипизированные файлы
- •2.4. Обработка ошибок, возникающих в действиях с файлами
- •3. Указатели - ссылочные типы данных
- •4. Модули
- •5. Локальные и глобальные сети эвм
- •6. Базы данных
- •6.1. Модели организации данных
- •6.2. Нормализация данных
- •6.3. Типы связей между объектами
- •7. Основы компьютерной безопасности
- •7.1. Компьютерные вирусы
- •7.2. Защита информации в Интернете
- •Контрольные работы
- •Тема 1. Параметры-значения и параметры-переменные
- •Пример выполнения задания
- •Решение. Составляем алгоритм (изображен ниже), а затем программу.
- •Варианты задания
- •Тема 2. Процедурный тип Пример выполнения задания
- •Варианты задания
- •Тема 3. Рекурсия Пример выполнения задания
- •Варианты задания
- •Тема 4. Текстовые и типизированные файлы Пример выполнения задания
- •Варианты задания
- •Тема 5. Указатели Пример выполнения задания
- •Варианты задания
- •Тема 6. Модули Пример выполнения задания
- •Варианты задания
- •Библиографический список
- •Оглавление
- •1.1. Описание подпрограмм ……………………………………………… 1
Контрольные работы
Тема 1. Параметры-значения и параметры-переменные
подпрограмм
Пример выполнения задания
Задание. С помощью подпрограммы преобразования вектора номеров в вектор символов получить из матрицы порядковых номеров матрицу символов.
Решение. Составляем алгоритм (изображен ниже), а затем программу.
program Nomer_v_Symbol;
const n = 5;
type ven = array [1..n] of byte;
ves = array [1..n] of char;
var mn : array [1..n] of ven;
ms : array [1..n] of ves;
vv : ven; ss : ves; i, j : byte;
procedure pvns(vn : ven; var vs : ves); {Заголовок процедуры}
var i : byte; {Локальная переменная}
begin for i := 1 to n do vs[i] := chr(vn[i]) end; {Тело процедуры}
begin {Основная программа}
randomize; writeln(‘Исходная матрица’);
for i := 1 to n do begin
for j := 1 to n do begin
mn[i,j] := random(256); write(mn[i,j] : 4) end; writeln end;
for i := 1 to n do begin
for j := 1 to n do vv[j] := mn[i,j]; pvns(vv, ss); ms[i] := ss end;
writeln(‘Преобразованная матрица – матрица символов :’);
for i := 1 to n do begin
for j := 1 to n do write(ms[i,j] : 3);
writeln end
end.
Процедура pnvs
входной параметр – vn, выходной - vs
Варианты задания
С помощью подпрограммы, подсчитывающей число символов c в строке St, определить количество символов ‘о’ и ‘и ’ в предложении.
С помощью подпрограммы, находящей максимальный элемент в векторе, определить максимальные элементы в векторах из 8 и 10 элементов.
С помощью подпрограммы сортировки отсортировать по нарастанию два вектора из 10 и 12 целых чисел.
С помощью подпрограммы подсчитать сумму элементов главной диагонали для матриц 4х4 и 5х5 из вещественных чисел.
С помощью подпрограммы, находящей минимальный элемент в векторе, определить минимальные элементы в векторах из 5 и 10 компонентов.
С
1
1 2
1 2 3
1 2 3 4
1 2 3 4 5
1 2 3 4
1 2 3
2 1 2
1
помощью подпрограммы вычисления
расстояния между двумя точками найти
расстояния между тремя точками на плоскости.
С помощью подпрограммы
вычислить скалярное произведение двух
пар векторов из 3 и из 4 компонентов.
С помощью подпрограммы вывода
элементов вектора получить на экране .
С
*
* *
* *
* *
*
помощью подпрограмм ввода и вывода
вектора ввести и вывести матрицу 4х4.
С помощью подпрограммы, строящей
на экране ромб из одинаковых символов, построить
два ромба из разных знаков .
С помощью подпрограммы, определяющей сумму k членов ряда, вычислить с погрешностью 0,001 exp(x) =
.
С помощью подпрограммы, находящей максимальный элемент в векторе, найти вектор максимальных элементов строк матрицы 5х5.
С помощью подпрограммы транспонировать матрицы 4х5 и 5х5, состоящие из компонент целого типа.
С помощью подпрограммы нахождения корня по методу Ньютона определить корни уравнения exp(x) - x*x*x = 0 с погрешностью 0,001 на отрезках [1, 2] и [4, 5]. Метод заключается в вычислении очередного приближения корня уравнения q по формуле: q[i+1] := q[i] – f(q[i])/f `(q[i]). f `- производная от f.
С помощью подпрограммы вычисления суммы элементов побочной диагонали матрицы подсчитать суммы таких элементов для матриц 5х5 и 3х3.
С помощью подпрограмм ввода и вывода записи заполнить массив из 3 записей с полями: ФИО, год рождения, должность - и вывести его на экран.
С помощью подпрограммы, определяющей принадлежность символа к заданному множеству, установить количество гласных букв в предложении.
Вычислить произведения элементов строк матрицы 3х3, используя подпрограмму определения произведения элементов вектора.
С помощью подпрограммы вывести состав чисел 1407 и 123, начиная со старшего разряда.
С помощью подпрограммы подсчитать количество делящихся на 7 чисел для отрезка [11, 81] и делящихся на 13 - для отрезка [100, 200].
С помощью подпрограммы преобразовать десятичные числа 121 и 17 в двоичные.
С помощью подпрограммы преобразовать двоичные числа 11110 и 1011 в десятичные.
С помощью подпрограммы установить количество цифр в числах 549 и 675412.
С помощью подпрограммы, определяющей, является ли число простым, установить принадлежность чисел 29 и 121 к простым числам.
С помощью подпрограммы определения количества слов в заданной строке установить число слов в двух разных предложениях.