Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Основы алгоритмизации и программирования

.pdf
Скачиваний:
182
Добавлен:
24.02.2016
Размер:
1.83 Mб
Скачать

ПРАКТИКУМ ПО ИЗУЧЕНИЮ ДИСЦИПЛИНЫ

1.1. Задание для решения задач с числами

Ввести 3 числа.

1)Вычислить | | a – b | – c |, не используя стандартные функции. Вывести полученное значение.

2)Вывести числа в возрастающей последовательности их модулей.

3)Вывести числа в убывающей последовательности.

4)Являются ли они сторонами треугольника и какого.

5)Вывести максимальное значение.

6)Вывести минимальное значение.

7)Вывести номер максимального числа.

8)Вывести номер минимального числа.

9)Вывести число, имеющее среднее значение.

10)Вывести номер числа, имеющего среднее значение.

11) Третье число – код операции между первыми двумя: 1 – ‘+’, 2 – ‘-’, 3 -‘*’. Вывести результат операции.

12)Первые два числа – интервал. Вывести сообщение, попадает ли третье число в заданный двумя первыми числами интервал.

13)Вывести сообщение является ли произведение чисел четным числом или нет.

14)Вывести сообщение является ли сумма чисел кратной 3 или нет.

15)Определить число, полученное выписыванием в обратном порядке цифр заданного числа (количество цифр <= 5).

1.2. Задание для решения задач с последовательностями чисел

Вводится последовательность чисел. Признак конца ввода – число 777. Записать алгоритм решения следующей задачи.

1)Нахождения количества чисел в последовательности.

2)Нахождения суммы последовательности чисел.

3)Нахождения произведения последовательности чисел.

4)Нахождения максимального числа последовательности чисел.

5)Нахождения минимального числа последовательности чисел.

6)Нахождения среднего арифметического значения последовательности чисел.

7)Определения попадает ли третье число в интервал, задаваемый первыми двумя. Длина последовательности кратна 3.

8)Определения, какое из тройки чисел является средним значением остальных двух. Вывести порядковый номер данного числа. Длина последовательности кратна 3.

9)Подсчета количества положительных, отрицательных и нулевых чисел.

10)Подсчета количества пар чисел, у которых первое число равно второму. Длина последовательности кратна 2.

11)Определения порядковых номеров отрицательных чисел.

12)Определения порядковых номеров положительных чисел.

13)Определения порядковых номеров нулей.

14)Определения порядкового номера минимального числа.

15)Определения порядкового номера максимального числа.

16)Определения порядкового номера последнего нуля.

17)Определения, какая операция над двумя числами дает третье число (операции +, -, *,/). Длина последовательности кратна 3.

176

ПРАКТИКУМ ПО ИЗУЧЕНИЮ ДИСЦИПЛИНЫ

1.3.Задание для решения задач на множества.

1.Вводятся размерность прямоугольной матрицы и значения ее элементов. Элементы матрицы представляют собой целые положительные числа не более 200. Требуется написать программу, в которой составить множество элементов матрицы, которые меньше всех своих соседей (координаты ±1) и кратны 3.

2.Вводится строка символов, состоящая из строчных латинских букв. Написать программу составления множества всех символов, которые встречаются в строке один раз.

1.4.Задание для решения задач на записи

1.Вводятся записи следующей структуры:

Табельный номер

цифровое поле

ФИО

– символьное поле длиной 30 символов

Код должности

цифровое поле

Стаж работы

цифровое поле

Адрес

– символьное поле длиной 50 символов

Вывести на экран ФИО сотрудников со стажем работы больше 20 лет.

2. Вводятся записи следующей структуры:

артикул товара

символьное поле

наименование товара

символьное поле

количество проданного товара

цифровое поле

цена товара

цифровое поле

Подсчитать общую стоимость по всем вводимым записям. Стоимость рассчитывается, как произведение количества проданного товара и цены

1.5. Задание для решения задач на процедуры и функции.

Составить главную программу и процедуру. В главной программе осуществляется ввод исходных данных, обращение к процедуре и вывод результатов. В процедуре:

1.для матрицы A(M,N) составить векторы координат элементов, которые являются числами Фибоначчи.

2.для матрицы A(M,N) составить векторы координат элементов, меньших своих соседей в строках и являющихся простыми числами.

Составить главную программу и функцию. В главной программе ввод исходных данных, обращение к функции и вывод результатов. В функции:

1.Для матрицы A(M,N) подсчитать количество совершенных чисел в строках.

2.Для матрицы A(M,N) найти произведение простых чисел в столбцах.

3.Определить, является ли данная квадратная матрица симметричной относительно побочной диагонали.

4.Определить произведение максимального и минимального из простых чисел матрицы.

5.Определить количество столбцов матрицы, упорядоченных по возрастанию или убыванию.

6.Определить минимальное из чисел, находящихся между двумя числами Фибоначчи (по строке). Первый и последний элемент в строках не рассматривать.

177

ПРАКТИКУМ ПО ИЗУЧЕНИЮ ДИСЦИПЛИНЫ

1.6. Задание для решения задач на строки.

Слово – последовательность символов, ограниченная с двух сторон (или с одной) разделителями. Разделители: .,?;!/:%() * и т.д. Разделители описывать как множество.

1)Вводится строка. Отредактировать ее, продублировав все слова, начинающиеся на заданную букву и удалив все слова, не содержащие эту же букву. Заданная буква вводится дополнительно.

2)Вводится строка. Удалить из строки пару слов, которые имеют одинаковую длину и отличаются друг от друга на максимальное количество символов.

3)Вводится строка. Оставить частотный словарь из двух векторов. В одном различные слова, в другом – частоты (сколько раз слово встретилось в строке).

4)Вводятся 2 строки. Найти слово минимальной длины, которое есть в обеих строках.

5)Вводится строка. Распечатать все слова, которые состоят только из тех же символов, что и 5 слово предложения.

6)Вводится строка. Удалить все уникальные слова.

7)Вводится строка. Слова только из строчных латинских букв. Удалить в словах буквы, нарушающие упорядоченность по алфавиту.

8)Вводится строка. Распечатать слова, имеющие максимальную длину, в алфавитном порядке.

1.7.Задание для решения задач на динамические массивы

1.Создать в динамической памяти матрицу целых чисел размерностью М на N, где М – количество строк, а N – количество столбцов. Найти сумму минимальных элементов в столбцах матрицы.

2.Создать в динамической памяти матрицу целых чисел размерностью М на N, где М – количество строк, а N – количество столбцов. Удалить из матрицы строки, не содержащие повторяющихся чисел.

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

1.8.Задание для решения задач на списки

1.Написать процедуру с параметрами, в которой из данного линейного однонаправленного списка удаляется элемент с заданным номером. Номер передается в качестве параметра.

2.Написать процедуру с параметрами, в которой дан линейный однонаправленный список, элементы которого являются слагаемыми многочлена (каждый элемент содержит степень Х и коэффициент). Вычислить значение многочлена при заданном Х, передаваемом в качестве параметра.

1.9.Задание для решения задач на деревья

1.Написать процедуру с параметрами, в которой дано бинарное дерево, элементы которого содержат целые числа. Вывести на экран содержимое листьев.

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

178

ПРАКТИКУМ ПО ИЗУЧЕНИЮ ДИСЦИПЛИНЫ

1.10.Задание для решения задач на файлы

1.Дан файл целых чисел. В другой файл записать суммы минимального и максимального среди положительных и отрицательных чисел.

2.Дан текстовый файл. В другой текстовый файл записать различные символы и их частоту встречаемости в файле в виде:

Символ – частота

3.Создать файл с записями следующей структуры:

Табельный номер

цифровое поле

ФИО

символьное поле

Код должности

цифровое поле

Стаж работы

цифровое поле

Адрес

символьное поле

С клавиатуры вводится код должности. Вывести ФИО сотрудников с введенным кодом должности, которые имеют стаж свыше 20 лет.

4.Дан файл записей следующей структуры:

зачетной книжки – 5 символов (2 символа – год,3 символа – № студента)

ФИО

символьное поле

Предмет 1

символьное поле

Оценка 1

цифровое поле

Файл создан так, что номер записи файла совпадает с номером студента.

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

5.

Дан файл с записями следующей структуры:

артикул товара

 

 

символьное поле

наименование товара

 

 

символьное поле

количество проданного товара –

цифровое поле

цена товара

 

 

цифровое поле

С клавиатуры вводятся артикулы товаров и новые цены товаров. Скорректировать

записи файла, записав новые цены.

 

 

 

6.

Дан файл записей следующей структуры

Шифр программы

цифровое поле

ФИО программиста

символьное поле

Количество операторов –

цифровое поле

Время отладки

цифровое поле

Вывести на экран ФИО программистов, которые тратят в 2 раза больше времени на

отладку одного оператора, чем среднее время.

7. Дан файл с записями следующей структуры:

1.

код отдела

 

цифровое поле

2.

код лаборатории

 

цифровое поле

3.

табел. номер сотрудника

цифровое поле

4.

код начисления

 

цифровое поле

5.

сумма начисления

 

цифровое поле

Входная информация упорядочена по реквизитам:1, 2, 3. По одному сотруднику может быть несколько записей.

179

ПРАКТИКУМ ПО ИЗУЧЕНИЮ ДИСЦИПЛИНЫ

Получить ведомость следующего вида:

№ п/п

Код отдела

Код лаб.

Табельный номер

Начислено

 

 

 

 

 

 

Х

ХХ

 

ХХ

ХХХ

ХХХХ.ХХ

 

По лаборатории

 

ХХХХХ.ХХ

 

По отделу

 

ХХХХХ.ХХ

 

Общий итог

ХХХХХХХ.ХХ

По одному сотруднику в ведомости должна быть одна строка. Необходимо подво-

дить итоги по лаборатории, отделу и всего.

 

8. Дан файл с записями следующей структуры:

 

Табельный номер

цифровое поле

 

Шифр управления –

цифровое поле

 

Код отдела

цифровое поле

 

ФИО

 

символьное поле

 

Начислено

цифровое поле

 

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

180

ПРАКТИКУМ ПО ИЗУЧЕНИЮ ДИСЦИПЛИНЫ

Лабораторные работы

1.1 Лабораторная работа «Сумма ряда»

Вычислить сумму ряда. Вычисления заканчивать при достижении заданной степени точности (т.е. очередной член ряда становится меньше введенной точности).

1) e = 1 +

1

 

+

 

 

 

1

 

 

 

+ ... +

 

 

1

 

 

 

+ ...

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1!

2!

 

 

 

 

n!

 

 

 

 

 

 

x n

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2)e x

= 1 + x +

 

x 2

 

+

 

 

 

x 3

+

 

 

 

x 4

 

+ ... +

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3!

4!

 

 

n!

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2!

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x 2 n

 

 

 

3 ) cos(

 

x )

=

1

 

 

 

 

x 2

 

 

+

 

 

 

 

x

4

 

 

 

 

 

...

 

+ (

1 )

n

 

 

+ ...

 

 

 

 

 

 

2 !

 

 

 

 

 

4 !

 

 

 

 

 

 

 

 

 

( 2 n )!

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4 ) ln( 1 + x )

=

 

 

x

 

 

 

x 2

+

 

 

 

x 3

 

 

...

 

| x |<1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5 ) π

 

= 1

1

+

 

1

 

 

 

 

 

 

1

+

 

1

 

 

...

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4

 

 

 

 

 

 

 

 

 

 

3

 

 

 

 

 

 

 

5

 

 

 

 

 

 

 

 

 

7

 

 

 

 

 

 

9

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

6 ) S

=

1

 

+

 

1

 

 

 

+

1

+ ...

 

+

 

 

 

1

 

 

+ ...

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

4

 

 

 

8

 

 

2 n

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7 ) S

 

= 1 +

 

 

 

 

1

 

 

 

 

+

 

 

 

 

 

1

 

 

 

 

 

 

+

 

 

1

 

 

 

 

 

 

+ ...

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

101

 

 

 

 

201

 

 

 

 

 

301

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

8 ) S

=

 

 

 

 

1

 

 

+

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

+

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

+ ...

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1 * 2

 

 

 

 

2 * 2 2

 

 

 

 

3 * 2 3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

9 ) S

 

= 1 +

 

 

 

 

1

 

 

 

 

+

 

 

 

 

1

 

 

 

+

 

 

 

 

 

 

1

 

+ ...

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2 2

 

 

3 2

 

 

 

4 2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

10 ) S

 

=

 

 

 

 

 

 

 

 

n

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

n

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

n =1

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

11)(1 + x) m

= 1 + m * x + m (m 1)

x 2

+ ... + m (m 1)...( m n +1) x n + ...

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2!

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

n!

 

 

 

m = − 1 ,

 

 

 

 

 

,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

| x |< 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

12 ) arctg

 

 

( x )

=

 

 

 

 

x

 

 

x 3

 

+

 

x

5

 

 

 

 

 

x 7

+ ...

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

 

 

 

 

 

5

 

 

 

 

 

 

 

 

7

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

13 ) S

 

=

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

+

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

+

 

 

 

 

 

 

3

 

 

 

+ ...

 

 

 

 

 

 

 

 

 

 

 

 

2 * 3 * 4

 

 

 

3 * 4 * 5

 

 

 

4 * 5 * 6

 

 

 

 

 

 

 

 

 

14 ) Y

 

=

 

 

 

 

 

 

2 !

 

 

 

 

 

 

 

 

 

+

 

 

 

 

 

 

 

 

 

 

 

3!

 

 

 

 

 

 

 

 

+

 

 

 

 

 

 

 

4 !

 

 

 

+ ...

 

 

 

 

 

 

 

 

 

 

 

 

 

x

 

2 * 3!

 

 

 

 

 

x

4 * 4 !

 

 

 

 

x 6 * 5 !

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x 2

 

 

 

 

 

 

 

 

 

 

x 3

 

 

 

15 )Y

 

=

 

 

 

 

 

 

 

 

 

x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

+

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

+

 

 

 

 

 

 

 

 

 

+ ...

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x 2

 

 

 

 

 

(1 + x

 

 

 

 

 

 

 

 

 

x

2

 

 

 

 

 

 

 

 

 

 

 

x +

x 2

 

 

 

 

 

1 + x +

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

+

 

 

 

 

 

 

 

 

 

) * 2!

 

 

(1 +

 

 

 

) * 3!

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x 2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x 3

 

 

 

 

 

 

 

 

 

 

 

16 )Y

 

= ( x

1

 

) 2

 

 

 

 

(

 

 

 

 

 

 

1

 

 

 

) 2

+ (

 

 

 

 

1

 

) 2 ...

 

 

x

 

 

 

 

 

2!

 

 

 

 

 

x 2

 

 

 

3!

 

 

 

x 3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

181

 

 

 

 

 

 

 

 

 

 

ПРАКТИКУМ ПО ИЗУЧЕНИЮ ДИСЦИПЛИНЫ

17 )

 

 

1

= 1 x 2

+ x 4 x 6 + ...

 

 

| x |<1

 

 

 

 

 

1

+ x 2

 

 

 

 

 

 

 

 

 

1

 

 

2

 

 

 

2 * 5

 

 

2 * 5 * 8

 

 

18 ) 3

1 +

x = 1 +

x

 

x 2

+

x 3

x 4 + ...

| x |<1

3

2!* 3

2

3!* 3

3

4!* 3

4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1.2Лабораторная работа «Одномерные массивы»

Вводится длина одномерного массива (вектора) и значения его элементов.

1)Подсчитать и вывести на экран количество элементов массива, равных заданному значению. Заданное значение вводится с клавиатуры.

2)Составить и вывести на экран новый массив с номерами элементов исходного массива, которые равны заданному значению. Заданное значение вводится с клавиатуры.

3)Составить и вывести на экран новый массив со значениями элементов исходного массива, которые не равны заданному значению. Заданное значение вводится с клавиатуры.

4)Поменять местами максимальный и минимальный элементы массива. Вывести измененный массив на экран.

5)Подсчитать и вывести на экран количество отрицательных, положительных и нулевых элементов массива.

6)Все элементы массива, меньшие заданного значения, и их номера записать в новые массива. Вывести новые массивы на экран. Заданное значение вводится с клавиатуры.

7)Все элементы массива, большие заданного значения, и их номера записать в новые массивы. Вывести новые массивы на экран. Заданное значение вводится с клавиатуры.

8)Подсчитать и вывести на экран процент нулевых элементов в исходном массиве.

9)Определить и выдать сообщение на экран, какая сумма по абсолютной величине больше, отрицательных или положительных элементов вектора.

10)Вводится дополнительный массив разрешенных значений. Определить и вывести на экран, сколько элементов исходного массива имеют неразрешенные значения.

11)Вводится дополнительный массив разрешенных значений. Определить и вывести на экран, сколько элементов исходного массива имеют разрешенные значения.

12)Вводится дополнительный массив разрешенных значений. Составить массив из элементов исходного массива, имеющих неразрешенные значения. Вывести результативный массив на экран.

13)Составить и вывести на экран массив с М минимальными значениями исходного массива. М вводится дополнительно.

14)Составить и вывести на экран массив с М максимальными значениями исходного массива. М вводится дополнительно.

15)Переписать элементы массива в обратном порядке на том же месте. Вывести измененный массив на экран.

16)Составить и вывести на экран массив из различных элементов исходного массива.

17)Cоставить и вывести на экран массив номеров элементов исходного вектора, встречающихся один раз.

18)Составить и вывести на экран два массива: массив повторяющихся элементов исходного массива и массив их частот.

182

ПРАКТИКУМ ПО ИЗУЧЕНИЮ ДИСЦИПЛИНЫ

1.3 Лабораторная работа «Двумерные массивы»

Ввести размер прямоугольной матрицы и значения ее элементов. Построить вектор В, где В(i) -

1)число неотрицательных элементов в i-ой строке.

2)число нулевых элементов в i-ом столбце.

3)среднее арифметическое отрицательных элементов в i-ой строке.

4)среднее арифметическое положительных элементов в i-ом столбце.

5)минимальное значение в i-ой строке.

6)максимальное значение в i-ом столбце.

7)номер максимального значения в i-ой строке.

8)номер минимального значения в i-ом столбце.

9)число элементов i-ой строки, значения которых меньше заданного значения.

10)число элементов i-ого столбца, значения которых равны заданному значению.

11)значение элемента матрицы, не равное заданному значению.

12)равно 1, если значения элементов i-ой строки упорядочены по возрастанию, и 0, в противном случае.

13)равно 1, если значения элементов i-ого столбца упорядочены по убыванию, и 0, в противном случае.

14)номера строк последних минимальных элементов в i-ом столбце.

15)номера столбцов первых максимальных элементов в i-ой строке.

16)количество простых чисел в i-ой строке.

17)количество совершенных чисел в i-ом столбце.

18)количество чисел Фибоначчи в i-ой строке.

1.4 Лабораторная работа «Процедуры и функции»

Оформить вычисления лабораторной работы «Сумма ряда» задания в виде процедуры и функции в двух вариантах:

1)описание процедуры/функции присутствует в программе;

2)описание процедуры/функции включается в компиляцию из внешнего файла.

Все входные и выходные данные для процедуры/функции передавать через список формальных параметров. Выполнить оба варианта и для процедуры, и для функции.

1.5 Лабораторная работа «Модульное программирование»

Составить главную программу, в которой вводится размер прямоугольной матрицы

иее элементы, обращение к процедуре обработки и вывод результата. Процедура обработки должна быть обязательно с параметрами (передается размер матрицы, сама матрица

иожидаемые результаты) и оформлена в виде модуля. Алгоритм, реализуемый в виде процедуры обработки матрицы, выбирается из задания на лабораторную работу «Двумерные массивы».

1.6 Лабораторная работа «Обработка строк»

Вводится строка текста. Строка может быть пустая или из одних пробелов. Разделители представляют собой множество символов – /?.,<;>:”!’*% . Слово – любая последовательность символов, ограниченная с одной или двух сторон разделителями.

183

ПРАКТИКУМ ПО ИЗУЧЕНИЮ ДИСЦИПЛИНЫ

1)Удалить слово с заданным номером среди палиндромов. Палиндром – это слово, которое читается одинаково слева направо и справа налево.

2)Составить вектор длин слов, начинающихся на ту же букву, на которую заканчивается предыдущее слово.

3)Вывести слово с максимальной четной длиной, содержащее заданную подстроку. Подстрока вводится дополнительно.

4)Вывести слово с минимальной нечетной длиной, не содержащее заданную подстроку. Подстрока вводится дополнительно.

5)Составить вектор номеров позиций начал слов, являющихся анаграммой первого слова. Анаграмма – слово той же длины, состоящее из тех же букв в любом порядке, что и оригинал.

6)Составить вектор номеров позиций концов слов, являющихся анаграммой последнего слова. Анаграмма – слово той же длины, состоящее из тех же букв в любом порядке, что и оригинал.

7)Удалить первые N слов, содержащих заданную подстроку. Разделители сохранить. Заданная строка вводится дополнительно.

8)Удалить последние N слов, содержащих заданную подстроку. Разделители сохранить. Заданная строка вводится дополнительно.

9)Удалить слова с i-ого по j-ый номер. Разделители сохранить. Номера вводятся дополнительно.

10)Поменять местами i-ое и j-ое слова. Номера вводятся дополнительно.

11)Определить максимальную длину слова, начинающегося с заданного символа. Заданный символ вводится дополнительно.

12)Определить количество слов палиндромов, имеющих заданную длину. Заданная длина вводится дополнительно. Палиндром – это слово, которое читается одинаково слева направо и справа налево.

13)Определить количество слов, содержащих заданный символ К раз. Заданный символ и число К вводятся дополнительно.

14)Определить количество слов, заканчивающихся на некоторый заданный символ. Заданный символ вводится дополнительно.

15)Поменять местами слово, имеющее максимальное количество символов, и слово, имеющее минимальное количество символов.

16)Поменять местами первое слово, начинающееся на заданный символ, с последним словом на тот же символ. Заданный символ вводится дополнительно.

17)Выделить в вектор все слова, содержащие заданную подстроку. Заданная подстрока вводится дополнительно.

18)В другую строку записать через запятую все слова, содержащие заданную подстроку, удалив их в исходной строке. Заданная подстрока вводится дополнительно. Разделители в исходной строке сохранить.

184

ПРАКТИКУМ ПО ИЗУЧЕНИЮ ДИСЦИПЛИНЫ

1.7 Лабораторная работа «Динамическая память»

Выполнить действия в соответствии с меню:

1.Ввод 3 векторов. Числа вводятся через запятую, т.е. строка с последующей обработкой. При вводе проверять корректность вводимых чисел для соответствующего типа. Выделение места под вектор динамически через GETMEM. Пока не выполнится первый пункт меню, другие не должны выполняться.

2.Вывод вектора на экран.

3.Работа с вектором – в соответствии с индивидуальным заданием (см. ниже).

4.Упорядочить элементы вектора.

5.Завершить работу с подтверждением.

Варианты работы с вектором.

1)Удалить элемент по значению (со сжатием вектора).

2)Удалить элемент по номеру (со сжатием вектора).

3)Удалить диапазон элементов по значению (со сжатием вектора).

4)Удалить диапазон элементов по номерам (со сжатием вектора).

5)Найти первый максимальный элемент и его номер.

6)Найти последний минимальный элемент и его номер.

7)Поменять местами первый минимальный элемент и последний максимальный элемент.

8)Удалить элементы равные максимальному значению (со сжатием вектора).

9)Удалить элементы меньшие заданного значения (со сжатием вектора).

10)Удалить элементы меньшие среднего арифметического значения

11)(со сжатием вектора).

12)Удалить элементы большие среднего арифметического значения

13)(со сжатием вектора).

14)Удалить все нулевые значения (со сжатием вектора).

15)Удалить все значения большие нуля (со сжатием вектора).

16)Удалить все значения меньшие нуля (со сжатием вектора).

17)Инвертировать вектор.

18)Удалить элементы большие заданного значения (со сжатием вектора).

19)Удалить все дубли элементов (со сжатием вектора).

20)Удалить все простые числа (со сжатием вектора).

1.8Лабораторная работа «Работа с файлами».

 

 

 

Вариант 1

Структура записи основного файла:

 

 

1.

код цеха

цифровое поле

2.

код участка

цифровое поле

3.

табельный номер

цифровое поле

4.

ФИО рабочего

символьное поле

5.

дата (ддммгг)

цифровое поле

6.

количество выработанных деталей

цифровое поле

7.

расценка за 1 деталь

цифровое поле

185